从 dhcpcd 获取 IPv6 的前缀长度

从 dhcpcd 获取 IPv6 的前缀长度

我使用 dhcpcd 获取 IPv6 地址。有没有办法通过dhcpcd查出获取的IPv6的前缀长度?

将其添加到 dhcpcd.conf 以获取 eth0 的 IP

interface eth0
 ipv6rs
 ia_na 1

dhcpcd --dumplease eth0 -6我通过使用它返回以下内容来获取 IPv6 详细信息;

dhcp6_client_id='00041c24f4b34648ea8a159c1b44c'
dhcp6_ia_na1_ia_addr1='fd00::1b5'
dhcp6_ia_na1_ia_addr1_pltime='4500'
dhcp6_ia_na1_ia_addr1_vltime='7200'
dhcp6_ia_na1_iaid='00000001'
dhcp6_ia_na1_t1='0'
dhcp6_ia_na1_t2='0'
dhcp6_name_servers='fd00::1'
dhcp6_reconfigure_accept='1'
dhcp6_server_id='00010001298b05cbc25e4c55'

现在我知道我可以从ip address | grep fd00::1b5命令中获取前缀长度,但我想知道是否还有其他方法可以找到它。

答案1

据我所知,DHCPv6 不提供此信息 - 您仍然需要从与 SLAAC 相同的 ICMPv6 路由器通告中获取本地前缀(实际上,通常 DHCPv6 由路由器通告中的标志提示)并且在大多数情况下,这些是/64。不过,如果没有前缀信息,最好假设该地址是 /128。

相关内容