公众号旧文

互联网是怎么从 IPv4 无缝过渡到 IPv6 的?

作者:胖子阅读 —

从 IPv4 过渡到 IPv6,不是像系统升级那样,点一下更新并重启,全世界就可以直接从 IPv4 变成 IPv6。

互联网更像是一辆正在高速行驶的汽车,你不能停下来,只能一边开,一边把发动机换掉。

没有停机,没有统一指挥,大多数人都不知道这件事正在发生,而且已经持续了二十年。

一、为什么要过渡?因为 IP 不够用了

IPv4 的问题,说到底就三个字:不够用。

它的地址总量是 2³²,大约 43 亿。 在互联网早期,这几乎是无限资源。

但后来发生了三件事:

  • 智能手机爆发
  • 家庭设备激增(电视、摄像头、IoT)
  • 云计算快速扩张

结果就是 IP 地址不够分了。

于是,NAT 这个补丁方案出现了。

一个公网 IP,后面挂一堆设备,通过端口区分。

它确实延长了 IPv4 的寿命,但也带来了副作用:

  • 端口映射复杂
  • P2P 连接困难
  • 网络结构越来越别扭

如果你用过 NAT VPS,会深有体会。

二、IPv6 的思路很简单

既然不够用,那就多给。

IPv6 的地址是 2¹²⁸,数量大到不可能用完。

所以它的设计理念变了,不再共享,而是人人都有。

每台设备,都可以拥有一个公网地址。

三、但难点从来不是设计,而是怎么切换

如果互联网可以停机,那事情就简单了,关掉 IPv4,启用 IPv6。

但现实显然是不可能的。

全球数十亿设备,不可能同时升级。

所以唯一的办法是 IPv4 和 IPv6 长期共存。

这也是为什么,IPv6 推了二十年,IPv4 依然还在。

四、那从IPv4到IPv6是怎么切换的?

这场迁移,主要靠三种方式完成。

1. 双栈:两个世界同时存在

一台设备,同时拥有 IPv4 和 IPv6。

访问网站时:

  • 优先 IPv6
  • 不通再用 IPv4

这个过程完全自动,你几乎无感。

所以客观现实是,你不是切换到 IPv6,而是在同时使用两个世界。

2. 隧道:借路而行

如果网络本身没有 IPv6怎么办?

那就套一层,把 IPv6 数据包封装进 IPv4 里传输。

就像把一封信装进另一个信封再寄。

很多内网穿透、组网工具,本质就是这个思路。

所以 IPv6 并不一定要原生支持,也可以借道 IPv4。

3. 协议转换:找个翻译

比如 NAT64 / DNS64。

场景是:

你在 IPv6 网络 但要访问一个 IPv4 网站

系统会:

  1. 生成一个“假的” IPv6 地址
  2. 在网关把请求翻译成 IPv4
  3. 帮你完成访问

整个过程,你同样完全感知不到。

五、现实世界,是一锅大杂烩

现在的互联网,并不是在替换,而是已经变成一个混合系统:

  • 一些网站已经支持 IPv6
  • 一些仍然只支持 IPv4
  • NAT 网络依然大量存在
  • 各种隧道和转换在背后工作

它们不是替代关系,而是叠加关系。

六、一个细节:你未必真的在用 IPv6

即使系统设置了 IPv6 优先,也不一定真的用它。

因为现代系统采用了Happy Eyeballs(快乐眼球算法),

IPv6 和 IPv4 几乎同时尝试,谁快用谁,

所以你不会感觉到切换。

这也是为什么很多人以为自在用 IPv4,但已经在部分流量上用上了 IPv6。

七、从折腾网络的角度看

IPv4 的世界,是挤出来的:

  • NAT
  • 端口复用
  • 各种绕路

而 IPv6,则是原生设计的:

  • 每个设备一个公网 IP
  • 不需要端口映射
  • 网络结构更直接

很多现代组网工具,本质上是在 IPv4 世界里,模拟 IPv6 的体验。

八、最后一句话总结

IPv4 到 IPv6,从来不是一次简单的升级。

而是一场没有终点的迁移:

  • 双栈在维持兼容
  • 隧道在填补空白
  • 转换在弥合断层

它没有开关,也不会彻底完成,至少在我们的有生之年,不会。

扩展阅读


每天看我的文章,你一定已经知道 IP 是谁负责分配的了,那域名呢?

光纤越粗,带宽就越大?家用光纤带宽理论上限有多大?

手握 1600 万个 IP 却几乎不用,IPv4土豪——福特汽车公司

为什么二维码的四角上,只有三个黑色方块?