我面临一个奇怪的 ipv6 行为,我不知道如何解决它,因为我不熟悉 ipv6。也许这种行为是正常的。我希望你能帮助我。(我正在使用自定义内核 3.2.58 在 debian 6.0.9 下运行)
机器 A 是“2a00:7d30:edf6:100::1”想要 ping 机器 B,即“2a00:7d30:edf6:100::10”。两者都在同一段。
机器 A 询问机器 B 的地址,但我不明白为什么机器 B 给出其全局范围地址而不是本地范围地址?
10:59:02.082785 IP6 2a00:7d30:edf6:100::1 > ff02::1:ff00:10: ICMP6, 邻居请求, 谁有 2a00:7d30:edf6:100::10, 长度 32
10:59:02.082821 IP6 2a00:7d30:edf6:100::10 > 2a00:7d30:edf6:100::1: ICMP6,邻居通告,tgt 为 2a00:7d30:edf6:100::10,长度 32
在那台机器 A ping 机器 B 的全局范围地址之后,它工作正常:
10:59:02.082927 IP6 2a00:7d30:edf6:100::1 > 2a00:7d30:edf6:100::10:ICMP6,回显请求,seq 1,长度 64
10:59:02.082960 IP6 2a00:7d30:edf6:100::10 > 2a00:7d30:edf6:100::1: ICMP6,回显回复,seq 1,长度 64
谢谢你帮助朱利安最好的问候
NDP 适用于 IPv6,ARP 适用于 IPv4:它为您提供给定第 3 层地址(IP 地址)的第 2 层地址(以太网 MAC 地址)。如果您想将数据包发送到与您在同一子网中的全局 IPv6 地址,则 NDP 将询问哪个 MAC 地址将接收该全局地址的流量。然后,该 IP 地址的“所有者”将做出响应,并让发现请求的发送者知道它的第 2 层 MAC 地址是什么。
如果您已将数据包发送到链路本地 IPv6 地址,则 NDP 响应将传达链路本地 IPv6 地址的 MAC 地址。