请问为什么电脑一直发送莫名奇妙的 ARP 包?

问题描述:奇怪的广播 ARP 包和不存在的 ARP 表

电脑: MacBook Air M1

网络情况: 如下

我并没有使用 172.22.128.1 这个 IP, 也没有这个 MAC 地址, 我手动删除 arp 表这个记录仍然更新出来

image.png

Wireshark 抓包结果: 如下

有大量的 Who has xxx?Tell XXX, 我看 Source 的 MAC 地址是 arp 表中不存在的那个 MAC 地址, 也就是说从我本机发出来的?我也不知道该如何找到哪个进程发送的

image.png

此外, 还有和我本机通信的 ARP 包

image.png

阅读 1.9k
1 个回答

128.1 是你的网关。你的包都是通过它出去的。所以它的 MAC 回在你的 ARP 表里,这样你才能找到它。

ARP 协议里按照 IP 查询 MAC 的请求是群发的,所以同子网里任何一台机器查找另一台机器的 ARP 请求你都可以收到。这就是你机器里那一大堆 Broadcast 的 ARP 请求。

最后的那个“和你本机通信的 ARP”,你网关(128.1)在回应你的机器查找网关 MAC 的请求。你的所有的包必须通过网关,当网关的 MAC 不在本机 ARP 表里的时候,本机就会发请求查询(也是群发),网关收到后会回复(这个就不是群发了)。你看到的就是那个回复。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进