IPV6技术第三讲-IPV6地址特性

IPV6技术第三讲-IPV6地址特性

在前面的章节中介绍到了IPV4的特有功能,如自动配置,无广播功能等。本章节将针对这些IPV6的性进行介绍这些特性的工作原理。

 

本节要介绍的几个IPV6特性都跟IPV6邻居发现协议有关,称为NDP协议,它可以解决如下问题,如下图:

IPV6技术第三讲-IPV6地址特性_第1张图片

如图示,解决ARP,自动配置,重复地址检测等问题。

 

       如何替代ARP协议??

       前面章节介绍到IPV6无广播功能,只有单播,组播和任意播,因IPV6的此特殊性,直接影响了二层所支持的协议,在IPV4网络中有广播的概念,而IPV6网络二层则不存在广播了。但是IPV6工作在以太网时,在数据通信过程中仍然需要知晓目标主机的二层MAC地址,但IPV6网络又不存在广播功能, 因此ARP协议在IPV6网络是不能工作的,也即是IPV6无ARP功能。那发送方如何获取接收方的MAC地址?这似乎是一个很重要的问题。

 

       IPV6 NDP协议替代ARP功能

       IPV6设备通过NDP协议,可以实现类似ARP协议的功能,如下图示意:

IPV6技术第三讲-IPV6地址特性_第2张图片

从图中描述中可看到,发送方A发送了一个ICMP报文,类型为135,该数据的三层源地址为A的IPV6地址,目标三层IPV6地址为一个请求节点组播地址。我们在上一节中有介绍到关于请求节点地址的特点,它是一个由FF02开头的地址,地址一般为FF02::1:FFXX:XXXX,其中X位是IPV6地址的后24位。图中所示的目标地址则是FF02::1:FF(B主机的后24位),通过构造这样的地址来将ICMP类型为135的报文发送给接收方B。可能你会有疑问,那我怎么知道B主机IPV6地址的后24位?请注意,你要访问一个目标,不可能出现目标地址不知道的情况的,你在知晓目标的IP地址后才会有相应的访问。因此,ICMP报文的目标IP地址就是FF02::1:FF(B主机的后24位)。那这个报文的二层MAC地址又分别是什么呢?源MAC地址是A的地址,目标MAC地址是一个ICMPv6的组播地址33:FF:FF:00:02,要注意的是,不同厂商的产品,这个二层目标MAC地址可能不一样。最后接收方收到这样的请求报文后则会把自己的MAC地址回复给发送方。这样,发送方就获得了接收方的实际MAC地址了。

 

       ICMPv6报文解决自动化配置

       在没有设置DHCP功能的前提下可为PC或客户机自动配置IP地址这个功能算是IPV6地址的特有功能了。如下示意图描述了IPV6地址的无状态配置过程:

IPV6技术第三讲-IPV6地址特性_第3张图片

首先,自动配置IP地址需要有路由器的前提下PC才可能自动配置,因此路由器才是关键。如上图所示,路由器会通告RA报文,当PC收到RA报文后则开始了自动配置。在RA报文中,包含了路由器设置的地址前缀,自动配置标记等信息,当PC收到RA包时查看报文中的自动配置信息后再按前缀进行有规则地自配置IP。RA报文是一个类型为134的报文,该报文的源IP地址为路由器的对应接口的Link-Local地址,目的地址为所有节点的组播地址,地址是FF02::1。

       关于RA报文,路由器每200秒发送一个,这个时间同样的不同厂商的产品可能时间间隔不太一样,但不管如何,这个报文通告给了PC,PC必须要接收到RA报文才能开始自动配置IP。若按200秒来看,此时路由器刚发送完RA报文,此时PC才刚上线,错过了这个RA报文,那这样PC就要等待下一个RA报文,那一等就是200秒,这样长的时间我想并不是每个人都这么有耐心的,那怎么解决这个问题呢?RS报文可以解决这个问题。

       RS报文解决PC错过RA报文的尴尬

IPV6技术第三讲-IPV6地址特性_第4张图片

由如上示意图描述可知,RS报文由PC发送,当PC连接到网络时,PC设置为自动获得IP则会发送RS报文,该报文为ICMP类型值133,源地址为PC的Link-Local地址,目标地址为所有路由器的节点组播地址,地址为FF02::2。当路由器接收到RS报文后立即向PC发送RA报文,以此让PC马上自动配置一个IPV6地址。

       解决复制地址检测功能

       在IPV4网络中使用免费ARP来检测网络中IP地址是否冲突,在IPV6网络中则使用ICMP类型为135的报文来检测IP地址冲突,如下图:

IPV6技术第三讲-IPV6地址特性_第5张图片

如图所示,该报文源地址为全0的特殊地址,目标地址为源主机的请求节点组播地址,即如图示目标地址为A的节点组播地址,这样的报文发送到网络中,如果没有主机回应则代表网络中没有IP冲突,若有主机回应则代表了网络中有其他主机配置了与源主机相同的IPV6地址。

       最后总结一下,IPV6中使用ICMPv6报文来解决ARP等问题,其中类型值为135、136的报文用来取代ARP功能及检测重复地址,使用133、134类型的报文来解决自动配置IP地址。

 

 

 

 

 

 

你可能感兴趣的:(IPV6技术第三讲-IPV6地址特性)