IPv6地址及其报文--2

IPv6

IPv6报文格式

在这里插入图片描述
在这里插入图片描述

IPv4报文结构说明

  • version-----指明IP版本号为4.这个字段长度为4位
  • Internet Header Length—指明在IPv4包头中以4字节为单位的块的数量。这个字段的长度是4位。因为一个IPv4报头的最小长度是20字节,所以IHL字段对的最小值为5.IPv4选项可以通过增加4字节来扩展最小的IPv4报头的长度。如果一个IPv4选项没有用完IPv4选项字段中所有的4个字节,剩下的字节将填充为0,以使得整个IPv4报头保持32位(4字节)的整数倍。当这个字段为最大值0xF时,IPv4报头包括了选项的最大长度是60(15×4)。
  • Type of service------指明了这个包在IPv4网络上通过路由器传输时,希望得到的服务类型。这个字段的长度为8位,它包含了优先、延迟、吞吐量和可靠性特征。
  • Total Length-----指明了IPv4包的全部长度(IPv4报头和IPv4有效载荷)并且不包括链路层的帧。这个字段的长度是16位,它标明了IPv4包的最大长度是65535字节。
  • Identification-----识别特殊的IPv4包。这个字段的长度是16位。识别字段在IPv4包的远端是可以选择的。如果IPv4包是分割开的,那么所有分片中将保留识别字段以便目的节点能够重新组装这些分片。
  • Flags-----标志用在分割处理时。这个字段的长度是3位,然而只有其中两位为当前使用所定义。有两个标志-----一个指明了IPv4包是否被分割,另一个指明了是否还有更多的分片在当前帧之后。
  • fragment offset------指明了分片相对于最初的IPv4有效载荷中偏移的位置。这个字段的长度是13位。
  • Time to Live-----指明了IPv4包在被丢弃之前能够通过的最大连接数。这个字段的长度是8位。生存期字段被用来作为时间计数器,根据消耗的TTL一个IPv4路由器确定了IPv4包向前传送要求的必要时间(秒)。q当TTL等于0时一个ICMP超时( Time Expired)报文将被传送到源IPv4地址,并且这个包会被丢弃。
  • Protocol------指明了高层协议。这个字段是8位。例如TCp使用的协议为6,UDP使用的协议为17,ICMP使用的协议时1.Protocol字段是用来把一个IPv4包进行多路分解到高层协议。
  • Header checksum------提供了只是对于IPv4头部的校验。这个字段的长度为16位。IPv4的有效载荷不包括这个校验计算作为有效载荷,他通常是包含自己的校验。每个IPv4节点接受到IPv4就检查其IPv4头部校验,如果校验检查失败就把这个IPv4包丢弃。当路由器向前传送一个IPv4包就一定会消耗TTL。因此在源站和目的站之间的每一跳,他头部校验都会被重新计算一次。
  • Source Address-------保存源主机的IPv4地址。32位
  • Destination Address-----保存目的端主机的IPv4地址。32位
  • Options——保存一个或者更多的IPv4选项。这个字段的长度是32位的倍数。如果IPv4的选项没有用到32位,必须将其填充到32位,以保持IPv4头是4字节块的整数倍,以便Internet Header Length字段对其进行说明。

IPv6报文结构说明

  • Version——4位用来指明IP的版本号其值是6。
  • Traffic Class-----指明了IPv6包的类型或者优先级。这个字段的长度为8.流量类型字段提供了与IPv4服务类型字段中相似的功能。
  • Flow label-------指明数据包是属于源站和目的站之间特殊对的包序列,要求中间路由器进行特殊处理。这个字段的长度为20位。流标志用于非默认性质的连接服务,例如有实时性需要的数据(声音和图像)对于默认路由器处理,流标志设置为0.在一个源站和目的站之间能有多种流量,由非零流标志区分。
  • Payload length-----指明IPv6有效载荷的长度。这个字段的长度为16位。有效流量载荷字段包括了扩展头和上层PDU。通过16位,一个IPv6的有效载荷最多有65535字节可以表示。对于有效载荷长度超过65535字节的,有效载荷字段长度字段就被设置成0,并且Jumbo Payload选项被用在逐跳选项(Hop-by-Hop Options)扩展头中。
  • Next Header-----指明了第一扩展报头或者高层UDPn (例如TCP,UDP或者ICMPv6)中的协议。这个字段的长度是8位。在标识一个在网络层之上的高层协议时,这个字段的值与IPv4协议字段中的值相同。
  • Hop limit------n 指明了IPv6包在被丢弃之前可以经过的最大的连接数。跳数限制相似于IPv4的 TTL字段,除了在TTL中没有历史的关连相对于包在路由器中排队的总计时间(秒)。当跳数等于0时,一个ICMPv6超时报文将被传送回源站点并且这包会被丢弃。
  • Source Address——存储源端主机的IPv6地址。这个字段的长度是128位。
  • Destination Address——存储当前目的站主机IPv6地址。这个字段的长度是128位。在大多数情况下,目的站地址是最终的目的站的地址。然而,如果一个路由扩展头存在,在源路由列表中目的地址也许被设置成下一个路由器接口。

IPv4和IPv6报头的区别

  • 版本:相同的字段只是版本号不同。
  • 网络头部长度:IPv6中去掉了,在IPv6中不包括一个报头长度字段,因为IPv6报头通常是固定的40字节。每个扩展报头也是固定长度,或者指明了自身的长度。
  • 服务类型:被IPv6中的流量类型代替
  • 总长:被IPv6的有效载荷长度字段代替,他只是指明了有效载荷的长度。识别分片标记,分片偏移从IPv6中去掉,分片信息不包括在IPv6头部中,它包含在一个分片扩展头中。
  • 生存期:被IPv6中的条数限制代替
  • 协议:被IPv6下一报头字段代替
  • 头部校验:在IPv6中被去掉。在IPv6中,bit级的对整个IPv6包的错误发现在链路层执行
  • 源地址:-----
  • 目的地址:----
  • 选项:IPv4的选项被IPv6的扩展头代替。

IPv6的扩展报头

IPv6将一些IP层的可选功能实现上层封装和基本IPv6头部之间的扩展头部中。

主要的扩展报头

  • 逐跳选项报头 Hop-by-Hop Options header
  • 目标选项报头(当存在路由报头时,用于中间目标) Destination Options header
  • 路由报头 Routing header
  • 片段报头 Fragment header
  • 身份验证报头 Authentication header
  • 封装安全有效载荷报头 Encapsulating Security Payload header
  • 目标选项报头(用于最终目标)

扩展报头结构

每一种扩展报头其实也有自己特定的协议号,

​ 例如:0 逐跳选项报头;6 TCP;17 UDP;41 封装IPv6报头;43 路由报头;44 分片报头;46 资源预留协议;50 封装安全载荷;51 验证报头;59 无下一报头;60 目的选项报头。每一个基本报头和扩展报头的protocol字段标识后面紧接的内容。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-x46KziyQ-1599209430249)(D:\桌面\图片3.png)]

在这里插入图片描述

IPv6技术过渡

1.双协议栈技术

扫描二维码关注公众号,回复: 11629521 查看本文章

2.隧道技术

3.网络地址转换

猜你喜欢

转载自blog.csdn.net/qq_43710889/article/details/108407531
今日推荐