6

我需要在本地网络中查找 MAC 地址,并且我使用的是 Linux。我所做的是使用 libnet 发送一个 ARP 请求,但是在我发送 3 个请求后,缓存仍然不会更新。我使用wireshark来捕获数据包。在每次我的 ARP 请求之后,我确实从 Wireshark 获得了 3 次 ARP 重播。有谁知道为什么ARP缓存不会更新?

4

1 回答 1

5

Linux 内核默认不接受未经请求的 ARP。由于请求是由您的用户空间应用程序而不是内核发送的,因此内核将回复视为“未经请求的”。

您可以更改此默认值/proc/sys/net/ipv4/conf/*/arp_accept(基于每个设备或跨所有设备)。

于 2010-07-29T05:56:57.560 回答