IPv6的地址格式
- IPv4地址是类似 A.B.C.D 的格式,它是32位,用"."分成四段,用10进制表示
- IPv6地址类似
XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX的格式,
它是128位的,用":"分成8段,每个X是一个16进制数(16 = 2^4);可见,IPv6地址空间相对于IPv4地址有了极大的扩充
IPv6 地址的各个部分
IPv6 地址的长度为 128 位,由八个 16 位字段组成,相邻字段用冒号分隔。IPv6 地址中的每个字段都必须包含一个十六进制数字,而 IPv4 地址则以点分十进制表示法表示。在下图中,x 表示十六进制数字。
图 IPv6 地址的基本格式
该图显示 IPv6 地址的三个部分,下文将对此进行说明。-
站点前缀:最左侧的三个字段(48 位)包含站点前缀。站点前缀描述通常由 ISP 或区域 Internet 注册机构 (Regional Internet Registry, RIR) 分配给您的站点的公共拓扑。
-
子网 ID:下一个字段是您(或其他管理员)为您的站点分配的 16 位子网 ID。子网 ID 描述专用拓扑(也称为站点拓扑),因为它是您的站点的内部 ID。
-
接口 ID:最右侧的四个字段(64 位)包含接口 ID,也称为标记。接口 ID 可以从接口的 MAC 地址自动配置,也可以采用 EUI-64 格式手动配置。
请再看一下图中的地址:
2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b
此示例显示了 IPv6 地址的全部 128 位。
前 48 位2001:0db8:3c4d包含表示公共拓扑的站点前缀。
随后的 16 位0015包含代表站点专用拓扑的子网 ID。
低阶(最右边的 64 位)0000:0000:1a2f:1a2b包含接口 ID,可以用mac地址填充
RFC2373中详细定义了IPv6地址,按照定义,一个完整的IPv6地址的表示法:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx
例如:2031:0000:1F1F:0000:0000:0100:11A0:ADDF
为了简化其表示法,rfc2373提出每段中前面的0可以省略,连续的0可省略为"::",但只能出现一次。例如:
原地址 | 简写 |
---|---|
1080:0:0:0:8:800:200C:417A | 1080::8:800:200C:417A |
FF01:0:0:0:0:0:0:101 | FF01::101 |
0:0:0:0:0:0:0:1 | ::1 |
0:0:0:0:0:0:0:0 | :: |
IPv6中的前缀
类似于IPv4中的CDIR表示法,IPv6用前缀来表示网络地址空间,比如:
2001:250:6000::/48 表示前缀为48位的地址空间,其后的80位可分配给网络中的主机,共有2的80次方个地址
ok,下面解释一些常见的IPv6地址或者前缀:
- ::/128 即0:0:0:0:0:0:0:0,只能作为尚未获得正式地址的主机的源地址,不能作为目的地址,不能分配给真实的网络接口
- ::1/128 即0:0:0:0:0:0:0:1,回环地址,相当于ipv4中的localhost(127.0.0.1),ping locahost可得到此地址
- 2001::/16 全球可聚合地址,由 IANA 按地域和ISP进行分配,是最常用的IPv6地址
- 2002::/16 6 to 4 地址,用于6to4自动构造隧道技术的地址
- 3ffe::/16 早期开始的IPv6 6bone试验网地址
注:上面三类属于单播地址,都是目前互联网上广泛应用的IPv6地址 - fe80::/10 本地链路地址,用于单一链路,适用于自动配置、邻机发现等,路由器不转发
- ff00::/8 组播地址
- ::A.B.C.D 其中<A.B.C.D>代表ipv4地址,兼容IPv4的IPv6地址。自动将IPv6包以隧道方式在IPv4网络中传送的IPv4/IPv6节点将使用这些地址
::FFFF:A.B.C.D 其中<A.B.C.D>代表ipv4地址,例如 ::ffff:202.120.2.30 ,是IPv4映射过来的IPv6地址,它是在不支持IPv6的网上用于表示IPv4节点