双栈子网需为同一逻辑子网同时分配ipv4和ipv6地址(如10.20.1.0/24与2001:db8:1020:1::/64),并确保路由器双地址配置、dhcpv4/dhcpv6或slaac协同、终端双协议启用及安全策略统一覆盖,四者缺一不可。

子网划分本身不区分IPv4或IPv6,但要让一个子网真正支持双栈(Dual-Stack),关键不是“划出两个子网”,而是为同一物理或逻辑子网同时分配IPv4和IPv6地址空间,并确保设备、网关、DHCP/DHCPv6服务、路由与安全策略全部协同工作。
一、子网规划需对齐IPv4与IPv6地址结构
避免割裂设计。例如:办公网用 10.20.1.0/24,就应为其分配一个对应的IPv6子网,如 2001:db8:1020:1::/64(前缀中1020:1与10.20.1呼应)。这种映射大幅降低运维复杂度,排查时可直接按逻辑位置定位双协议配置。
- IPv4私有网段推荐:10.0.0.0/8(足够大)、172.16.0.0/12 或 192.168.0.0/16
- IPv6前缀来源优先选运营商分配的 /48 或 /56;若无,可用ULA(fd00::/8)做内部测试,但不可用于公网通信
- 每个业务子网统一采用 /64 —— 这是IPv6 SLAAC、NDP、DHCPv6正常工作的最小推荐单位,不可随意压缩
二、路由器/网关接口必须启用双栈并配置双地址
单个接口要同时承载两个协议。以RouterOS或Cisco为例:
- 在LAN口(如ether1)上配置IPv4地址:10.20.1.1/24
- 在同一接口添加IPv6地址:2001:db8:1020:1::1/64
- 开启IPv6转发(RouterOS中需勾选 IPv6 forwarding;Cisco需全局启用
ipv6 unicast-routing) - 确保该接口的防火墙规则同时放行IPv4和IPv6流量(如ICMPv4 ping + ICMPv6 echo-request)
三、DHCP服务要分设但逻辑统一
双栈不等于“两个独立DHCP服务器”,而是同一子网下并行提供两套地址分发能力:
- IPv4 DHCP Server:分配10.20.1.10–10.20.1.200,网关10.20.1.1,DNS指向10.20.1.100
- IPv6 DHCPv6 Server 或 SLAAC:提供 2001:db8:1020:1::/64 前缀+RA(Router Advertisement),允许终端自动生成地址;若需分配DNS等状态信息,启用DHCPv6-PD或有状态DHCPv6
- 注意:SLAAC只管地址,DHCPv6可管DNS、NTP等;两者可共存(RFC 7278),但需避免RA中M/O标志位冲突
四、终端设备必须启用双协议栈并获取双地址
PC、服务器、IoT设备不能只配一个协议。Windows/macOS/Linux默认已启用双栈,但需确认:
- 网卡属性中同时勾选“Internet协议版本4(TCP/IPv4)”和“Internet协议版本6(TCP/IPv6)”
- 执行
ipconfig(Windows)或ip -br a(Linux)查看是否同时获得IPv4地址(如10.20.1.123)和IPv6地址(如2001:db8:1020:1:xxxx:xxxx:xxxx:xxxx) - 若只有IPv4,检查是否禁用了IPv6、RA是否被防火墙拦截、或DHCPv6服务未响应
不复杂但容易忽略——双栈子网不是技术叠加,而是地址、服务、设备、策略四个层面的一致性对齐。











