Ipv6
IPv6 主機使用路由器的鏈路本地地址配置預設路由
我最近按照http://www.chronos-tachyon.net/reference/debian-ipv6-and-hurricane-electric上的說明將 IPv6 添加到我們的網路中。
但是,網路上的主機會自動將預設路由配置到路由器的本地鏈路地址,而不是全域地址。
http://ipvsix.me/?p=88上的文章說:
您會發現在 LAN 主機上,它們的預設路由和網關指向充當 IPv6 網關/路由器的 Linux 機器上 eth1 的 Link-Local 地址。這是完全正常和預期的。
我的問題是路由器(執行 Debian 的派生)沒有響應對其鏈路本地地址的 NDP 請求,因為它配置了全域地址。
有沒有辦法:
- 讓主機自動使用路由器的全域地址作為預設主機,或者
- 讓路由器回復對其鏈路本地地址的 NDP 請求。
/etc/radvd.conf 在路由器上:
interface eth0 { AdvSendAdvert on; AdvLinkMTU 1480; MinRtrAdvInterval 60; MaxRtrAdvInterval 180; prefix 2001:xxxx:xxxx:xxxx::1/64 { AdvRouterAddr on; AdvPreferredLifetime 600; AdvValidLifetime 3600; }; route ::/0 { }; RDNSS 2001:xxxx:xxxx:xxxx::2 {}; };
原來我在
/etc/radvd.conf
. 糾正它解決了這個問題。
IPv6 背靠背路由完全基於鏈路本地地址,因此看到路由器考慮網關鏈路本地是正常的。
即使您使用 IPv6 全域地址,設備也會使用網路發現進行第 2 層解析以獲取鏈路本地地址。