计算机网络与通信第十二章IPv6技术.ppt

上传人:牧羊曲112 文档编号:6342849 上传时间:2023-10-18 格式:PPT 页数:47 大小:542.50KB
返回 下载 相关 举报
计算机网络与通信第十二章IPv6技术.ppt_第1页
第1页 / 共47页
计算机网络与通信第十二章IPv6技术.ppt_第2页
第2页 / 共47页
计算机网络与通信第十二章IPv6技术.ppt_第3页
第3页 / 共47页
计算机网络与通信第十二章IPv6技术.ppt_第4页
第4页 / 共47页
计算机网络与通信第十二章IPv6技术.ppt_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《计算机网络与通信第十二章IPv6技术.ppt》由会员分享,可在线阅读,更多相关《计算机网络与通信第十二章IPv6技术.ppt(47页珍藏版)》请在三一办公上搜索。

1、第十二章 新一代因特网标准IPv6,12.1 IPv6取代的IPv4的必然性12.2 IPv6的发展状况12.3 IPv44向IPv6的过渡技术12.4 IPv6报文结构12.5 ICMIPv612.6 IPv6地址12.7 IPv6数据通信的实现12.8 Linux下的IPv6防火墙12.9 IPv6应用开发,12.1 IPv6取代IPv4的必然性,web的出现导致了IP网的爆炸性的发展,IP网的用户迅速增加,IP地址空前紧张,由于IPv4只用32位二进制数来表示地址,地址空间很小,IP网将会因为地址空间的地址耗尽而无法继续发展。而IPv6不仅地址量巨大,而且有许多优良的特性,如IPv6的地

2、址量、安全性、服务质量、移动性等方面优势明显。采用IPv6的网络将比现有的网络更具扩展性、更安全,并更容易为用户提供质量服务。,12.2 IPv6的发展状况,目前FreeBSD、Solaris、Linux、UNIX上都已经有IPv6协议栈的实现,同时许多大厂商宣称将在产品中支持IPv6,如Cisco、Nortel Networks、Sun、Microsoft、华为等。,12.3 IPv4向IPv6的过渡技术,由于现有网络的存在,IPv6的网络建设必须首先要与IPv4兼容。在过渡的初期,Internet将由运行IPv4的“海洋”和运行IPv6的“小岛”组成。随着时间的推移,IPv4的海洋将会逐渐

3、变小,而IPv6的小岛将会越来越多,最终完全取代IPv4。在这个过程中,有两个问题需要考虑,一个是如何充分利用现有的IPv4资源,保护原来的利益。另一个就是实现方式应当尽可能的便利。目前解决过渡问题的基本技术主要有:双协议栈隧道技术地址转换技术NAT-PT,12.4 IPv6报文结构,IPv6数据包由一个IPv6报头、多个扩展报头和一个上层协议数据单元组成。,1、IPv6基本报头,IPv6基本报头也称之为固定报头。固定报头包含8个字段,总长度为40个字节。这8个字段分别为:版本、流量类型、流标签、有效载荷长度、下一个包头、跳限制、源IPv6地址、目的IPv6地址。,IPv6基本报头结构,IPv

4、6新字段,通信流类别(Traffic Class)该字段功能和IPv4中的服务类型功能类似,表示IPv6数据包的类或优先级。长度为8位。流标签(Flow Label)与IPv4相比,该字段是新增的。它用来表示这个数据包属于源节点和目标节点之间的一个特定数据包序列,它需要由中间IPv6路由器进行特殊处理。该字段长度为20位。,有效载荷长度(Payload Length)该字段表示IPv6数据包有效载荷的长度。有效载荷是指紧跟IPv6包头的数据包的其他部分(即扩展报头和上层协议数据单元)。该字段长度为16位。那么该字段只能表示最大长度为65535字节的有效载荷。如果有效载荷的长度超过这个值,该字段

5、会置0,而有效载荷的长度用逐跳选项扩展报头中的超大有效载荷选项来表示。关于逐跳选项扩展报头在后面将会提及。,下一个报头(Next Header)该字段定义第一个扩展报头(如果存在)的类型,或者上层协议数据单元中的协议类型。该字段长度为8位。跳限制(Hop Limit)该字段类似于IPv4中的Time to Live字段。它定义了IP数据包所能经过的最大跳数。,2.IPv6扩展报头,IPv6扩展报头是可能跟在基本IPv6报头后面的可选报头。为什么在IPv6中要设计扩展报头这种字段呢?在IPv4的报头中包含了所有的选项,因此每个中间路由器都必须检查这些选项是否存在,如果存在,就必须处理它们。这种设

6、计方法会降低路由器转发IPv4数据包的效率。为了解决这种矛盾,在IPv6中,相关选项被移到了扩展报头中。中间路由器就不需要处理每一个可能出现的选项(在IPv6中,每一个中间路由器必须处理唯一的扩展报头是逐跳选项扩展报头),这种处理方式提高了路由器处理数据包的速度,也提高了其转发性能。,下面是一些扩展报头:逐跳选项报头(Hop-by-Hop Options header)目标选项报头(Destination Options header)路由报头(Routing header)分段报头(Fragment header)认证报头(Authentication header)封装安全有效载荷报头(E

7、ncapsulating Security Payload header),从上面这张图大家可以看出,如果数据包中没有扩展报头,也就是说数据包只包括基本报头和上层协议单元,基本报头的下一个报头(Next Header)字段值指明上层协议类型。在上例中,基本报头的下一个报头字段值为6,说明上层协议为TCP;如果包括一个扩展报头,则基本报头的下一个报头(Next Header)字段值为扩展报头类型(在上例中,指明紧跟在基本报头后面的扩展报头为43,也就是路由扩展报头),扩展报头的下一个报头字段指明上层协议类型;以此类推,如果数据包中包括多个扩展报头,则每一个扩展报头的下一个报头指明紧跟着自己的扩展

8、报头的类型,最后一个扩展报头的下一个报头字段指明上层协议。,扩展报头排列,RFC2460建议IPv6报头之后的扩展报头按照如下顺序排列:,逐跳选项报头 目标选项报头(当存在路由报头时,用于中间目标)路由报头 分段报头 认证报头 封装安全有效载荷报头 目标选项报头(用于最终目标),3、上层协议数据单元它一般由上层协议包头和它的有效载荷构成,可以是一个ICMPv6报文、一个TCP报文或一个UDP报文。4、基本报头、扩展报头和上层协议的相互关系,12.5 ICMPv6,在IPv4中,Internet控制报文协议(ICMP)向源节点报告关于向目的地传输IP数据包的错误和信息。它为诊断、信息和管理目的定

9、义了一些消息,如:目的不可达、数据包超长、超时、回应请求和回应应答等。在IPv6中,ICMPv6除了提供ICMPv4常用的功能之外,还有其他的一些机制需要ICMPv6消息,诸如邻接点发现、无状态地址配置(包括重复地址检测)、路径MTU发现等等。,12.5.1 ICMPv6基本概念,ICMPv6报文分为两类:一类称之为差错报文,另一类为信息报文。差错报文用于报告在转发IPv6数据包过程中出现的错误。常见的ICMPv6的差错消息包括以下几种类型:目标不可达(Destination Unreachable)、数据包超长(Packet TooBig)、超时(Time Exceeded)和参数问题(Pa

10、rameter Problem)。信息报文提供诊断功能和附加的主机功能,比如多播侦听发现(MLD)和邻接点发现(ND)(将在后续章节中介绍)。常见的ICMPv6信息报文主要包括回送请求报文(Echo Request)和回送应答报文(Echo Reply)。,ICMPv6报文结构,在ICMPv6差错报文中,8位类型字段中的最高位都为0,ICMPv6信息报文的8位类型字段中的最高位都为1。因此对于ICMPv6差错报文的类型字段,其有效值范围为0127,而信息报文的类型字段有效值范围为128-255。,12.5.2 ICMPv6差错报文,ICMPv6差错报文有以下几种:,目标不可达 数据包超长 超时

11、 参数问题,12.5.3 ICMPv6信息报文,ICMPv6信息报文有很多,这里我们只介绍常用的两种:回送请求报文(Echo Request)和回送应答报文(Echo Reply)。回送请求回送应答报文机制提供了一个简单的诊断工具来协助发现和处理各种可达性问题。,1.回送请求报文,回送请求报文用于发送到目标节点,以使目标节点立即发回一个回送应答报文。回送请求报文的类型字段值为128,代码字段的值为0。标志符和序列号字段由发送方主机设置,用于将即将收到的回送应答报文与发送的回送请求报文进行匹配。,2.回送应答报文,当收到一个回送请求报文时,ICMPv6会用回送应答报文响应。回送应答报文的结构与回

12、送请求报文一致。回送应答报文的类型字段的值为129,代码字段的值为0。标志符和序列号字段的值被指为与回送请求报文中的相应字段一样的值。,12.5.4 几个应用,Ping“Ping”这个名字源于声纳定位操作。它通过发送一份ICMPv6回送请求报文给目的节点,并等待返回ICMPv6回送应答报文的应答,来测试另一节点是否可达。,2.Tracert,Tracert是另一个必不可少的网络诊断工具,它可以让用户看到IP数据包从一个节点到另一个节点所经过的路由。Tracert工作原理如下:Tracert发送一个跳限制为1的Echo Request给目的节点。处理该数据包的的第一个路由器将跳限制值减去1,丢弃

13、数据包,并发回一个超时报文,这样就得到了路径上的第一个路由器地址。Traced发送一个跳限制为2的Echo Request给目的节点。第一个路由器处理完后转发给第二个路由器,第二个路由器丢弃数据包(由于跳限制值的原因),发回一个超时报文,于是就得到了第二个路由器地址。执行类似过程,直到数据包能够到达目的节点,从而得到经过的路由。,Tracert工作过程,3.PMTU发现,所谓PMTU,是指路径最大传输单元,也就是在源节点和目标节点之间的路径上的任一链路所支持的最小链路MTU。换句话说就是路径上所有链路MTU的最小值。,路径MTU发现过程示意图,PMTU发现过程:,1)源节点使用MTU值为150

14、0字节向目的节点发送一个IPv6数据包。2)中间路由器A用ICMPv6数据包超长报文向源节点做应答,该报文中同时指定MTU值为1400字节。3)源节点用MTU值为1400字节向目的节点发送一个IPv6数据包。4)中间路由器B用ICMPv6数据包超长报文向源节点做应答,该报文中同时指定MTU值为1300。5)源节点用MTU值为1300字节向目的节点发送一个IPv6数据包。6)目的节点收到数据包。此后在它们之间发送的所有数据包使用1300字节作为MTU值。,12.6 IPv6地址,IPv6的引入,一个很重要的原因在于它解决了IP地址缺乏的问题。它有128位的地址长度,是IPv4的4倍。有资料曾经这

15、样说过:IPv6的128地址空间相当于为地球表面每平方米的面积提供了665 570 793 348 866 943 898 599(6.651023)个地址!当然,由于采用的编制方案,实际可用的地址并没有那么多,但是IPv6的地址空间仍然大的惊人。,12.6.1 IPv6地址表示方法,在RFC2373(IPv6 Addressing Architecture)中定义,IPv6地址有3种格式。首选格式、压缩表示和内嵌IPv4地址的IPv6地址表示。,1.首选格式 IPv6的128位地址是按照每16位划分为一段,每段被转换为一个4位十六进制数,并用冒号隔开。这种表示方法叫冒号十六进制表示法。如:2

16、001:0410:0000:0001:0000:0000:0000:45ff,2.压缩表示,我们发现上面这个IPv6地址中有好多0,有的甚至一段中都是0,表示起来比较麻烦,可以将不必要的0去掉。上述地址可以表示为:2001:410:0:1:0:0:0:45ff。这仍然比较麻烦,为了更方便书写,RFC2373中规定:当一个或多个连续的16比特为0时,这仍然比较麻烦,为了更方便书写,RFC2373中规定:当一个或多个连续的16比特为0字符时,为了缩短地址长度,用:(两个冒号)表示,但一个IPv6地址中只允许一个:。上述地址又可以表示为:2001:410:0:1:45ff 注意:使用压缩表示时,不能

17、将一个段内的有效的0也压缩掉。例如,不能把FF02:30:0:0:0:0:0:5压缩表示成FF02:3:5,而应该表示为FF02:30:5。,3.内嵌IPv4地址的IPv6地址,这其实是过渡机制中使用的一种特殊表示方法(前面提到过几种过渡机制)。在这种表示方法中,IPv6地址部分使用十六进制表示,而IPv4地址部分是十进制格式。有两种内嵌IPv4地址的IPv6地址。下面是这种表示方法的示例:0:0:0:0:0:或者:,地址前缀,在具体介绍这些地址类型之前,还是先来介绍决定这些IP地址类型的“地址前缀”(Format Prefix,FP)。顾名思义,地址前缀就是在地址的最前面那段数字。当然也属于

18、128位地址空间范围之中。这部分或者有固定的值,或者是路由或子网的标识。有一个不恰当的比喻,可以将其看作是类似于IPv4中的网络ID。其表示方法与IPv4中的CIDR表示方法一样,用“地址前缀长度”来表示。举一个前缀表示的示例:12AB:0:0:CD30:/60,12.6.2 IPv6地址分类,大家知道IPv4地址有单播、多播、广播等几种类型。与IPv4中地址分类方法相类似的是,IPv6地址也有不同种类型,包括:单播、多播和泛播(Anycast)。IPv6取消了广播类型。,1.单播地址,IPv6中的单播概念和IPv4中的单播概念是类似的,寻址到单播地址的数据包最终会被发送到一个唯一的接口。与I

19、Pv4单播地址不同的是,IPv6单播地址又分为可聚合全球单播地址未指定地址回返地址嵌有IPv4地址的IPv6地址链路本地地址和站点本地地址,2.多播地址,所谓多播,又称之为组播,是指一个源节点发送的单个数据包能被特定的多个目的节点 接收到。大家知道在IPv4中,组播地址的最高三位设为111。在IPv6网络中,组播地址也有特定的前缀来标识,其最高位前8位为1。,图12-14 组播地址结构,3.泛播地址,这是IPv6特有的地址类型,它用来标识一组网络接口(通常属于不同的节点)。目标地址是任播地址的数据包将发送给其中路由意义上最近的一个网络接口。适合于“One-to-One-of-Many”(一对组

20、中的一个)的通讯场合。接收方只需要是一组接口中的一个即可,如移动用户上网就需要因地理位置的不同,而接入离用户最近的一个接收站,这样才可以使移动用户在地理位置上不受太多的限制。,12.6.3 IPv6地址分配情况,图12-16 Internet注册机构,12.6.4 IPv6地址配置技术,了解了IPv6地址基本结构以后,下一个问题就是如何在路由器或主机上配置IPv6地址了。对于IPv4路由器而言,配置一个接口地址的动作为:配置一个地址再指定一个掩码即可。IPv6路由器地址配置方法基本类似:配置一个IPv6地址并指定一个前缀长度。这里重要的是IPv6不再有掩码的概念。IPv6地址配置技术有手工配置

21、和自动配置,自动配置又分为有状态自动配置与无状态自动配置。,1、手工地址配置就是网络管理员动手进行配置。2、重复地址检测IPv6重复地址检测以及后面提到的无状态地址配置、地址解析、路由器发现、重定向以及邻居不可达性检测均属于IPv6 ND协议的功能范畴。ND协议主要利用如下5个消息实现这些功能:Router SolicitationRouter AdvertisementNeighbor SolicitationNeighbor AdvertisementRedirect,图12-17 Neighbor Solicitation报文结构,图12-18 Neighbor Advertisemen

22、t报文结构,有状态地址自动配置和无状态地址自动配置,图12-19 MAC地址格式,图12-21 Router Solicitation报文结构,图12-20 由MAC地址转化而成的接口 ID,有状态地址自动配置和无状态地址自动配置,图12-22 Router Advertisement报文结构,图12-23 承载在Router Advertisement中的Prefix选项,12.7 IPv6数据通信的实现,IPv6数据通信基本思想与IPv4完全一致:即源节点始发的数据包中包含的目的地址域将在各沿途节点路由器作为被查找路由表以决定下一跳和发送接口的索引。所以,在第三层的观点上和IPv4一样,路

23、由表依然是最核心的数据结构。可能的路由来源有:链路层发现的路由静态配置动态路由协议发现,IPv6路由表项,Destination:1:PrefixLength:64NextHop:FE80:2E0:FCFF:FE06:7AE3 Preference:100Interface:Ethernet2/0 Protocol:RIPngState:Active Adv Cost:3,12.8 Linux下的IPv6防火墙,在IPv6网络中使用的是全局地址,而且只要它与IPv6网络连接起来便可以到达所有的IPv6内部网络结点。仅在Linux版本2.4+内核支持IPv6防火墙。,12.9 IPv6应用开发,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号