【网络协议】【IPv6】精讲IPv6报文格式!图解超赞超详细!!!

张开发
2026/4/11 7:23:14 15 分钟阅读

分享文章

【网络协议】【IPv6】精讲IPv6报文格式!图解超赞超详细!!!
1. 【精讲网络通信协议】专栏会持续更新中.....欢迎大家订阅目录1. IP协议的数据传递方式2. 互联网协议3. IPv6报文结构概览4. IPv6数据报文格式5. IPv6基本报头的简化之处与IPv4对比6. IPv6扩展报头6.1. 工作原理6.2. 常见的扩展报头类型6.3. 处理顺序7. 一个完整的IPv6报文示例总结IPv6报文的核心优势1. IP协议的数据传递方式当发送方发送数据时数据被分成一系列数据报并且每个数据报都被分配一个IP地址。这个IP地址标识了该数据报的源和目的地这样路由器就可以将数据报从一个网络节点传递到另一个网络节点。在传输过程中每个数据报都被分成两个部分头部和数据部分。头部包含了源IP地址、目的IP地址和其他必要的信息如数据报的长度和类型等。数据部分则包含实际的数据内容。当数据报到达目的地时它们将被重新组装成完整的数据然后将其传递给目的应用程序。整个过程中IP协议确保数据的可靠性和准确性以便数据能够在网络中正确地传输。2. 互联网协议IPv4和IPv6都是互联网协议用于在网络上传输数据。IPv4是互联网上使用最广泛的协议但由于其地址空间的限制IPv6被设计为IPv4的后继协议。IPv4使用32位地址而IPv6使用128位地址。这意味着IPv6可以提供比IPv4更大的地址空间从而支持更多的设备和更多的互联网连接。IPv6还提供了更好的安全性和性能因为它使用IPsec协议来提供端到端的加密和认证并提供了更好的路由和多播支持。虽然IPv4仍然是互联网上使用最广泛的协议但IPv6正在逐渐取代它并成为未来互联网的主要协议。3. IPv6报文结构概览一个IPv6报文主要由两大块组成IPv6基本报头扩展报头可选可以有多个上层协议数据单元下图清晰地展示了IPv6报文的整体结构4. IPv6数据报文格式IPv6字段简要说明中文名英文名长度 bit位解释版本Version4IP 协议版本号固定为 6通信类型Traffic Class8类似于 IPv4 中的 服务类型(TOS)流标签Flow Label20识别某些需要特别处理的分组载荷长度Payload Length16类似于 IPv4 中的 总长度(Total Length)区别在于不含基本首部下一头部Next Header8类似于 IPv4 中的 协议(Protocol)跳数限制Hop Limit8类似于 IPv4 中的 生存时间(TTL)源地址Source Address128源 IPv6 地址目的地址Destination Address128目的 IPv6 地址扩展首部Extension Header可变可选择继续使用 IPv4 中首部部分详见下表数据Data报文数据部分先后顺序扩展首部说明1逐跳选项针对路由器中的各种信息2目标选项针对目标端的各种附加信息3路由要访问的路由器列表4分段数据报分段的管理5认证验证发送方身份6加密的安全负荷信息加密IPv6字段细致说明版本(version) 占4位指明协议版本IPv6该字段为6。通信量类(traffic class) 占8位区别不同的IPv6数据报的类别或优先级。流标号(flow label) 占20位。IPv6的一个新的机制是支持资源预分配并且运行路由器把每一个数据报与一个给定的资源分配相联系。所谓“流”就是互联网上从特定源点到特定终点(单播或多播)的一系列数据报(如实时音频或视频传输)而这个“流”所经过的路径上的路由器都保证指明的服务质量。所有属于同一个流的数据报都具有同样的流标号。因此流标号对于实时音频/视频数据的传送特别有用。对于传统的电子邮件或非实时数据。流标号没有用处置为0即可。有效载荷长度(payload length) 占16位指明IPv6数据报除基本首部以外的字节数(所有扩展首部都算在有效载荷之内)。下一个首部占8位相当于IPv4的协议字段或可选字段。当IPv6数据报没有扩展首部时下一个首部字段的作用和IPv4的协议字段一样它的值指出了基本首部后面的数据应交付给IP上面的哪一个高层协议(如6表示TCP17表示UDP)。当出现扩展首部时下一个首部字段的值就标识后面第一个扩展首部的类型。跳数限制(hop limit) 占8位。用来防止数据报在网络中无限期地存在。源点在每个数据报发出时即设定某个跳数限制每个路由器在转发数据报时要先将跳数限制字段中的值减1。当跳数限制的值为零时就要丢弃这个数据报。源地址 占128位。是数据报的发送端的IP地址。目的地址 占128位是数据报的接收端的IP地址。5. IPv6基本报头的简化之处与IPv4对比移除了报头长度、标识、标志、片偏移 报头长度固定为40字节简化了处理。分片功能通过分片扩展报头实现。移除了报头校验和 依赖数据链路层和传输层如TCP、UDP进行校验减少了路由器处理开销。移除了选项字段 所有可选功能都由扩展报头实现使得基本报头更固定、处理更高效。6. IPv6扩展报头扩展报头是IPv6为了实现灵活性和可扩展性而引入的核心机制。6.1. 工作原理扩展报头通过基本报头中的“下一个报头”字段串联起来形成一个链式结构。处理规则是每个报头中的“下一个报头”字段指示紧跟着的下一个报头的类型。整个过程如上图所示直到最后一个报头指向真正的上层协议如TCP、UDP。6.2. 常见的扩展报头类型下一个报头值扩展报头类型功能描述0逐跳选项报头携带必须被路径上每一个路由器检查的信息。43路由报头类似于IPv4的松散源路由指定报文必须经过的中间节点。44分片报头当报文长度超过路径MTU时用于对报文进行分片和重组。50封装安全载荷用于IPsec提供加密和认证。51认证报头用于IPsec提供数据完整性和认证。58ICMPv6用于互联网控制消息协议版本6。6TCP指示上层协议为TCP。17UDP指示上层协议为UDP。6.3. 处理顺序当存在多个扩展报头时它们推荐的排列顺序如下IPv6基本报头 - 逐跳选项报头 - 路由报头 - 分片报头 - 认证报头 - 封装安全载荷 - 目的选项报头 - 上层协议TCP/UDP7. 一个完整的IPv6报文示例假设一个简单的TCP数据包没有扩展报头IPv6基本报头 (40字节)版本6流量类别0流标签0有效载荷长度40(假设TCP段长度为40字节)下一个报头6(代表TCP)跳数限制64源地址2001:db8::1目的地址2001:db8::2上层协议数据TCP报头 数据(40字节)总结IPv6报文的核心优势简化的固定报头 40字节固定长度去除了校验和、选项等字段提升了路由器的转发效率。层次化的扩展头 通过灵活的扩展报头链实现新功能无需修改基本报头结构未来兼容性极佳。原生支持QoS和安全 通过“流量类别”、“流标签”和IPsec扩展报头原生支持服务质量和安全传输。更好的寻址能力 128位的地址空间从根本上解决了IPv4地址枯竭的问题。理解IPv6报文结构是深入学习IPv6路由、安全和服务质量的基础。

更多文章