在使用以下命令查找重复地址时"arp-scan --timeout 1000 192.168.110.0/24"
,我发现运行此命令的主机对于同一个 IP 地址有多个 MAC 地址。
192.168.110.200 00:90:e8:64:0f:a7 MOXA TECHNOLOGIES CORP., LTD.
192.168.110.200 00:90:e8:64:0f:a9 MOXA TECHNOLOGIES CORP., LTD. (DUP: 2)
192.168.110.200 00:90:e8:64:0f:a5 MOXA TECHNOLOGIES CORP., LTD. (DUP: 3)
192.168.110.200 00:90:e8:64:0f:ab MOXA TECHNOLOGIES CORP., LTD. (DUP: 4)
192.168.110.200 00:90:e8:64:0f:9b MOXA TECHNOLOGIES CORP., LTD. (DUP: 5)
192.168.110.200 00:90:e8:64:0f:af MOXA TECHNOLOGIES CORP., LTD. (DUP: 6)
请注意,192.168.110.200 是我运行该命令的 Linux 主机。此外,我还有 35 个位于相同隔离网络中的其他克隆主机,但我没有看到此行为。
我开始认为这是硬件问题。
答案1
在我看来,您正在处理 ARP 流量。如果您的 Linux 主机在同一个子网上有多个以太网接口,那么您的主机将从同一子网上的任何接口回复同一子网上接口的 ARP 请求。
从内核 2.6.4 开始,可以使用以下两个命令来纠正 Linux 内核的默认行为:
$ sysctl -w net.ipv4.conf.all.arp_announce=1
$ sysctl -w net.ipv4.conf.all.arp_ignore=2