← 返回工具箱
🔢 IPv4转IPv6

IPv4 → IPv6 转换

📖 IPv4与IPv6转换详解

为什么需要IPv6?

IPv4地址空间只有约43亿个地址(2^32),随着互联网设备的爆发式增长,已经严重不足。IPv6使用128位地址,提供了约3.4×10^38个地址,从根本上解决了地址枯竭问题。

IPv4 vs IPv6 对比

特性IPv4IPv6
地址长度32位128位
地址数量约43亿约3.4×10^38
表示格式点分十进制(192.168.1.1)冒号十六进制(2001:db8::1)
NAT需求广泛使用通常不需要
安全性IPSec可选IPSec内置

过渡机制

机制格式说明
IPv4-Mapped::ffff:a.b.c.d在IPv6套接字中表示IPv4地址,最常用的过渡方式
IPv4-Compatible::a.b.c.d早期过渡方案,已被RFC 4291废弃
6to42002:xxyy:zzww::/48自动隧道,将IPv4地址嵌入IPv6前缀中
Teredo2001:0000:...允许NAT后面的主机获得IPv6连接
NAT6464:ff9b::a.b.c.d允许IPv6主机访问IPv4服务器

转换原理

IPv4: 192.168.1.1 → 十六进制: C0.A8.01.01

IPv4-Mapped: ::ffff:192.168.1.1
= ::ffff:c0a8:0101
= 0000:0000:0000:0000:0000:ffff:c0a8:0101

IPv4-Compatible: ::192.168.1.1
= ::c0a8:0101

6to4: 2002:c0a8:0101::
= 2002 + [C0A8] + [0101] + ::
💡 小贴士:在实际开发中,最常遇到的是IPv4-Mapped地址。当服务器监听IPv6套接字时,来自IPv4客户端的连接会显示为 ::ffff:x.x.x.x 格式。在Node.js、Python等语言的网络编程中需要注意正确解析这种地址。