我在树莓上有一个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但是它不适合路由所以我猜这不是一个选项吗?
并且不要使用整个/ 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.
dnsmasq
可以提供IPv4和IPv6 DHCP服务以及radv服务。检查IPv6路由,因为路由可能尚未自动配置。