IPv6 - RA 前缀和标志

网络工程 ip ipv6 协议理论 IP地址 民进党
2021-07-31 14:45:33

我试图了解 SLAAC 的工作原理,但在了解客户端如何使用路由器广告中的信息时遇到了麻烦。

假设 Manager 和 Other Conflig Flags 都没有设置,RA 包含 2 个地址(2001:620:200:effe::/64 和 fd7f:3fee:abc:effe::/64)

客户端将向其接口添加什么(全局)IP 地址?EUI64 ID 生成可能不会像链接本地地址那样工作,因为据我所知,前缀不必是 64 位长。

fd7f 开头的地址是干什么用的?

1个回答

将分配什么全局地址取决于主机的操作系统。默认情况下,Windows 和一些 Linux 版本将使用隐私扩展和随机地址生成,这使得分配的地址不可预测,并且会定期更改。原始 SLAAC 实现将使用 MAC 地址。假设一个48位的MAC地址,比如以太网使用的MAC地址,MAC地址会被一分为二,fffe中间插入,扩展到64位,然后U/L位翻转。这种方法让一些人感到紧张,因为可以在不同的网络上跟踪特定的 MAC 地址。引入了隐私扩展和随机地址生成。在某些操作系统上,甚至链接本地地址也使用它。

前缀不需要是 64 位,但如果不是 64 位,它将破坏 IPv6 的特性,包括 SLAAC。示例 RA 中的两个地址是 64 位前缀,因此接口将用于自动地址分配。

fc00::/7地址范围是ULA(唯一本地地址)范围,其中上半年(fc00::/8)保留给全球实体待命名后进行分配。后半部分 ( fd00::/8) 可用于本地分配的地址,但它们必须为 40 位全局 ID 使用伪随机数生成器。请参阅RFC 4193,唯一本地 IPv6 单播地址,第 3.2.1 节。本地分配的全局 ID

3.2.1. 本地分配的全局 ID

本地分配的全局 ID 必须使用与 [RANDOM] 一致的伪随机算法生成。第 3.2.2 节描述了建议的算法。重要的是,所有生成全局 ID 的站点都使用功能相似的算法以确保唯一性的可能性很高。

使用伪随机算法在本地分配的前缀中生成全局 ID 可确保任何使用此类前缀编号的网络极不可能与分配了另一个本地分配前缀的任何其他网络发生地址空间冲突. 当考虑许多场景时,这是一个特别有用的属性,包括合并的网络、重叠的 VPN 地址空间或主机在此类网络之间移动。