2. IPv6地址架构与双栈编址规划
IPv6不是简单地把IPv4地址从32位扩展到128位,它同时改变了地址的层次语义、分配方式和主机标识生成机制。理解这些差异,是后续做动态路由和双栈工程规划的前提。本节从地址类型、子网划分、双栈分配策略三个层面展开,并给出一个可复用的编址规划案例。
一、IPv6地址类型与结构
IPv6单播地址由全局路由前缀 + 子网ID + 接口标识(IID)三段构成。典型运营商分配场景下,用户获得一个 /56 或 /48 前缀,其中 /64 作为标准子网边界,接口标识固定为64位。这一约定非常重要:SLAAC(无状态地址自动配置)依赖64位IID,若子网前缀长度不是 /64,SLAAC将无法正常工作。
常见地址类型包括:
- GUA(全局单播地址):2000::/3 范围内,用于公网可达通信,是双栈环境中的主力地址。
- ULA(唯一本地地址):FC00::/7,类似IPv4私网地址,用于内部通信,不经过公网路由。
- LLA(链路本地地址):FE80::/10,每接口自动生成,用于邻居发现、路由协议报文,始终存在。
- 组播地址:FF00::/8,替代IPv4广播,如 FF02::1(所有节点)、FF02::2(所有路由器)、FF02::5/6(OSPFv3)。
- 任播地址:从单播空间分配,多个节点共享同一地址,路由选择最近节点,常用于DNS根和CDN。
需要特别区分的是:IPv6没有广播地址,ARP被NDP(邻居发现协议)取代,NDP通过ICMPv6在链路本地地址上完成地址解析和重复地址检测(DAD)。
二、子网划分方法
IPv6子网划分的核心思路是“按位切分前缀,保留 /64 作为终端子网”。假设运营商分配 2001:db8:acad::/48,则可用16位子网空间,理论上可划分 2^16 = 65536 个 /64 子网。工程中通常按“区域—楼层—功能”三级划分,而不是一次性用尽。
例如:
2001:db8:acad:0000::/64 核心互联
2001:db8:acad:0010::/64 办公区A
2001:db8:acad:0020::/64 办公区B
2001:db8:acad:0100::/64 服务器区
2001:db8:acad:0200::/64 无线访客
2001:db8:acad:0F00::/64 管理网段
这种“跳号分配”保留了扩展余量:每个功能区预留一段连续子网,后续新增楼层或业务时无需重新规划。相比IPv4中常见的 /24 切分,IPv6子网数量充足,规划重点从“节省地址”转向“可读性与可聚合性”。
三、双栈环境下的地址分配策略
双栈意味着同一接口同时运行IPv4和IPv6协议栈,但两套地址的分配逻辑并不相同。工程上推荐以下策略:
- IPv6优先,IPv4兜底:终端通过SLAAC或DHCPv6获取GUA,同时保留DHCPv4地址。应用层遵循RFC 6724地址选择规则,优先使用IPv6。
- 服务器双栈固定地址:服务器不使用SLAAC随机IID,而是手工配置或DHCPv6固定分配,便于ACL和监控。
- 管理网段独立:设备管理地址使用独立子网,IPv4和IPv6管理地址成对规划,避免混用业务地址。
- DNS双记录:同一主机名同时发布A和AAAA记录,客户端根据自身栈能力选择。
四、编址规划案例
某园区网获得运营商前缀 2001:db8:1000::/48,内部使用私有IPv4 10.10.0.0/16。规划目标:核心、办公、服务器、无线、管理五类区域,每类预留16个 /64 子网。
| 区域 | IPv6子网 | IPv4子网 | 分配方式 |
|---|---|---|---|
| 核心互联 | 2001:db8:1000:0000::/64 | 10.10.0.0/24 | 手工 |
| 办公区 | 2001:db8:1000:0010::/64 | 10.10.10.0/24 | SLAAC + DHCPv4 |
| 服务器区 | 2001:db8:1000:0100::/64 | 10.10.100.0/24 | DHCPv6固定 + 静态 |
| 无线访客 | 2001:db8:1000:0200::/64 | 10.10.200.0/24 | SLAAC + DHCPv4 |
| 管理网段 | 2001:db8:1000:0F00::/64 | 10.10.250.0/24 | 手工 |
该方案中,IPv6子网ID采用“区域号+预留位”的十六进制编码,例如办公区从 0010 开始,服务器区从 0100 开始,管理网段固定在 0F00。这样从地址本身就能判断设备归属,便于排障和ACL编写。IPv4侧则沿用原有 /24 划分,保持双栈映射关系清晰。
从图中可以看出,IPv6规划的关键不是“算够不够用”,而是“编码是否可读、是否可聚合、是否给未来留出连续空间”。双栈环境下,IPv4和IPv6的子网边界尽量对齐,能让路由汇总、ACL策略和故障定位都更简单。完成编址规划后,下一步才是把地址配置到接口、启用路由协议并验证双栈连通性。