- 尝试从 Host1 ping 2001:db8:cafe:2::1:171(Host3)
- 从 Host1 到 Host2 的 ping6 有效
- 从 Host2 到 Host3 的 ping6 有效
- 在 Host1 上,我有一条到 Host2 的路由,如下所示:
目的地 ------------------ 下一跳 ---------- 标志 ------ - - - - - 如果
2001:db8:cafe:2::/64 ---- 2001:db8:cafe::1:168-------- UG---------------- eth0
- 在 Host2 上,这里是路线
目的地 ---------------下一跳 ---------- 标志 -----使用 --- - - 如果
2001:db8:cafe:1::/64 --------- :: ------------------------- UG-- --------0----------eth0
2001:db8:cafe:2::/64 --------- :: ------------------------- UG-- --------0----------eth1
2001:db8:cafe:2::/64 ---- 2001:db8:cafe:2::1:171--- UG---------0--------- -eth1
0::/----------------------------------------:: ----------------- ------------------!n---------4401--------lo
- Host2 的 eth0 上的 tcpdump 显示接收到来自 Host1 的 ping6,目的地为 2001:db8:cafe:2::1:171。
- 问题在于,数据包没有到达 (5) 中的第二条或第三条路线,而是不断到达第四条路线。在主机 2 的 eth1 上看不到数据包。此环回路由是自己添加的。我尝试删除这条路线,但它不断重新出现。任何帮助将不胜感激。谢谢
您的拓扑不正确。您在多个子网上使用相同的前缀 (2001:db8::/64)。要使路由正常工作,您必须使用不同的前缀。例如,主机 1 和 2 之间的 2001:db8:cafe:1::/64,以及主机 2 和 3 之间的 2001:db8:cafe:2::/64。