1.IPv6地址标识
IPv6地址由128位二进制数来标识,每16位分成一组,分成8组,组与组之间用“:”分隔。以下即为一个IPv6地址的示例:
2001:0ab4:0001:1230:0000:0000:0000:04a6
如此书写地址,明显比较繁琐,因此在IPv6表达时有两个简化规则:
(1)每组地址的前导零可以省略。
上面的IPv6地址可简化为:2001:ab4:1:1230:0:0:0:4a6
(2)多个全为0的地址组可以用“:”替代。
以上的IPv6地址可再次简化为:2001:ab4:1:1230::4a6。
备注:第二个简化规则在一个地址表达中只能使用一次。如果多次使用,简化后的地址无法还原回初始的地址。
2.IPv6地址分类
IPv6地址分为单播地址、组播地址和任播地址,区别于IPv4地址的是IPv6地址分类中没有了广播地址,设置了任播地址的分类。
(1)IPv6单播地址用来唯一标识一个接口,类似于IPv4的单播地址。一个单播地址只能标识一个接口,但一个接口可以有多个单播地址。单播地址可细分为链路本地地址、唯一本地地址和全球单播地址。
①链路本地地址:是只在同一链路上的节点之间有效,在IPv6启动后自动生成,使用了特定的前缀FE80::/10(即前10位二进制为1111111010)。
②唯一本地地址:是IPv6网络中可以随意使用的私有网络地址,使用特定的前缀FD00:/8标识(即前8位二进制为11111101)。
③全球单播地址:相当于IPv4中的公有地址,目前已经分配出去的前3位固定是001,已经分配的IPv6地址范围是2000::/3(即前3位二进制为001)。
(2)IPv6组播地址
IPv6组播地址标识了一组接口,目的地址是组播地址的数据包会被属于该组的所有接口接收。IPv6组播地址使用了特定的前缀FF::/8(即前8位二进制为11111111)标识。
(3)IPv6任播地址
任播的概念最初是在RFC1546中提出并定义的,主要为DNS和HTTP提供服务。IPv6地址中没有为任播规定单独的地址空间,任播地址和单播地址使用相同的地址空间。IPv6任播地址可以同时分配给多台设备,即多台设备可以有相同的任播地址,以任播地址为目的地址的数据包会通过路由器的路由表路由到离源设备最近的拥有该目的地址的设备上。任播地址的优势在于源节点不需要了解为其提供服务的具体节点,而可以接收特定服务。当一个节点无法正常工作时,以任播地址的数据包会被发住拥有该任播地址的其他节点。
(4)特殊IPv6地址
①0:0:0:0:0:0:0:0(可简化为::)为未指定IPv6地址,它不能分配给任何节点表示当前状态下没有地址,如设置为自动获取的IP地址的设备刚接入网络时,由于其本身没有IP地址,发送地址请求数据包时使用该地址作为源地址,但该地址不能作为目的地址。
②0:0:0:0:0:0:0:1(可简化为::1)为环回地址。节点用它作为发送后返回给自己的IPv6报文,该地址不能分配给任何物理接口。