VPC IPv6 与双栈
VPC 可以开通 IPv6 能力,让实例同时拥有 IPv4 与 IPv6 地址(双栈)。开通顺序是「VPC 分配 IPv6 网段 → 交换机或子网分配 IPv6 网段 → 实例获取地址」。若要支持 IPv6 访问公网,还需要额外开通 IPv6 公网带宽或网关产品;仅分配地址时 IPv6 只在 VPC 内可用,各厂商实现方式不同。
基本信息
| 开通顺序 | VPC 分配 IPv6 网段 → 子网分配 IPv6 网段 → 实例获取地址 |
|---|---|
| 公网访问 | 阿里云经 IPv6 网关开通公网带宽后,IPv6 才能出入公网 |
| 安全组 | 需按 IPv6 授权对象(具体前缀或 ::/0)单独放行 |
| 内网通信 | 同 VPC 内 IPv6 默认互通,行为与 IPv4 一致 |
典型使用场景
- 面向移动网络与海外用户的业务,避免 IPv4 地址耗尽与 NAT 端口瓶颈
- 新建 VPC 直接按双栈规划,省去后期大规模改造与业务停机
- 对 IPv6 有合规或采购要求的项目,需要实例具备 IPv6 地址与公网出口
- 内网服务之间用 IPv6 直连,减少 IPv4 私有网段的规划压力
- 按 IPv6 前缀做更细粒度的安全组与访问控制策略
双栈环境要点
双栈不是「多配一个地址」这么简单:DNS 要能同时返回 A 与 AAAA 记录,客户端会在两者之间自行选择(常见优先 IPv6);防火墙、WAF、负载均衡的健康检查都要具备 IPv6 能力,否则出现「一部分用户能访问、一部分不能」的间歇性故障。上线前建议同时在纯 IPv4、纯 IPv6 与双栈三种客户端环境下各验证一次。
在实例内查看 IPv6
在实例内查看 IPv6
ip -6 addr show
ip -6 route show
ping6 -c 3 2400:3200::1 # 阿里云公共 DNS 的 IPv6 地址示例
# 检查服务是否监听在 IPv6 上
ss -lntp | grep -E '\[::\]|\*:'常见问题与现象
| 现象 | 常见原因 | 排查方向 |
|---|---|---|
| IPv6 能通内网不能上公网 | 未开通 IPv6 公网带宽 | 检查 IPv6 网关与带宽配置 |
| 地址已分配但外部访问不到 | 应用只监听 IPv4 | 确认监听地址是否为 :: 或指定 IPv6 |
| 入向请求全部被拒 | 安全组未放行 IPv6 源 | 按 IPv6 前缀单独添加规则 |
应用只监听 IPv4 地址(0.0.0.0)时,即便实例已具备 IPv6 也无法通过 IPv6 访问;监听方式、DNS 解析结果与安全组要一起检查。