在IPv6下,如何发现本地链路上的所有IPv6地址?

时间:2017-11-15 22:41:26

标签: ipv6 arp

我需要发现(学习)本地网络中的所有IP。

在IPv4中,我可以让其中一台机器监听所有ARP广播请求/响应,然后我可以为所有机器构建IP / MAC表。

但是,在IPv6中,ARP被替换为ICMPv6 Neighbor Solicitation消息,并且它不是广播消息。一台机器无法监听另外两台机器之间的Neighbor Solicitation / Advertisement消息。是的,ICMPv6的这种设计减少了'#shout-out"广播开销,但如果我事先不知道他们的IP,我也无法学习所有邻居。

一种解决方法是ping ff02 :: 1。但是,我发现Linux会响应这样的请求,但Windows不会。

非常感谢任何提示!

1 个答案:

答案 0 :(得分:0)

大多数交换机不会过滤局域网上的组播数据包,因此它们仍在第2层广播。如果禁用网卡的MAC地址过滤器并将其置于混杂模式,您仍然会看到所有邻居发现交通。