水滴
分类: LINUX
2019-02-15 10:50:44
IPv6地址表示方法
IPv6地址总共有128位,为了便于人工阅读和输入,和IPv4地址一样,IPv6地址也可以用一串字符表示。IPv6地址使用16进制表示,IPv6地址划分成8个块,每块16位,块与块之间用“:”隔开。如下所示:
同时,对于多个地址块为0的情况时,可以使用“::”号,进行化简。
带有子网前缀的地址:前N位为网络标识
化简原则:
+全0块“0000”,可以化简为“0”
+多个全0块,可以化简为“::”
+一个IPv6地址中只能出现一个“::”,出现多个全0块时,“::”要化简最长的一段,没有最长的要就近(左)
+“::”可以出现在地址开头或结尾
具体示例如下:
IPv6地址类型
IPv6地址整体上分为三类:单播地址,任播地址,组播地址。
单播地址:一个单播地址对应一个接口,发往单播地址的数据包会被对应的接口接收;
任播地址:一个任播地址对应一组接口,发往任播地址的数据包会被这组接口的其中一个接收,被哪个接口接收由具体的路由协议确定;
组播地址:一个组播地址对应一组接口,发往组播地址的数据包会被这组的所有接口接收;
具体的地址分配如下图,任播存在于单播地址之中,没有专门的区分:
特别说明的地址类型:
未指定地址,主要用于系统启动之初,尚未分配IP时,对外请求IP地址时,作为源地址使用,它不能用于数据包的目的地址之中。
环回地址,用于自己向自己发送数据包时使用,在日常网络排错中可以测试网络层协议状态。
全局单播地址: (2000::/3)这是典型的可路由的公有地址,与IPv4 中的单播地址相同。
本地链路单播地址,本地单播地址的前缀为FE80::/64,它的作用是在没有路由(网关)存在的网络中,主机通过MAC地址自动配置生成IPv6地址,仅能在本地网络中使用。
组播地址(FF00::/8):与IPv4 中一样,目标地址为组播地址的分组被传输到该组播地址表示的所有接口。这种地址有时也被称为一对多地址。IPv6组播地址很容易识别,它们总是以FF打头。
任意播地址:与组播地址一样,任意播地址也标识多个设备的多个接口,但有一个很大的差别:任意播分组只被传输到一个接口一一根据路由选择距离确定的最近接口。这种地址的特殊之处在于,可将单个任意播地址分配给多个接口。这种地址被称为”一对最近”地址。
内嵌IPv4地址表示法:
为了实现IPv4-IPv6互通,IPv4地址会嵌入IPv6地址中,此时地址常表示为:X:X:X:X:X:X:d.d.d.d,前96bit采用冒分十六进制表示,而最后32bit地址则使用IPv4的点分十进制表示,例如::192.168.0.1与::FFFF:192.168.0.1就是两个典型的例子 。