IPv6 压缩与展开
每行一个地址。在你输入时于浏览器中转换。
3 行中有 3 行是有效的 IPv6 地址。
- 压缩形式(RFC 5952)
2001:db8::ff00:42:8329
展开形式2001:0db8:0000:0000:0000:ff00:0042:8329
- 压缩形式(RFC 5952)
2a00:1450:4010:c0b::64
展开形式2a00:1450:4010:0c0b:0000:0000:0000:0064
- 压缩形式(RFC 5952)
::ffff:192.0.2.1
展开形式0000:0000:0000:0000:0000:ffff:c000:0201
IPv6 地址有 128 位,写成 8 组、每组 4 个十六进制数字。几乎没有人会写全 32 位数字:每组开头的零可以省略,连续的全零组可以用 :: 代替。
由于可能存在多种简写,RFC 5952 规定了所有工具都应输出的规范形式:使用小写字母,不写开头的零,:: 用于最长的、至少两组的连续全零组(长度相同时取第一处),并且绝不用于单个全零组。2001:0db8:0000:0000:0000:ff00:0042:8329 写作 2001:db8::ff00:42:8329。
写出全部 8 组及所有开头零的展开形式,用于文本排序、某些配置文件以及反向 DNS 名称(ip6.arpa)。
常见问题
为什么 :: 只能出现一次?
出现两次会产生歧义:在 2001::1::2 中,无法判断每个 :: 各代表几组零。
大写字母是错误的吗?
作为输入是有效的,但 RFC 5952 要求输出使用小写,以便日志、配置和比较保持一致。
像 ::ffff:192.0.2.1 这样带 IPv4 部分的地址呢?
可以接受。对于 IPv4 映射地址,简写形式会按照 RFC 5952 的建议保留点分十进制的 IPv4 部分。