「IPv6」- 地址表示法(冒号分十六进制)

  CREATED BY JENKINSBOT

IPv6,共 128 位,分 8 段,每段 4 字符(HEX),通过冒号(:)分隔 —— 冒号分十六进制;

地址表示

书写方法如下:

ABCD:EF01:2345:6789:ABCD:EF01:2345:6789
2001:0DB8:0000:0023:0008:0800:200C:417A

# 前导零可省略
2001:0DB8:0000:0023:0008:0800:200C:417A
2001:DB8:0:23:8:800:200C:417A

# 连续零可压缩
2001:DB8::23:8:800:200C:417A        # 注意 :: 仅能出现一次,以保证地址解析唯一性

# 内嵌 IPv4 地址
0:0:0:0:0:0:166.168.1.2/64          # 地址的前 96bit 为 IPv6 地址格式,后 32bit 为 IPv4 地址格式;
                                    # IPv6 部分可采用首选或压缩格式;IPv4 部分采用点分十进制格式;
                                    # 在隧道技术中使用这种表示法 

网络表示

亦采用 IPv6-Address/Mask 形式,例如:

ABCD:EF01:2345:6789:ABCD:EF01:2345:6789   # 地址
ABCD:EF01:2345:6789::/64                  # 子网号

常见问题

Q:为什么 IPv6 地址长度为 128bit?
A:CPU 处理字长发展至今分别经历 4bit、8bit、16bit、32bit、64bit 等,当数据能用 2 的指数幂字长的二进制数表示时,CPU 对数值的处理效率最高。IPv4 地址长度为 32bit,原因之一就是当时互联网上的主机 CPU 字长为 32bit。从处理效率和未来网络扩展性上考虑,将 IPv6 的地址长度定为 128bit 是十分合适的;

Q:IPv6 的 128bit 地址到底有多少?
A:IPv4 有(232)= 4,294,967,296 个地址。IPv6 有(2128 = 296×232)= 340,282,366,920,938,463,463,374,607,431,768,211,456 个地址(340 万亿万亿万亿个地址),相当于地球表面每平方米可以分配到 67 万亿个地址。夸张的说,地球上每一粒沙子都可以分配到一个 IPv6 地址(提及 IPv6 多半对说这句话来感叹 IPv6 地址很多);

Q:IPv6 为什么不使用点分十进制来表示?
A:IPv4 地址使用点隔开的 4 段十进制数加上掩码来表示,例如 192.168.1.1/24。IPv6 的地址有 128 位,沿用 IPv4 的十进制表示方法就过于笨拙,所以在 RFC2373 中定义不同于 IPv4 的格式;