返回博客
对比与选型知识科普

IPv4 vs IPv6:十大核心差异与迁移路径一文讲透

发布日期:2026年5月29日
预计阅读时长:24分钟
林知远

林知远

互联网技术科普作者

ipv4-vs-ipv6 - 008ip.com 博客封面

目录导航

内容总览

项目 说明
难度等级 进阶
阅读时间 约 15 分钟
目标读者 IT 运维、网络工程师、需要做 IPv6 迁移决策的技术负责人
前置知识 建议先了解 IPv6 基础知识公网IP和内网IP的区别

1. 为什么需要对比 IPv4 和 IPv6?

IPv4 是互联网的”老基建”,已经跑了 40 多年;IPv6 是”新基建”,设计之初就为未来 100 年的互联网做好了准备。

核心矛盾
IPv4:43 亿个地址 → 2011 年 IANA 中央池耗尽 → 2019 年全球五大 RIR 常规池全部告罄 → 靠 NAT/CG-NAT 续命
IPv6:340 涧个地址 → 够地球上每一粒沙子分配一个 IP
问题是:两个协议不兼容,IPv4-only 的设备无法直接与 IPv6-only 的设备通信。

这就是为什么我们需要做这个对比——不是简单地告诉你”IPv6 更好”,而是帮你理清:二者的本质差异是什么?你当前的环境要不要迁移?如果要迁移,走哪条路径最合理?

在深入对比之前,如果你对 IPv6 地址格式、SLAAC 自动配置、地址分类等基础概念还不熟悉,建议先阅读我们的 IPv6 入门指南

2. 十大核心差异:一张表看懂

在进入详细分析之前,先用一张总览表快速对比 IPv4 和 IPv6 的十大差异:

对比维度 IPv4 IPv6
1. 地址长度 32 位(4 字节) 128 位(16 字节)
2. 地址数量 约 43 亿 约 3.4×10³⁸
3. 地址格式 点分十进制(192.168.1.1) 冒号分隔十六进制(2001:db8::1)
4. NAT 需求 必须依赖 NAT 共享公网 IP 不需要 NAT(每设备独立公网 IP)
5. IPsec 支持 可选 原生集成(RFC 6434:SHOULD)
6. 报头大小 20 字节(可变长,含选项) 40 字节(固定长,扩展头分离)
7. QoS 支持 ToS 字段(8 位 DSCP) Flow Label(20 位流标签)
8. 移动性 Mobile IP(额外协议) 内置 Mobile IPv6 支持
9. 广播 支持广播(ARP 依赖广播) 无广播,用组播替代(NDP 替代 ARP)
10. 地址配置 手动 或 DHCP SLAAC 自动 或 DHCPv6

3. 十大差异逐一详解

3.1 地址空间:43 亿 vs 340 涧

这是最直观的差异,也是 IPv6 诞生的根本原因。IPv4 用 32 位表示地址,理论最多 4,294,967,296 个——听起来很多,但全球 80 亿人口 + 物联网设备 + 服务器,早在 2011 年 IANA(互联网号码分配局)就把最后一批 /8 块分给了五大区域注册机构(RIR)。到了 2019 年 11 月,欧洲 RIPE NCC 分配完最后一个可用的 /22 地址块,标志着全球五大 RIR 的常规 IPv4 池彻底耗尽。

IPv4 目前的续命手段是 NAT——特别是运营商部署的 CGNAT(运营商级 NAT),一个公网 IPv4 后面藏几百上千个私有地址的设备。关于 NAT 的详细原理,参考 公网IP和内网IP的区别

IPv6 用 128 位表示地址,地址数是 2¹²⁸ ≈ 3.4×10³⁸。这个数字大到什么程度?如果每秒分配 10 亿个 IPv6 地址,需要 10²² 年才能用完。作为对比,宇宙的年龄大约是 1.38×10¹⁰ 年。

3.2 地址格式:点分十进制 vs 冒号十六进制

IPv4 用大家熟悉的 192.168.1.1 格式——4 组 0-255 的十进制数字,点分隔。

IPv6 用 2001:db8::1 格式——8 组十六进制数,冒号分隔,支持前导零省略和 :: 压缩。IPv6 地址格式的详细规则见我们的 IPv6 入门指南 第 2 章。

3.3 NAT 需求:IPv4 的救命稻草,IPv6 的理论冗余

这是二者最深刻的架构差异。

IPv4 时代,NAT 是必需品——没有 NAT,你家的 Wi-Fi 路由器后面只能有一个设备上网。NAT 让几十亿设备共享几亿个公网 IPv4,但同时引入了 NAT 穿透问题、P2P 连接困难、端到端通信断裂。

IPv6 设计之初就假设每台设备都有独立的公网 IPv6 地址,不需要 NAT。端到端通信恢复——你的手机可以直接和家里的 NAS 建立连接,不需要端口转发、不需要 STUN 打洞。

现实提醒:虽然 IPv6 标准不推荐 NAT,但实际部署中,出于安全策略(隐藏内部拓扑),部分企业仍会部署 IPv6 NAT(NAT66)。RFC 并没有完全禁止,只是强调 IPv6 的设计目标是无 NAT 网络。

3.4 安全性:IPv6 内置 IPsec

IPv4 的 IPsec 是可选的附加组件——想用就配,不用也可以。IPv6 在设计之初就将 IPsec 原生集成进了协议规范(早期 RFC 4294 甚至将其列为”强制要求/MUST”),但 2011 年发布的 RFC 6434 考虑到物联网设备算力限制,已将其降级为”强烈建议/SHOULD”。

但这里有一个常见的误解:“强制支持”不等于”默认开启”。IPv6 要求协议栈具备 IPsec 能力,但实际是否加密流量取决于上层配置。换句话说,IPv6 让安全性变得”可用”,但不会自动让你的流量加密。

另一个安全优势:IPv6 的地址空间太大,攻击者无法有效扫描。IPv4 的 /24 子网只有 256 个地址,扫一遍几分钟。IPv6 的 /64 子网有 2⁶⁴ 个地址——在单个子网内做全量扫描在计算上不可行。

3.5 报头结构:IPv4 可变长 vs IPv6 固定长

IPv4 报头是可变长度的(20-60 字节),包含 14 个字段,路由器处理时需要解析可变部分,开销较大。

IPv6 报头是固定 40 字节,只保留了 8 个核心字段,将可选信息(如分片、路由选项)移到了”扩展头”中。这意味着路由器不需要解析扩展头,转发效率更高。

IPv4 vs IPv6 报头结构对比
图1:IPv4 报头(20-60 字节可变)vs IPv6 报头(固定 40 字节)— IPv6 精简字段,移除校验和,用 Flow Label 实现流级 QoS

3.6 QoS:DSCP vs Flow Label

IPv4 用 ToS 字段中的 8 位 DSCP(Differentiated Services Code Point)做流量分类。IPv6 在此基础上新增了 20 位的 Flow Label(流标签)

Flow Label 的设计思路很巧妙:它允许发送方标记属于同一个”流”的数据包(比如同一段视频流的所有包),路由器可以基于流标签做快速转发决策,而不需要深入解析传输层协议。对于实时音视频、在线游戏等延迟敏感场景,这是一个实打实的优势。

3.7 移动性:Mobile IPv6 内置支持

IPv4 的移动 IP(Mobile IPv4)是一个外部附加协议,需要额外的归属代理(Home Agent)和外地代理(Foreign Agent),配置复杂。

IPv6 把移动性支持写进了协议本身——Mobile IPv6 允许设备在不同网络之间切换时保持同一个 IPv6 地址不变。你的手机从 Wi-Fi 切到 5G,IPv6 地址不用变,正在进行的视频通话不会断。

3.8 广播 vs 组播:ARP vs NDP

IPv4 中,ARP 协议依赖广播来解析 IP→MAC 地址映射——”谁是 192.168.1.1?”这条消息会发给子网内所有设备。在小网络中没事,但在大型二层网络中,广播风暴是个真实的问题。

IPv6 完全去掉了广播,用组播NDP(邻居发现协议) 替代了 ARP。NDP 使用 5 种 ICMPv6 消息类型(RS、RA、NS、NA、Redirect)来完成地址解析、重复地址检测、路由器发现等所有链路层操作。

IPv4 功能 IPv6 对应
ARP(地址解析) NDP(NS/NA 消息)
DHCP 获取地址 SLAAC(RS/RA 消息)
ICMP 路由器发现 NDP 路由器发现(RA 消息)
Gratuitous ARP(地址冲突检测) DAD(重复地址检测)

3.9 分片:路由器分片 vs 端到端分片

IPv4 中,中间路由器可以对数据包进行分片——当一个包太大,路由器会把它切成小块再转发。

IPv6 禁止中间路由器分片。如果包太大,路由器直接丢弃并返回 ICMPv6 Packet Too Big 消息,由发送方调整 MTU 重发。这个设计减少了路由器负担,把分片的计算开销推到了端设备上。

这意味着 IPv6 网络中对 PMTUD(路径 MTU 发现)的依赖更强——如果防火墙错误地拦截了 ICMPv6 Too Big 消息,会导致”黑洞”现象:大包被静默丢弃,连接卡死。

3.10 地址配置:DHCP vs SLAAC

IPv4 地址要么手动配,要么 DHCP 自动分配——无论如何都需要一个服务器(DHCP 服务器或手动配置)。

IPv6 的 SLAAC 彻底改变了这个范式:设备只需要从路由器收到一个 RA 消息(告诉它网络前缀),然后自己生成后 64 位的接口 ID(现代操作系统为防追踪,默认使用 RFC 4941 隐私扩展随机生成并定期更换接口 ID,而非基于物理 MAC 的 EUI-64)——无需任何服务器。这就是 IPv6 “开箱即用”的核心机制。SLAAC 的完整流程见 IPv6 入门指南 第 4 章。

4. 从 IPv4 到 IPv6:三种迁移路径

IPv4 和 IPv6 不兼容——这是迁移的最大挑战。你不能”升级”一个 IPv4 网络到 IPv6,必须在保持 IPv4 运行的同时,逐步引入 IPv6。以下是三种主流迁移策略:

4.1 双栈(Dual Stack)— 最推荐

核心思路:设备同时运行 IPv4 和 IPv6 协议栈。访问 IPv4 服务时走 IPv4,访问 IPv6 服务时走 IPv6。

优点:平滑过渡,逐步淘汰 IPv4,回退简单
缺点:需要维护两套配置(防火墙规则、路由策略、监控)、占用更多内存
适用场景:绝大多数企业和服务商的首选方案

4.2 隧道(Tunneling)— 过渡用

核心思路:把 IPv6 数据包封装在 IPv4 包里传输,穿过不支持 IPv6 的中间网络。

常见隧道技术:6in4(静态隧道)、6to4(自动隧道,基于 2002::/16 前缀)、Teredo(NAT 后的隧道,现已弃用)、6rd(ISP 常用)。

优点:不需要升级中间网络设备
缺点:增加封装开销(MTU 更小),隧道端点单点故障,性能损耗
适用场景:网络中间设备不支持 IPv6 时的临时方案

4.3 NAT64/DNS64 — IPv6-only 访问 IPv4 服务

核心思路:让纯 IPv6 的设备访问 IPv4-only 的服务。DNS64 把 IPv4 地址伪装成 IPv6 地址(如 64:ff9b::192.0.2.1),NAT64 网关在 IPv6 和 IPv4 之间做协议翻译。

优点:让 IPv6-only 网络也能访问整个 IPv4 互联网
缺点:NAT64 网关是性能瓶颈,需要 DNS 配合,不支持硬编码 IP 地址的应用(如代码中直接写死 http://192.168.1.1、跳过 DNS 解析的场景——这也正是苹果推 464XLAT 的原因:客户端的 CLAT 组件可以拦截这些写死的 IPv4 请求并在本地完成翻译)
适用场景:移动运营商(T-Mobile US、印度 Reliance Jio 已在用)

还有一个变体叫 464XLAT(RFC 6877),在客户端侧加一个 CLAT 组件做 SIIT 无状态翻译,服务端侧搭配 NAT64 + DNS64。Android 是 464XLAT 最典型的代表——自 Android 4.3 起内核级 CLAT 守护进程默认启用,纯 IPv6 移动网络下无缝访问 IPv4 内容。苹果 iOS 的 App Store 审核环境使用纯 NAT64/DNS64(通过要求开发者使用 NSURLSession 等高层 API 来避免兼容性问题),底层也有类似 CLAT 的本地翻译机制做兜底。

三种 IPv6 迁移路径对比
图2:三种 IPv6 迁移路径 — 双栈(推荐)、隧道(过渡)、NAT64/DNS64(IPv6-only 出口)

5. 你的场景,该不该上 IPv6?

不是所有场景都需要立即迁移到 IPv6。以下是一个决策框架:

你的场景 建议 理由
普通家庭用户 能用就用 运营商如果已支持,开启后不影响使用,还能降低延迟
中小企业网站 优先上双栈 苹果 App Store 已要求 IPv6 支持。中国 IPv6 用户渗透率超 70%,不上 = 损失流量
跨境电商卖家 看目标市场 印度/东南亚移动用户大量 IPv6-only。欧美双栈。如果主要做国内市场,IPv4 够用
企业内网 可搁置 私有地址段足够大(10.0.0/8),短期没有 IPv4 耗尽压力
物联网 / 5G 必须上 海量设备需要海量地址,IPv4 NAT 无法承载

一句话总结:如果你的业务面向公网、目标用户含移动端、未来要出海——现在就该规划 IPv6 了。如果只是纯内网环境,IPv4 再用 10 年也没问题。

6. 常见问题 FAQ

Q1:IPv5 去哪了?为什么不直接叫 IPv5?

IPv5 确实存在过——它是 1979 年定义的互联网流协议(Internet Stream Protocol, ST),使用 IP 协议号 5。但它从未被广泛部署,只是一个实验性协议。当 IETF 在 1990 年代开始设计下一代 IP 协议时,协议号 5 已被占用,所以跳到了 6。不存在 IPv5 这个”缺失的版本”——它只是没流行起来。

Q2:我可以把 IPv4 地址直接转换成 IPv6 地址吗?

可以,有标准的映射方式。IPv4 地址可以用两种方式嵌入 IPv6:IPv4-mapped IPv6 地址::ffff:192.0.2.1,用于双栈主机内部表示)和 IPv4-compatible IPv6 地址::192.0.2.1,已被 RFC 4291 废弃)。NAT64 使用的 64:ff9b::/96 前缀也是一种映射方式。

Q3:IPv6 是不是比 IPv4 更安全?

协议层面是——IPv6 原生集成了 IPsec(RFC 6434 建议支持),地址扫描不可行。但部署层面未必:IPv6 引入了新的攻击面(NDP 欺骗、RA 欺骗、ICMPv6 滥用),如果没有正确配置防火墙和 RA Guard,反而可能比 IPv4 更脆弱。安全不取决于协议版本,取决于你的配置。

Q4:为什么有些网站 IPv6 访问反而更慢?

通常是 PMTUD 黑洞问题。IPv6 禁止中间路由器分片,如果路径上某个防火墙错误地拦截了 ICMPv6 Packet Too Big 消息,发送方无法知道 MTU 限制,大包被静默丢弃,TCP 连接看起来”卡住”了。另一个常见原因是 DNS 返回了 IPv6 地址但路径不通(Happy Eyeballs 算法可以缓解)。

Q5:我想给网站加 IPv6 支持,最简方案是什么?

如果你用 CDN(Cloudflare、阿里云 CDN、腾讯云 CDN),最简单的方法是在 CDN 配置中开启 IPv6 兼容——CDN 会帮你在边缘节点做 IPv4↔IPv6 转换,源站不需要任何改动。如果你没有 CDN,需要在服务器上配置双栈(同时绑定 IPv4 和 IPv6 地址,Nginx/Apache 都支持)。

Q6:IPv6 部署后,我的 IPv4 网站会受影响吗?

不会。双栈部署的关键原则是互不影响——IPv4 的服务继续监听 IPv4 地址,IPv6 的服务监听 IPv6 地址。用户通过 DNS 解析时会同时获得 A 记录(IPv4)和 AAAA 记录(IPv6),客户端用 Happy Eyeballs 算法选择最快的路径。

📖 相关文章

林知远

林知远

互联网技术科普作者

阅读所有文章

互联网技术科普作者,专注把复杂的网络技术用通俗的语言讲给每个人听。IP地址、DNS、网络协议——这些看似高深的概念,其实和你的日常生活息息相关。相信技术不应该有门槛,好的科普能让更多人受益。致力于让网络基础知识触手可及。

服务领域

IP地址网络基础DNSIPv4IPv6IP归属地

你可能感兴趣

准备好开始了吗?

即刻加入 008ip.com,解锁更多功能吧!