计算机网络第5章ICMPv6及应用.ppt_第1页
计算机网络第5章ICMPv6及应用.ppt_第2页
计算机网络第5章ICMPv6及应用.ppt_第3页
计算机网络第5章ICMPv6及应用.ppt_第4页
计算机网络第5章ICMPv6及应用.ppt_第5页
已阅读5页,还剩87页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、李向丽,郑州大学信息工程学院,下一代互联网协议IPv6,第一部分IPv6技术,第2章IPv6概述 第3章IPv6编址技术 第4章IPv6分组及协议机制 第5章ICMPv6及应用 第6章IPv6过渡机制,5.1 ICMPv6概述 5.2 ICMPv6报文基本格式 5.3 ICMPv6差错报告报文 5.4 ICMPv6信息报文 5.5 邻节点探测协议(NDP) 5.6 ICMPv6多播组成员报文,第5章 ICMPv6及应用,5.1 ICMPv6概述,在RFC2463中定义Internet Control Message Protocol Version 6(ICMPv6协议)。 在IPv6中,IC

2、MPv6实现IPv4中ICMP、ARP和IGMP的功能。 ICMPv6协议功能: 向源节点报告关于目的地址传输IPv6包的错误和信息,具有差错报告、网络诊断、邻节点发现和多播实现等功能。,ICMPv6报文的封装,ICMPv6报文封装在IPv6中,具有扩展首部的IPv6,封装ICMPv6报文,封装在IPv6分组中的ICMPv6报文,ICMP:是在TCP/IP网络中传递网络控制信息的主要手段,同时,ICMP还提供了差错报告的功能。 IPv6的定义中,对IPv4的ICMP进行了修订。删除了一些极少使用的ICMP报文,更完整地加入了ICMP的多播控制功能,对其他原有的ICMP报文做了针对IPv6的修改

3、。经过修改,ICMPv6与原有的ICMP已经不再兼容。,已定义的ICMPv6报文类型,5.2 ICMPv6报文的基本格式,5.2.1 ICMPv6报文校验和的计算 5.2.2 封装ICMPv6报文的IPv6分组的源地址 5.2.3 ICMPv6报文的处理规则,5.2 ICMPv6报文的基本格式,类型:标识ICMPv6报文类型,它的值根据报文的内容来确定。 代码:用于确定ICMPv6进一步的信息,对同一类型的报文进行了更详细的分类。 校验和:用于检测ICMPv6的报文是否正确传送。 报文体:用于返回出错的参数和记录出错报文的片段,帮助源节点判断错误的原因。或是其它参数。,5.2.1 ICMPv6

4、报文校验和的计算,校验和16bit,计算范围包括两部分。 ICMPv6报文 IPv6伪首部(伪首部中下一首部字段的值为58)。 计算方法: 校验和字段被设置为0 ICMPv6对校验范围内的数据以16比特为单位,做1的补码的加法运算。 在ICMPv6首部校验和字段中,置入此16比特的和。,ICMPv6校验和的校验范围,IPv6的伪首部,ICMPv6报文,5.2.2 封装ICMPv6报文的IPv6分组的源地址,源地址帮助IPv6分组的源节点判断分组在何处出错。一个发送ICMPv6报文的节点在计算校验和以前,要在IPv6首部中谨慎填写源地址和目的 IPv6地址。选择ICMPv6报文源地址的主要原则有

5、四个: 前二个规则是针对ICMPv6信息报文制定的。 第一个规则:若原IPv6分组是单播分组,ICMPv6应答报文的源地址应该设置为原IPv6分组中的目的地址。 第二个规则:若是多播Multi-cast group或任播any-cast group报文,则ICMPv6应答报文必须将收到该IPv6分组的接口的IP地址作为源地址。,第三个规则:适用于ICMP差错报告报文。 在许多情况下,生成差错报文的并非是目的节点。因此差错报文不能将原报文中的目的地址作为ICMP差错报文的源地址使用,而应将报告IPv6分组出错信息的节点地址作为源地址。 例如,若是分组过大ICMPv6差错报文时,该源地址应该是不能

6、接纳原IPv6分组的路由器的某个接口的IPv6地址。 第四个规则:主动发送的ICMPv6报文及不适用上述规则的ICMP报文,发送ICMPv6报文的节点必须查看自己的路由表,判断哪一个网络接口将被用于发送ICMPv6报文,则将该接口的一个单播地址作为源地址。,5.2.3 ICMPv6报文的处理规则,当接收到ICMPv6差错报告报文时,如果无法识别具体的类型,必须将它交给上层协议模块进行处理。 当接收到ICMPv6信息报文时,如果无法识别具体的类型,必须将它丢弃。 所有的ICMPv6差错报告报文,都应该在IPv6所要求的最小MTU允许范围内,尽可能多地包括引发该ICMPv6差错报文的IPv6分组片

7、段,以便给IPv6分组的源节点提供尽可能多的诊断信息。,ICMPv6报文的处理规则(续1),在需要将ICMPv6报文上传给其上层协议模块处理的情况下,上层协议的具体类型,应该从封装该ICMPv6报文的IPv6分组的下一首部字段中获取。但是,如果该IPv6分组携带有很多扩展首部,则可能会导致有关上层协议类型的信息没有被包含在ICMPv6报文中。这时,只能将该差错报告报文在IP层处理完后丢弃掉。 不能产生ICMPv6差错报告报文的发送情况: 一个ICMPv6差错报告报文。这主要是为了避免无休止地产生ICMPv6报文而引起网络拥塞。,ICMPv6报文的处理规则(续2),一个发往多播地址的IPv6分组

8、。但有两个例外: 当使用IPv6多播地址进行路径MTU探测时,可以发送“报文过长”差错报告报文; 允许使用参数错误报文报告:存在不可识别的TLV可选项。 链路层的多播报文。对这类报文也具有与上面第二类情况相同的例外。 链路层的广播报文。对这类报文也具有与上面第二类情况相同的例外。 IPv6分组的源地址无法唯一确定一个单独节点时,这种情况也不能够引起ICMPv6差错报告报文的发送。例如,IPv6不明确地址等。,ICMPv6报文的处理规则(续3),最后,为了限制在发送ICMPv6差错报告报文时对网络带宽和转发处理的消耗,一个IPv6节点必须限制其发送ICMPv6差错报告报文的速率。但是,这样可能会

9、导致一个差错报告报文的源节点因为没有及时收到报文出错的报告而不断地重发该错误报文。目前有几种提供限制ICMPv6速率的方法,例如: 基于计时器的方法。例如,将发往某个源节点或所有源节点的ICMPv6差错报告报文的速率,限制在每T时间段内只发送一个差错报告报文之内。 基于带宽的方法。例如,将某个网络接口发送的ICMPv6差错报告报文所占用的带宽限制在这个接口所在链路带宽的某个比例F上。,5.3 ICMPv6差错报告报文,5.3.1 目的不可达ICMPv6报文 5.3.2 分组过大ICMPv6报文 5.3.3 超时ICMPv6报文 5.3.4 参数错误ICMPv6报文,ICMPv6报文分成两大类:

10、 ICMPv6差错报告报文:一个IPv6节点在处理一个接收到的报文时,如果有错误出现,则需要向源节点发送ICMPv6差错报告报文。目前ICMPv6共定义了四种类型的差错报告报文:目的不可到达、报文过长、超时、参数差错报告报文。 ICMPv6信息报文:传递用于控制的请求和应答信息。比如用于实现Ping功能的回声请求报文和回声应答报文,以及对多播组控制的ICMPv6信息报文。,ICMPv6差错报文基本格式,5.3 ICMPv6差错报告报文,ICMPv6差错报文基本格式,ICMPv6差错报告报文中的类型字段、代码字段及校验和字段的内容,根据差错报告报文类型的不同而不同。 ICMPv6报文体分为两个部

11、分,前4字节是参数字段,剩余部分是引起该ICMPv6报文产生的出错IPv6分组片段。 在整个ICMPv6报文的长度不超过IPv6对路径传输单元的最低限制(1280字节)的条件下,应该包含尽可能多的出错IPv6分组信息。这样可以使出错IPv6分组的源节点获得尽可能多的信息来诊断出错原因。,ICMPv6字段:类型值为1 代码 0-没有到目的的路由 1-与目的的通信由于管理被禁止 ,e.g.防火墙 2-(没有定义) 3-目的地址不可达,e.g.不能转换为MAC地址 4-端口不可达,e.g.端口没有开放 参数字段:未用,发送者设置为0,接收者忽略。 描述:该报文应该由路由器或节点的IPv6层产生,作为

12、对除拥塞以外的原因使得包不能传送到目的地址的回应。,5.3.1 目的不可达报文,一个节点在收到该报文后,必须通知上层协议进行相应处理。,ICMPv6字段: 类型值为2 代码:未用,发送者设置为 0,接收者忽略。 参数字段:记录在出现包过大错误时链路的MTU。 描述:包过大报文必须由路由器发出,当路由器发现包太大,超过了出口链路的MTU而不能转发时,丢弃该包,并向源节点发送ICMPv6报文。 可以用于IPv6路径MTU发现(PMTUD)。 在RFC1981中定义,IPv6 的PMTU使用ICMPv6类型2报文,即分组过大ICMPv6报文。,5.3.2 分组过大报文,一个节点在收到该报文后,必须通

13、知上层协议进行相应处理。,使用ICMPv6路径MTU发现(PMTUD)探测路径MTU的过程。,源,路由器,路由器,目的,MTU=1500,MTU=1400,MTU=1300,报文(MTU=1500),ICMPv6(类型=2),使用MTU=1400,报文(MTU=1400),ICMPv6(类型=2),使用MTU=1300,报文(MTU=1300),收到报文,用IPv6 PMTUD发现的MTU值被源节点缓存,ICMPv6字段:类型值为3 代码: 0-跳数限制为0 1-分片重组超时 参数字段:未用,发送者初始化为0,接收者忽略。 描述: 如果路由器收到跳数限制为0的包,或是它将跳数限制减去1后变为0

14、,该路由器必须丢弃这个包,并发一个代码为0的超时报文给源站点。 若在收到第1个分片后60秒内,还没有收到全部分片,则丢弃所有分片,并发送代码为1的超时报文给源站点。 一个节点在收到该报文后,必须通知上层协议处理。,5.3.3 超时ICMPv6报文,超过跳数限制,回送ICMPv6差错报文,ICMPv6字段: 类型值为4 代码: 0-错误的首部字段 1-不可识别的下一首部类型 2-不可识别的IPv6的TLV可选项 参数字段:称为指针,指出了在引起出错的包中错误出现地方的偏移量。,5.3.4 参数错误ICMPv6报文,一个节点在收到该报文后,必须通知上层协议进行相应处理。,参数错误报告报文描述:如果

15、节点发现了IPv6首部或扩展首部中某个字段有问题,它必须丢弃这个包,并发送一个ICMPv6参数错误报文,指出出错的地方和出错的类型。 指针字段指出检测出错误的地方相对于原IPv6分组首部的偏移量,以字节为单位。 比如,一个类型为 4、代码为1、指针字段值为40的ICMPv6报文,说明原分组中紧跟在IPv6基本首部后的扩展首部中的下一首部字段有一个不被识别的值。,先介绍ICMPv6回声请求和回声应答报文格式。其它报文将在相关机制中介绍。,5.4 ICMPv6信息报文,ICMPv6字段: 类型值为128(回声请求)、129(回声应答) 代码:0。 标识符:用于请求和应答的匹配,也可能是0。 序列号

16、:用于请求和应答的匹配,也可能是0。 数据:为0或任意字节的数据。 描述:每一个节点必须能够完成ICMPv6回声应答功能,即在收到ICMPv6回声请求时发出相应的ICMPv6回声应答报文。,ICMPv6回声请求和回声应答报文,5.5 邻节点探测协议NDP,5.5.1 邻节点探测协议NDP概述 5.5.2 邻节点探测协议定义的ICMPv6报文 5.5.3 替代ARP 5.5.4 无状态地址自动配置 5.5.5 重复地址探测DAD 5.5.6 前缀重新编址 5.5.7 路由器重定向 5.5.8 NDP总结,5.5 邻节点探测协议NDP(Neighbor Discovery Protocol,NDP

17、),IPv4的缺点之一:主机换网必须换地址,配置麻烦。 IPv4的解决办法: 启动协议( BOOTP ) 动态主机配置协议( DHCP ) 允许节点从BOOTP服务器或DHCP服务器获取配置信息。但是这些协议支持所谓的“状态自动配置”,即服务器必须保持每个节点的状态信息,并管理这些保存的信息。,IPv6的最重要目标之一是支持“即插即用”不需要任何人工干预,就能将一个节点插入IPv6网络,并在网络中启动。,IPv6使用两种不同机制来支持即插即用。 1、有状态地址自动配置:BOOTP和 DHCP ; 2、无状态地址自动配置。在这种方式下,需要配置地址的节点,使用邻节点探测机制获得一个IPv6地址。

18、,5.5.1 NDP概述,NDP是IPv6的一个重要组成部分,它不是一个全新的协议,而是由IPv4中的地址解析协议ARP、ICMP路由探测协议RDISC、ICMP报文重定向等协议综合而成的。,1、 邻节点探测协议的应用,2、为NDP定义的ICMPv6报文,3、NDP机制使用的ICMPv6报文,5.5.2 邻节点探测协议定义的ICMPv6报文,在本节中,我们介绍一下为NDP定义的五个ICMPv6报文: 邻节点请求 邻节点通告 路由器请求 路由器通告 重定向报文,1. 邻节点请求报文和邻节点通告报文,邻节点请求/通告报文可以完成ARP功能,还可以用来测试目的主机的连通性。 用于ARP功能时,邻节点

19、请求报文一般以多播的形式发送,主机一旦收到邻节点请求报文,它们将检查ICMP报文中的IPv6地址。如果这个地址恰好是自己的主机地址,主机将把自己的数据链路层地址封装在一条邻节点通告报文中,以应答邻节点请求报文的发送者。 用于探测目的主机连通性时,邻节点请求报文以单播IPv6分组的形式发送。如果发送者收到了应答的邻节点通告报文,它认为目的地址是可达的;否则它认为目的主机是不可达的。,邻节点请求报文的报文格式,选项代码=1,选项数据长度 =1,可选项(源链路层地址),邻节点请求报文字段意义,类型字段,其值为135,表示该ICMPv6报文是邻节点请求报文。 代码字段,必须置为0。 校验和字段,保存整

20、个ICMPv6报文的校验和。 保留字段,保留不用,其值必须等于0。 目的IPv6地址字段,存放目的主机的IPv6地址。例如,当使用该报文解析地址时,则该字段存放将要解析的IPv6地址。 可选项字段,包含: 选项代码字段,说明选项类型 选项数据长度字段,8字节单位,说明选项数据的长度。 选项数据,一些可选参数,例如源主机的链路层地址,用于ICMPv6信息报文的可选项格式,类型 =1,源链路层地址(Source Link_layer Address) =2,目的链路层地址(Target Link_layer Address) =3,前缀信息(Prefix Information) =4,重定向首部

21、(Redirected Head) =5,最大传输单元(MTU) 长度,以8字节为单位说明可选项长度,包括类型和长度,邻节点请求报文字段意义(续),邻节点请求报文必定包含源节点的源链路层地址选项。 源链路层地址选项的选项代码值为1 选项长度因网络类型而异。 当此源节点得不到应答报文时,只能重复发送9次邻节点请求报文。在各请求之间至少间隔1秒。 封装邻节点请求报文的IPv6分组 优先级字段=15 跳数极限字段=255 源IPv6地址=发送该报文的网络接口的IPv6地址。 用于ARP时,目的地址=多播IPv6地址。 探测目的主机连通性,目的地址=目的主机的IPv6地址。,邻节点通告报文,邻节点通告

22、报文并不只是在应答邻节点请求报文时才发送,有时主机也主动使用邻节点通告报文,来通告自己的链路层地址更新等信息。,邻节点通告报文格式,选项代码=2,选项数据长度=1,可选项(目的链路层地址),邻节点通告报文字段意义,类型字段,其值为136。 代码字段,必须置为0。 校验和字段,保存整个ICMPv6报文的检验和。 保留字段,保留不用,其值必须等于0。 路由R比特字段,R=1表示是一台路由器发送该报文。 请求S比特字段,S=1表示是对邻节点请求报文的响应。 覆盖O比特字段,O=1表明收到该报文的主机,应该用可选项字段中包含的目的数据链路层地址,更新自己的缓存。 目的IPv6地址字段,存放目的主机的I

23、Pv6地址。若是为了响应邻节点请求而发送的邻节点通告报文,该字段的值将与请求报文中的目的地址字段相同。该字段通常是发送邻节点请求报文的IPv6地址。但是并非所有情况都是如此。 可选项字段,包含选项代码字段、选项长度字段和可选参数,例如该ICMPv6报文的源主机的链路层地址。,例子,节点A在本地链路上发送邻节点请求报文,封装在IPv6分组中的ICMPv6邻节点请求报文,选项代码=1,选项数据长度=1,可选项(源节点A的链路层地址:08-00-20-01-C7-82),节点D使用邻节点通告报文对邻节点请求报文进行应答,封装在IPv6分组中的ICMPv6邻节点通告报文,选项代码=2,选项数据长度=1

24、,可选项(目的节点D的链路层地址:02-07-01-33-D6-92),2. 路由器请求报文和路由器通告报文,主机与远程系统进行通信时,必须找到路由器。 当多接口主机需要发送IPv6分组时,需要了解每个网络接口所连接的链路上的路由器的有关信息。 路由器每5分钟就发送一个路由器通告报文。 节点根据路由器通告报文更新路由器的信息。 主机可以主动向路由器发送路由器请求报文,路由器一旦收到路由器请求报文,将立即发送路由器通告报文。,ICMPv6路由器请求报文格式,选项代码=1,选项数据长度=1,可选项(源链路层地址),各个字段的内容和含义,类型字段,其值为133。 代码字段,必须置为0。 校验和字段,

25、保存整个ICMPv6报文的检验和。 保留字段,保留不用,其值必须等于0。 可选项字段,包含了一些可选参数。 例如发送报文的源主机链路层地址。路由器从报文中可以得到主机的链路层地址。当路由器应答请求报文时,不需要使用多播地址,直接向提出请求的节点发送路由器通告报文。,ICMPv6路由器通告报文格式,选项代码=5,选项数据长度=1,可选项(MTU大小),选项代码=1,选项数据长度=1,可选项(源链路层地址),保留,路由器通告报文字段含义,类型字段,其值为134。 代码字段,必须置为0。 校验和字段,保存整个ICMPv6报文的检验和。 最大跳数(max hop)字段,路由器用来推荐本地网络主机填入P

26、v6分组首部中“跳数极限”字段的默认值。 M/O比特字段,决定主机的地址自动配置方法。 保留字段,保留不用,其值必须等于0。,路由器通告报文字段含义(续),路由器生存时间(router lifetime)字段,以秒为单位说明主机能够使用路由器的时间范围。只要超过了该字段所指定的值,主机就认为此路由器不能再使用。如果值为0 xFFFF,则生存时间无限。 可到达时间已过(reach ability timeout)字段,是指在可到达的时间(Reachable Time)内,如果邻节点什么也没有发送,就认为该邻节点是不能到达的。这个时间参数以毫秒为单位。 可到达的重发间隔(reach ability

27、 retransmission interval)。设置邻节点请求报文的时间间隔,限制邻节点请求报文的发送频率。以毫秒为单位。,可选项字段,包含可选参数,在第一个选项(代码为1)中包含有源链路层地址。 第二个选项(代码5)指出该链路的MTU的大小。 最后一个选项定义了该链路的网络前缀。链路可拥有多个前缀,所以可以包含多个这种类型的选项。路由器通告网络前缀有两个作用。 指示一个IP地址是否在接收方的本地链路上; 用于地址的自动配置。 链路网络前缀选项中包含一些子字段。,链路网络前缀选项中包含的子字段,L比特,在链路(On-Link)标志位。L=1时,表示此前缀用于确定一个地址是否在接收方的链路上

28、;L=0时,表示发送方没有就前缀是否可用于在链路确定发表意见。 A 比特,自治地址(Autonomous)配置标志。A=1时,说明该前缀可以用于IPv6地址自动配置 有效生存时间(Valid Lifetime),前缀的有效时间。等于0 xFFFFFFFF时,有效生存时间是无限的。 推荐生存时间(Preferred Lifetime),仅用于地址自动配置。表示前缀过时之前的剩余秒数。过时的前缀虽然在有效生存时间的剩余时间里还可以使用,但主机应该逐渐不再使用它。等于0 xFFFFFFFF时,推荐生存时间是无限的,节点X发送路由器请求报文发现路由器,新连接了主机X,X立即发送路由器请求报文,主机就能

29、够主动获取路由器通告报文。,X的IPv6地址为FE80:0260: 8C14:9252 X的链路层地址为02-60-8C-14-92-52,封装在IPv6分组中的ICMPv6路由器请求报文,选项代码=1,选项数据长度=1,可选项(源节点X链路层地址:02-60-8C-14-92-52),路由器RA发送路由器通告报文通告自己的存在,封装在IPv6分组中的ICMPv6路由器通告报文,选项代码=5,选项数据长度=1,可选项(MTU大小),选项代码=1,选项数据长度=1,可选项(源链路层地址,路由器的一个接口的链路层地址),3. 重定向报文,对希望发送报文的主机来说,第一跳的选取是非常重要的。 为了正

30、确选择第一跳,主机可以发送路由器请求报文,并接收路由器通告报文,然后根据获取的路由器信息来选取第一跳。 这种方式,主机用来发现下一跳的过程简单,主机虽然能够找到路由器,但不能保证这个路由器就是到达特定目的主机的最佳第一跳路由器。,IPv6分组选中的路由器RA并非是最佳第一跳路由器,路由器RA向主机A发送重定向报文,封装在IPv6分组中的ICMPv6路由器重定向报文,选项代码=2,选项数据长度=1,可选项(目的链路层地址: 路由器RB的接口链路层地址),选项代码=4,保留=0,选项数据长度,各个字段的含义,类型字段,其值为137。 代码字段,必须置为0。 校验和字段,保存整个ICMPv6报文的检

31、验和。 保留字段,保留不用,其值必须等于0。 目的地址字段,到达目的主机的最佳第一跳路由器的IPv6地址。 被重定向的目的地址字段,表示被重定向的原IPv6分组的目的地址。本例中,是目的主机B的IPv6地址。 可选项字段,包含了一些可选参数。 第一个选项是目的链路层地址,在本例中是路由器RB的地址。由路由器RA 向源主机A提供这个信息。 另一个选项代码为4,把重定向的原IPv6分组的一部份字段内容设置在这里,以便源主机A利用这些信息,5.5.3 替代ARP,替代ARP使用邻节点请求、邻节点通告报文和被请求节点多播地址(ff02:1:ffxx:xxxx)的组合。,1、使用邻节点请求、邻节点通告报

32、文和被请求节点多播地址,发现本地链路节点的链路层地址,由单播/任播地址形成被请求节点多播地址,2001:410:0:1:1:A,FF02:1:FF01:000A,以太网上的多播映射,2、邻节点请求和邻节点通告报文的其它应用,验证邻节点可达性:邻节点请求报文使用单播地址,而不使用被请求节点多播地址。 如果请求报文的发送者收到了目的主机回送的通告报文,它认为目的主机是可达的。 否则它认为目的主机不能到达。 更新邻节点缓存:当一个节点改变链路层地址后,使用所有节点多播地址FF02:1,主动发送“邻节点通告”报文,通告自己的链路层地址信息。本地链路上节点的邻节点缓存用新的链路层地址更新。,5.5.4

33、无状态地址自动配置,根据路由器在本地链路上通告的前缀信息,本地链路上的节点配置单播IPv6地址。 无状态自动配置原理: 根据物理地址,节点计算出自己的Interface ID; 确定IPv6网络前缀地址:向最近的路由器询问(路由器请求报文)网络前缀。,1、IPv6的无状态地址自动配置步骤,RFC 2462定义了无状态自动配置的实现过程。 生成临时本地链路地址。主机根据本地链路的64比特网络前缀(FE80:/64),与EUI-64本地接口地址标识生成临时本地链路地址。 验证本地链路地址在本地链路上的唯一性。发送邻节点请求报文和被请求节点多播地址进行重复地址探测。 如果接收到邻节点通告报文,表明已

34、经有节点在使用该临时本地链路地址,则地址自动配置停止; 如果没有收到邻节点通告报文,表明临时本地链路地址是唯一的,可以使用该本地链路地址。, 获得需要配置的信息。主机节点发送路由器请求报文,请求路由器送路由器通告报文。 路由器通告报文包括主机节点配置需要的一些信息,例如链路前缀、链路MTU、默认路由、是否使用地址自动配置,以及由地址字段配置协议所创建地址的有效期与优先级等。 默认情况下,最多能发送3个路由器请求报文。, 配置。当主机接收到路由器通告报文时,主机根据报文内容来设置跳数限制字段、可到达时间、重传定时器和MTU。 如果存在前缀可选项,则进行下列处理: 若“在链路”L标志为1,将报文中

35、的前缀添加到前缀列表中; 若“自治地址”A标志为1,则用前缀和修改的EUI-64接口标识生成一个临时地址,通过重复地址检测来确定地址的唯一性。 如果路由器通告报文的“受管理的地址配置” M标志置1,则用有状态地址字段配置协议获取其它地址。 如果路由器通告报文的“其它有状态配置”O标志置1,则用有状态地址自动配置协议获取其它的配置参数。,2、前缀通告,前缀通告是无状态自动配置中的初始机制。 前缀通告机制中, IPv6路由器使用所有节点多播地址ff02:1/128,在本地链路上周期性(5分钟)地发送路由器通告报文(134)。 只有IPv6路由器能在本地链路上通告前缀,禁止主机通告前缀。,前缀通告工

36、作机制,节点A,路由器A,本地链路,ICMPv6(类型=134)路由通告报文 源地址:本地链路地址(路由器A) 目的地址:所有节点多播地址(FF02:1/128) 前缀:2001:410:0:1:/64 生存期:无限期(有效/首选),节点B,FE80:250:3EFF:FEE4:4C00,前缀为2001:410:0:1:/64,路由器A周期性地发送路由通告报文,节点A和B可以配置它们的IPv6地址,主机向本地链路上的所有路由器(多播地址ff02: 2/128) 发送一条路由请求报文(133),要求路由器通告 本地链路上的路由器接收到这个路由器请求报文后,使用路由器通告报文(134),携带”所有节点多播地址”ff02:1进行应答。,路由器请求通告工作机制,节点A,路由器A,本地链路,ICMPv6(类型=133)路由请求报文 源地址:节点A的本地链路地址(FE80:/10) 目的地址:所有路由器多播地址(FF02:2),ICMPv6(类型=134)路由通告报文 源地址:路由器A的本地链路地址 目的地址:所有节点多播地址(FF02:1) 前缀:2001:410:0:1:/64 生存期:无限期,前缀为2001:410:0:1:/64,FE80:250:3EFF:FEE4:4C00,3. 重复地址探测DAD,DAD是无状态自动配置和节点启动时的一个NDP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论