理论随心记——ipv6基础及地址分配之无状态地址自动配置

该内容只是以默写总结一些知识点而已,顺便分享出来和方便翻阅。无他。有错误的地方麻烦批评指正。十分感谢。

IPV6地址有128位。

IPV6报文由IPV6基本报头(40字节),IPV6扩展报头和上层协议数据单元组成。

IPV6采用冒号十六进制:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx
xxxx是4个十六进制数。
一个IPv6地址由IPv6地址前缀和接口ID组成。

FE80::/10 链路本地地址,只在同一本地链路有效。以其为源地址或者目的地址的报文不会被转发到其他链路。
2000::/3 全球单播地址。
FF00::/8 组播地址。FF02::1 链路本地范围所有节点。FF02::2 链路本地范围所有路由器。
::1/128 环回地址,等同IPV4的127.0.0.1

无状态地址自动配置:无需DHCP辅助,主机可通过获得IPV6前缀自动生成接口ID。由RA和RS报文实现。
RA:路由器定期以组播方式发送携带网络配置参数的RA报文(华为缺省是关闭的,需要关闭RA抑制才可自动发送)
RS:主机为了快速获取前缀,主动发送RS报文给路由器,路由器接收后单播发送RA报文。

接口获得IPV6地址接口ID的方式有三种:手工配置/软件生成/EUI-64格式生成

EUI-64简单讲就是在设备自己的MAC地址中间插入FFFE,且将MAC地址的U/L(第七高位)位的值从0变成1,形成64位的接口ID,且接口ID全局唯一。再和接口前缀组成IPV6地址。(比如2011::前缀的是global address。而FE80::前缀的是link-local address)
那么为什么接口ID是全局唯一呢?先了解下U/L位。MAC地址的U/L位为0的时候,表明MAC是全局唯一,为1的时候,表示MAC地址是
本地唯一。可是为什么EUI-64将其从0变为1却是全局唯一呢?因为在EUI-64地址到IPV6接口标识符的转换过程中会对U/L位取补,所以在IPV6接口标识符中生成的U/L位在解释时就与IEEE的定义相反。

IPV6无状态DAD检查: 设备不是说有一个IPV6地址就马上给接口分配,而是要在给接口分配IPV6单播地址之前,进行重复地址检测,类似IPV4的免费ARP功能。这时候肯定是要向外发送一些报文的,但是要往哪里发呢?这时我们就需要了解请求节点组播地址(Solicited-node)了。设备在进行DAD检查之前虽然不能使用试验地址(一个IPv6单播地址在分配给一个接口之后且通过重复地址检测之前称为试验地址)进行单播通信,但是会加入组播组。Solicited-node是由单播地址的后24位加上地址前缀FF02:0:0:0:0:1:FF00::/104组成,形成128位的组播地址。eg:实验地址是2000::1,那么其加入的Solicited-node是FF02::1:FF00:1(取出来的24位是00:1)。
了解完Solicited-node,所以设备节点是向请求节点组播地址发送以试验地址为目的地址的请求邻居NS报文,如果收到了回应(NA)报文,则说明网络中已经有该地址了。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部