1.什么是IPV6IPv6Internet Protocol Version 6互联网协议版本6是网络层协议的第二代标准协议也被称为IPngIP Next Generation下一代互联网协议它是IETFInternet Engineering Task Force互联网工程任务组设计的一套规范是IPv4的升级版本。IPv6和IPv4之间最显著的区别为IP地址的长度从32比特增加到128比特。2.为什么要使用IPV6——IPV4的不足3.为什么要使用IPV6——IPV6的优势4.IPV4与IPV6报头的格式比较1.IPV4报文格式IPv4报文的最大长度是​​65,535字节​​这个长度是由IP报文中的​​16位总长度​​字段决定的下图为IPv4报文的字段说明​​版本(Version)​​占用​​4比特位​​表示IP协议的版本号IPv4的值为4。​​首部长度(Internet Header Length)​​占用4比特位表示IP首部的长度首部长度说明首部有多少32位字(4字节也就是说单位为4字节)。这个字段的最小值是5(二进制0101)相当于5*420字节最大十进制值是15相当于15*460字节​​服务类型(Type of ServiceTOS)​​占用8比特位表示IP报文的服务类型用于指定QoS(Quality of Service)和流量控制等参数。​​总长度(Total Length)​​占用16比特位表示整个IP数据报的长度包括IP首部和数据部分单位为字节。这个字段的最小值是2020字节首部0字节数据最大值是2^16-165,535。​​标识(Identification)​​占用16比特位这个字段主要被用来唯一地标识一个报文的所有分片因为分片不一定按序到达所以在重组时需要知道分片所属的报文。每产生一个数据报计数器加1并赋值给此字段。​​标志(Flags)​​占用3比特位用于标识IP分片的状态。位0保留必须为0位1禁止分片Don’t FragmentDF当DF0时才允许分片位2更多分片More FragmentMFMF1代表后面还有分片MF0 代表已经是最后一个分片。​​分片偏移(Fragment Offset)​​占用13比特位用于表示分片相对于原始数据报的偏移量。​​生存时间(Time to Live)​​占用8比特位表示数据报在网络中最多可以被经过的路由器数量用于防止数据报在网络中无限循环。​​协议(Protocol)​​占用8比特位表示数据报中的数据部分使用的协议类型例如TCP、UDP、ICMP等。​​校验和(Header Checksum)​​占用16比特位用于检测IP头部在传输过程中是否出现了错误。​​源地址(Source Address)​​占用32比特位表示数据报的发送者IP地址。​​目标地址(Destination Address)​​占用32比特位表示数据报的接收者IP地址。​​选项(Options)​​附加的首部字段可选的跟在目的地址之后但这并不被经常使用从1到40个字节不等。如果首部长度大于5那么选项字段必然存在。2.IPV6报文格式​​版本号(Version)​​占用4比特位用于指示报文使用的IPv6协议版本号固定为6。​​流量类别(Traffic Class)​​占用8比特位用于区分不同的IPv6数据报的类别或优先级。​​流量标签(Flow Label)​​占用20比特位IPv6提出了流的抽象概念流就是因特网上从特定源点到特定终点单播或多播的一系列IPv6数据报如实时音视频数据的传送。所有属于同一个流的IPv6数据报都具有同样的流量标签相同的流量标签可进行同样的数据优先级设定。因此流标号对于实时音视频数据的传送特别有用对于传统的非实时数据流标号用处不大。​​负载长度(Payload Length)​​​​占用16比特位​​用于指示IPv6报文中载荷(Payload)的长度不包括IPv6头部的长度。​​下一个报头(Next Header)​​​​占用8比特位​​用于指示IPv6头部后面的下一个报头类型如TCP报头、UDP报头、ICMPv6报头等。​​跳数限制(Hop Limit)​​​​占用8比特位​​类似于IPv4中的生存时间(TTL)字段用于限制报文在网络中经过的最大跳数。​​源地址(Source Address)​​​​占用128比特位​​表示发送端的IPv6地址。​​目标地址(Destination Address)​​​​占用128比特位​​表示接收端的IPv6地址。2.5 IPv6 载荷长度​​关于 IPv6 有效载荷长度​​IPv6报文有效载荷长度主要由Payload Length字段决定Payload Length字段占用16比特位用于表示载荷Payload的长度即除去IPv6报头(固定为40字节)之外的部分。鉴于此字段为16比特其最大值为2^16 - 1即65,535字节。然而IPv6还支持一种叫做Jumbo Payload的选项。当使用这个选项时载荷长度可以通过一个名为 Jumbo Payload Option 的扩展报头表示该扩展报头中有一个32比特(4字节)的字段表示载荷长度。因此最大载荷长度可以达到2^32 - 1即4,294,967,295字节。尽管​​IPv6有效载荷​​最大长度可达到​​4294967295字节​​但其承载的传输层协议数据(如TCP、UDP)仍然受到IPv6网络中​​MTU的限制​​因此​​仍然需要遵循最大报文长度65,535字节的限制​​5.IPV6扩展报头IPV6的很多不支持的字段都可以通过IPV6的扩展包头进行不断扩展