如何使用DHCP为Windows主机分配正确的IPv6前缀?


0

我在树莓上有一个ISC DHCP和BIND,所有设置和运行都很好。除了我的全球单播地址,我想分配唯一的本地单播(子网fd00 :: / 8)。

这一切都很好,机器分配地址和DNS服务器。 Linux机器可以相互ping通。但是,我的Windows 10客户端无法ping任何其他fd00 ::地址(fd00 :: 7本身除外)。如果我使用正确的前缀设置静态IPv6地址,我突然也可以ping其他机器。因此我相信Windows会分配错误的前缀。

路线打印显示: FD00 ::128分之7

所以看起来Windows采用128前缀而不是/ 8应该由ISC DHCP服务器分配?如果是这样,我该怎么做才能解决这个问题?这只能受路由器广告的影响吗? 我的路由器(Fritzbox)无法选择设置本地前缀。我可以在我的覆盆子上设置radvd但是它不适合路由所以我猜这不是一个选项吗?


这是一个本地地址,很可能是自动配置的。您可能希望在PI上运行radvd或DHCP6服务器。 dnsmasq 可以提供IPv4和IPv6 DHCP服务以及radv服务。检查IPv6路由,因为路由可能尚未自动配置。
BillThor

2
并且不要使用整个/ 8。您应该从中生成/ 48(在ULA上读取)然后使用LAN上的/ 64s。您还需要在网络上使用路由器广告(RA),通常由路由器发送。确保该RA公布的前缀为/ 64,其他大小不适用于以太网。
Sander Steffann

RA将为您的系统提供正确的前缀和默认网关。如果启用自动配置,则不需要DHCPv6服务来提供地址,但如果需要,可以使用一个。
Sander Steffann

谢谢!我已将前缀更正为/ 64。它现在正在工作:Fritzbox路由器RA菜单有点令人困惑。事实证明我无法更改路由器的ULA,但可以启用前缀声明(可以自定义)。这肯定需要像你写的一样打开。一个不需要的副作用是我的客户端现在分配了两个fd00地址(fd00 :: 7由DHCP和fd00 :: cc6c:...),尽管M和O标志打开。也许是因为路由器有fd00 :: 3631 ...作为ULA设置。
Markus K.
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.