什么是 IPv6?
IPv6(互联网协议第 6 版)是最新版本的互联网协议,旨在取代 IPv4 并解决其局限,主要是可用地址耗尽问题。IPv6 使用 128 位地址,而 IPv4 使用 32 位地址,可提供约 340 涓个(3.4×10³⁸)唯一地址,数量足以为地球表面的每个原子分配一个地址后仍有剩余。IPv6 地址格式
结构
IPv6 地址由 8 组、每组 4 个十六进制数字组成:
2001:0db8:85a3:0000:0000:8a2e:0370:7334
│ │ │ │ │ │ │ │
└────┴────┴────┴────┴────┴────┴────┴── 8 groups of 16 bits each
缩写规则
1. 省略前导零:每组内部的前导零可以省略
2. 连续的零组:可以用 :: 替代,但每个地址只能使用一次
Full: 2001:0db8:0000:0000:0000:0000:0000:0001
Abbreviated: 2001:db8::1
IPv6 与 IPv4 的比较
| 特性 | IPv4 | IPv6 |
|---|---|---|
| 地址长度 | 32 位 | 128 位 |
| 地址格式 | 点分十进制(192.168.1.1) | 十六进制(2001:db8::1) |
| 地址总数 | 约 43 亿 | 约 340 涓 |
| 标头复杂度 | 长度可变、复杂 | 固定 40 字节、更简单 |
| IPsec | 可选 | 内置支持 |
| NAT 要求 | 通常需要 | 通常不需要 |
| 自动配置 | 需要 DHCP | 原生支持 SLAAC |
IPv6 地址类型
单播
一对一通信:
- 全球单播:可在公网路由(2000::/3)
- 链路本地:仅限网络链路(fe80::/10)
- 唯一本地:用于私有网络(fc00::/7)
多播
一对多通信:
ff02::1 - All nodes on link
ff02::2 - All routers on link
任播
一对最近节点通信(地址格式与单播相同,但路由方式不同)。
DNS 中的 IPv6
AAAA 记录
IPv6 地址使用 AAAA(四 A)记录:
example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946
反向 DNS(PTR 记录)
IPv6 反向 DNS 使用 ip6.arpa 域名:
4.3.3.7.0.7.3.0.e.2.a.8.0.0.0.0.0.0.0.0.3.a.5.8.8.b.d.0.1.0.0.2.ip6.arpa. PTR example.com.
IPv6 的采用收益
1. 地址近乎无限:不再需要担心地址耗尽
2. 标头更简单:路由效率更高
3. 内置安全性:规范要求支持 IPsec
4. 无需 NAT:恢复端到端连接
5. 自动配置:设备可自行配置(SLAAC)
6. 更好的多播:更适合流媒体和服务发现
7. 移动支持:更好地处理设备移动
实施 IPv6
双栈配置
同时运行 IPv4 和 IPv6:
listen 80;
listen [::]:80;
listen 443 ssl;
listen [::]:443 ssl;
DNS 配置
在 A 记录旁添加 AAAA 记录:
www IN A 192.0.2.1
www IN AAAA 2001:db8::1
当前 IPv6 采用情况
全球 IPv6 的采用率仍在增长:
- 主要内容提供商(Google、Facebook)已全面支持 IPv6
- ISP 越来越多地提供原生 IPv6 连接
- 移动网络大量使用 IPv6
- 云服务商默认提供 IPv6
IPv6 代表互联网寻址的未来,为互联网持续增长以及不断上线的数十亿物联网设备提供所需的可扩展性。