一 IPV6 基本头格式

Version(版本号) :长度为4bit  对于IPV6 该字段为6(0110)

Traffic Class(业务流类别):长度为8bit 业务流类别又称通信流类别,指明了该包提供了某种区分服务,默认值是全0

Flow Lable(流标签):长度为20bit,用于标识属于同一业务流的包,一个节点可以可以同时作为多个业务流的发送源,流标签和流地址唯一标识一条业务流

PlayLoad Length(净荷负载):长度为16bit ,单位为字节长度,该长度包括了IPV6扩展头的长度

Next Header(下一报头):长度为8bit,这个字段指出了ipv6基本报头之后所跟的下一个扩展报头字段中的协议类型,与ipv4字段类似可以指出上层协议是tcp还是udp 同时还可以指明是否存在 ipv6扩展头

Next Header 值对应扩展类型或者协议如下

下一个报头值

对应扩展头类型

0

逐跳选线扩展报头

6

上层协议是TCP

17

上层协议是UDP

43

路由扩展报头

44

分片扩展报头

50

封装安全有效载荷扩展报头

51

认证扩展报头

58

ICMPv6信息报文扩展报头

59

无下一个扩展报头

60

目的选项扩展报头

HOP Limit(极限跳):长度8bit,每当一个节点对报进行转发时该字段就会被减掉1,如果该字段达到0就会被丢弃,类似与v4中的ttl

Source Address(源地址):128bit 的源地址

Destination Address(目的地址):128bit 的目的地址

二 IPV6的扩展头部

多个扩展报头的顺序:

基本报头 ipv6 header

逐跳选项报头 Hop-by-Hop Options header

目的选项扩展报头 Destination Options header(note1)

路由扩展报头 Routing header

分片扩展报头 Fragment header

认证报头 Authentication header(note2)

封装安全有效净荷报头 Encapsulating security payload header(note2)

目的选项扩展报头 Destination option header(note3)

上层头 upper-layer header

Note1 :报被传递时第一个目的地址将会出现在基本头中的Destination Address 中 后续的目的地址将会出现在Routing Header 中

Note2:额外的关于认证和封装安全扩展头可参见RFC-2406

Note3:该选项被目的包填充

2.1 Hop-by-Hop Options header

主要用于为传递路径上的每次跳转制定发送参数,传递路径上的每台中间节点都要读取并处理该字段,扩展头的格式:

Next Header(下一个报头值):长度 8bit,与ipv6基本头格式中的字段一致

Hdr Ext Len(报头扩展长度):长度8bit 是指逐跳选项扩展报头的长度,长度不包括Next Header 长度

Options(选项):

选项字段格式:

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- - - - - - - - -

| Option Type | Opt Data Len | Option Data

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- - - - - - - - -

Option Type(选项类型):长度8bit,标识这个选项的类型,用于确定相关节点对该选项的处理方法RFC2640 中规定,在选项类型字段中,最高两位标识了不能识别该选项类型时应该如何处理这个选项

00:跳过该选项

01:丢弃数据包 不通知发送方

10:丢弃数据包,不管数据包的目的地址否为一个组播地址,都向发送方发出一个icmpv6报文通知对方

11:丢弃数据包,不管数据包的目的地址不是为一个组播地址,都向发送方发出一个icmpv6参数问题的报文

Opt Data Len(选项数据长度):长度8bit

Option Data(选项数据):Option Type最高第三位标识通向目的路径中选项数据是否可以改变,0:选项数据不能改变,1:选项数据可以改变

2.2 Routing Header

选路扩展报头又称路由选择报头或者源路径选项报头,通过运用选项报头可以实现指定中间节点到达目的地址

报头格式:

Next Header(下一个报文头):和其他一致 不做说明

Hdr Ext Len(扩展报头长度):长度8bit 是指逐跳选项扩展报头的长度,长度不包括Next Header 长度

Routing Type(路由类型):长度8bit 路由类型是指特定的路由头变量,目前路由类型只定义了0类型它包含了报文需要经过中间路由器的IP地址

Segment Left(段剩余):指在到达最终目标之前还需要经过的中间条数

2.3  Fragment header

分片报头,用于IPv6 数据包的拆分和重组,在IPV4中 中间路由器会自动对大的数据包进行拆分,而在ipv6中路由器不对过大的数据包进行拆分,分片工作由发送报文源节点完成。

格式:

Next Header(下一个报文头):长度8bit 用于标识“原始报文”中可分片的初始报头类型

Res1(保留1):长度8bit,初始化为0 接收方不处理

Fragment Offset(分段偏移):长度13bit 以64bit 为单位,用于指定该报头后面数据报文片段起始字节在报文中所处的位置

Res2(保留2):长度:2bit 初始化为0 接收方不处理

M:长度1bit M=1 表示后面还有分片,M=0 则标识最后一个分片

Identificaion:长度:32bit 分段标识 和v4类似

2.4 Authentication header(RFC2402)

要保证IPv6数据包或者IPv6其他报头中的部分字段的值在经过IPv6网络传输后不会发生改变,认证报头是最佳解决方案。

扩展报头格式:

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| Next Header | Payload Len | RESERVED                                      |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| Security Parameters Index (SPI)                                                    |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

| Sequence Number Field                                                                 |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

|                                                                                                         |

+ Authentication Data (variable)                                                       |

|                                                                                                         |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Next Header(下一个报头值):长度8bit 只是在认证AH之后下一个有效载荷的类型

Payload(载荷长度):长度8bit 认证头总长度(以32bit为单位)

RESERVED(保留位):长度 16bit

SPI(安全参数索引):长度32bit,其值为任意32位数值

Sequence Number Field(序列号):长度32bit 是一个单调递增无符号计数值

Authentication Data(认证数据):变长 认证数据

2.5 Destination Option Header

该报头是针对目的地址的可选信息,只有目的节点才处理选项报头

格式:

Next Header(下一个报头):长度8bit 用来标识紧跟Destination Option Header下一个报头类型,和IPV4 协议字段的值一样

Hdr Ext Len(扩展报头长度):长度8bit 是指逐跳选项扩展报头的长度,长度不包括Next Header 长度

Option(选项):和Hop-by-Hop Options header中的选项一致

2.6 Encapsulating security payload header(参见RFC2406)

提供几个ipv6的数据包供学习参看

https://github.com/luguifang/protocol-pcap

IPv6 标准协议(RFC-2460)相关推荐

  1. 2020-01-14 IP/TCP/UDP 对应的RFC编号

    Networking Protocol Documents IPv4 specification (RFC 791) IPv6 specification (RFC 2460) TCP/UDP spe ...

  2. Internet Protocol Version 6 (IPv6) / IP Next Generation (IPng)

    The TCP/IP Guide - Internet Protocol Version 6 (IPv6) / IP Next Generation (IPng)http://www.tcpipgui ...

  3. NAT会话穿越应用程序(STUN)(RFC-5389)

    RFC文档链接 摘要 NAT会话穿越应用程序 (STUN) 是一种协议,在处理网络地址转换(Network Address Translator, NAT)穿越时充当其他协议的工具.终端可以使用它来确 ...

  4. 【NDN IoT】Challenges in IoT Networking via TCP/IP Architecture 全文翻译

    Challenges in IoT Networking via TCP/IP Architecture 在TCP/IP体系结构下物联网络存在的挑战 Wentao Shang              ...

  5. 《IPv6技术精要》一2.4 扩展报头

    本节书摘来自异步社区<IPv6技术精要>一书中的第2章,第2.4节,作者[美]Rick Graziani,更多章节内容可以访问云栖社区"异步社区"公众号查看 2.4 扩 ...

  6. 我是如何查找RFC官方资料的

    目录 01.关于TCP协议头中保留位 02.Wireshark工具 03.RFC官方协议下载 01.关于TCP协议头中保留位 读者疑问: 部分读者对上一篇<TCP协议详解>中的保留字节和标 ...

  7. 《Linux高性能服务器编程》——2.7 IPv6头部结构

    2.7 IPv6头部结构 IPv6协议是网络层技术发展的必然趋势.它不仅解决了IPv4地址不够用的问题,还做了很大的改进.比如,增加了多播和流的功能,为网络上多媒体内容的质量提供精细的控制:引入自动配 ...

  8. 华为数通笔记-IPV6基础

    IPv6概述 IPv4现状 2011年2月3日,IANA(Internet Assigned Numbers Authority,因特网地址分配组织)宣布将其最后的468万个IPv4地址平均分配到全球 ...

  9. IPv6 Ready Logo 介绍

    全球IPv6 论坛(http://www.ipv6forum.com) IPv6 Ready Logo 测试认证包括一致性测试和互通性测试,其认证主要目的是保障IPv6设备和应用软件互联互通能力,为全 ...

最新文章

  1. Sublime Text 3 及Package Control 安装(附上一个3103可用的Key)
  2. 【Java】 5.8 继承和组合
  3. python进程数上限_python – 使用具有最大同时进程数的multipr...
  4. VTK:标签轮廓用法实战
  5. 专家谈个人用户保护自己网银安全
  6. 我国自主播放软件暴风影音挑落微软
  7. python正则匹配找到所有的浮点数_Python随笔17:Python正则表达式基础(4):贪婪匹配和最小匹配...
  8. java后台导出excel代码详细讲解,java基础面试笔试题
  9. 开发跨平台应用解决方案-uniapp 真心不错,支持一波
  10. 车辆及其应用的车载语音识别显示方法及系统与流程
  11. mysql truncate很慢_mysql truncate 的问题
  12. 深入浅出 CAS,很多想进阿里的倒在了这个知识点
  13. 让Fckeditor支持中文——解决“Error loading /fckeditor/fckstyles.xml ”
  14. HFSS之天线设计实例
  15. python多行注释报错_解决python多行注释引发缩进错误的问题
  16. 冉宝的leetcode笔记--每日一题 8月1日
  17. form-making爬坑笔记(jeecg项目替换表单设计器)
  18. 1.2. Container Overview
  19. android百度天气接口api接口,百度天气接口api
  20. 开源项目搭建私有物联网智能家居接入天猫精灵控制

热门文章

  1. MS计算界面相互作用
  2. 【知识点】python中类的相互调用
  3. 数据结构排序算法——交换排序(冒泡排序Bubble Sort)
  4. 渗透测试学习与实战阶段分析
  5. obs 源码解析笔记
  6. html5风车转圈,HTML5 风车特效
  7. nginx指定访问路径跳转至指定路径
  8. 「TLS」- 与 IE 有关的问题 @20210209
  9. java 在一个类中去调用另一个类中的对象数组
  10. I420到UYVY的转换