我有一台树莓派连接到 OpenWrt IPv4/IPv6 路由器。如下所示,在eth1接口我得到两个ULA地址:fd00::1f0/128和fd00::27d5:6387:c8e5:3b1a/64
在路由器上,设置了 fd00::/64 ULA 前缀,用于测试目的。我的问题是:
- 为什么有两个不同的 ULA 地址?
- 它们是如何创建的?前缀是否以某种方式从路由器发布?网络上的主机是否请求它?
- 第一个 ULA 地址上的 /128 是什么意思?128 位前缀长度没有多大意义。
在我的树莓派上运行 ip -a
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:e0:99:00:06:d3 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.10/24 brd 192.168.1.255 scope global dynamic noprefixroute eth1
valid_lft 41726sec preferred_lft 36326sec
inet6 fd00::1f0/128 scope global dynamic noprefixroute
valid_lft 42612sec preferred_lft 42612sec
inet6 fd00::27d5:6387:c8e5:3b1a/64 scope global mngtmpaddr noprefixroute
valid_lft forever preferred_lft forever
inet6 fe80::6e28:de2e:f0e0:ce5f/64 scope link
valid_lft forever preferred_lft forever
答案1
第一个 IPv6 地址上的值valid_lft
表示它是通过 DHCP 租约获得的。它显示掩码,/128
因为它是单个主机 IP(与/32
IPv4 中的 IP 相比)。ip -6 route
应该显示/64
网络
第二个 IPv6 地址上的标志mngtmpaddr
表示它是用于无状态地址自动配置 (SLAAC) 的隐私扩展地址池。如果use_tempaddr
启用了 sysctl 设置,内核将从该池生成地址作为传出流量的来源
基本上,它将使用自动生成的地址在 LANmngtmpaddr
上进行通信/64
,并/128
使用地址直接与网关进行通信