IPv6(二)

简介: IPv6 协议基础

1. IPv6 的分组结构:

IPv6 包由 IPv6 基本包头(40 字节固定长度)、扩展包头和上层协议数据单元三部分组成。

1IPv6 的基本包头。

IPv6 包头长度固定为 40 字节,去掉了 IPv4 中一切可选项,只包括 8 个必要的字段。因此,尽管 IPv6 地址长度为 IPv4 的四倍,但 IPv6 包头长度仅为 IPv4 包头长度的两倍。基本头部的格式如图 3-18 所示。

image.png

各个字段具体如下。

版本号(Version):4 位,IP 协议版本号,值=6

● 通信类别(Traffic Class):8 位,指示 IPv6 数据流通信类别或优先级。功能类似于 IPv4 的服务类型(TOS)字段。

● 流标记(Flow Label):20 位,IPv6 新增字段,标记需要 IPv6 路由器特殊处理的数据流。该字段用于某些对连接的服务质量有特殊要求的通信,诸如音频或视频等实时数据传输。在 IPv6 中,同一信源和信宿之间可以有多种不同的数据流,彼此之间以非“0”流标记区分。如果不要求路由器做特殊处理,则该字段值置为“0”。

● 有效负荷长度(Payload Length):16 位负荷长度。有效负荷长度包括扩展头和上层 PDU16 位最多可表示 65535 字节负荷长度。超过这一字节数的负荷,该字段值置为“0”,使用扩展头逐个跳段(Hop-by-Hop)选项中的巨量负荷(Jumbo Payload)选项。

● 下一报头(Next Header):8 位,识别紧跟 IPv6 头后的包头类型,如扩展头(有的话)或某个传输层协议头(诸如 TCPUDP ICMPv61)。

● 跳限制(Hop Limit):8 位,类似于 IPv4 TTL(生命期)字段,用包在路由器之间的转发次数来限定包的生命期。包每经过一次转发,该字段减 1,减到 0 时就把这个包丢弃。

● 源地址(Source Address):128 位,发送方主机地址。

● 目标地址(Destination Address):128 位,在大多数情况下,目标地址即信宿地址。但如果存在路由扩展头的话,目的地址可能是发送方路由表中下一个路由器接口。

(2IPv6 的扩展头部。

IPv6 包头对原 IPv4 包头的一项重要改进是将所有可选字段移出 IPv6 包头,置于扩展头中。除 Hop-by-Hop 选项扩展头外,其他扩展头不受中转路由器检查或处理,从而提高路由器处理包含选项的 IPv6 分组的性能。

通常,一个典型的 IPv6 包,没有扩展头。仅当需要路由器或目的节点做某些特殊处理时,才由发送方添加一个或多个扩展头。与 IPv4 不同,IPv6 扩展头长度任意,不受 40 字节限制,以便于日后扩充新增选项,这一特征加上选项的处理方式,使得 IPv6 选项能得以真正的利用。为了提高处理选项头和传输层协议的性能,扩展头总是 8 字节长度的整数倍。

目前,RFC2460 中定义了以下 6 IPv6 扩展头:Hop-by-Hop(逐个跳段)选项包头、目的地选项包头、路由包头、分段包头、认证包头和 ESP 协议包头。

Hop-by-Hop 选项包头:包含分组传送过程中,每个路由器都必须检查和处理的特殊参数选项。其中的选项描述一个分组的某些特性或用于提供填充。这些选项具体如下。

Padl 选项(选项类型为 0),填充单字节。

PadN 选项(选项类型为 1),填充 2 个以上字节。

Jumbo Payload 选项(选项类型为 194),用于传送超大分组。使用 Jumbo Payload 选项时,分组有效载荷长度最大可达 4294967295 字节。负载长度超过 65535 字节的 IPv6 包称为“超大包”。

路由器警告选项(选项类型为 5),提醒路由器分组内容需要做特殊处理。路由器警告选项用于组播收听者发现和 RSVP(资源预定)协议。

② 目的地选项包头,指名需要被中间目的地或最终目的地检查的信息。有两种用法。

● 如果存在路由扩展头,则每一个中转路由器都要处理这些选项。

● 如果没有路由扩展头,则只有最终目的节点需要处理这些选项。

③ 路由包头。

类似于 IPv4 的松散源路由。IPv6 的源节点可以利用路由扩展包头指定一个松散源路由,即分组从信源到信宿需要经过的中转路由器列表。

④ 分段包头。

提供分段和重装服务。当分组大于链路最大传输单元(MTU)时,源节点负责对分组进行分段,并在分段扩展包头中提供重装信息。

⑤ 认证包头。

提供数据源认证、数据完整性检查和反重播保护。认证包头不提供数据加密服务,需要加密服务的数据包,可以结合使用 ESP 协议。

ESP 协议包头。

提供加密服务。

(3IPv6 数据包。

上层协议数据单元。上层数据单元即 PDU,全称为 Protocol Data UnitPDU 由传输头及其负载(如 ICMPv6 消息或 UDP 消息等)组成。而 IPv6 包有效负载则包括 IPv6a 扩展头和 PDU,通常所能允许的最大字节数为 65535 字节,大于该字节数的负载可通过使用扩展头中的 Jumbo Pay load 选项进行发送。

2. IPv6 地址的表示方法:

IPv6 地址有 3 种表示方法:冒号十六进制表示法(首选格式),由所有 32 个十六进制字符组成一个 IPv6 地址,是书写形式最长的表示方法;IPv6 地址的零压缩表示法,当 IPv6地址中有 0 值时的表示方法;内嵌 IPv4 IPv6 地址表示法。

1) 冒号十六进制表示法(首选表示法)。

冒号十六进制表示法(Colon Hexadecimal)是 IPv6 地址的完全形式,又称 IPv6 地址的首选表示法。这种方法用冒号将 128 位分割成 8 16 位的段,每段被转换成一个 4 位十六进制数,并用冒号隔开。也就是说,这种表示方法有 8 个字段,每个字段有 4 个十六进制数,

共有 32 个十六进制数。

格式为 XXXXXXXX

其中,X 代表十六进制数值。

例如,2254:cade:23ef:cdae:ad54:cda3:3340:bacd

(2) 零压缩表示法。

IP 地址中有 0 值时,有两种压缩表示法。这两种方法可以分别使用,也可以同时使用。

① 一种零压缩表示法。

若在一个以冒号十六进制表示法表示的 IPv6 地址中有多个连续字段的值都是 0,这些0 可以简记为“::”,表示有多组 16 位零。这种零压缩法又称为双冒号法(Double Colon)。“::”只能在一个地址中出现—次,可用于压缩一个地址中的前导、末尾或相邻的 16 位零。

例如,IP 地址 ace5:1:0:0:0:0:0:36cd,可以表示为 ace5:1::36cd

注意:若 IPv6 地址是一个全为 1 的地址,则不能压缩。

② 第二种零压缩表示法。

IPv6 地址中存在一个或多个前导 0 16 位十六进制字段时,可以使用 16 位字段的前导压缩法,即第二种零压缩表示法。用这种方法表示 IPv6 地址时,每个字段的前导 0可以简单去除,以缩短 IPv6 地址的书写长度。但是,如果 16 位字段的每个十六进制数都是 0,则至少要保留一个 0

例如,IPv6 地址 0000:0000:0000:0000:0000:0000:0000:0000,可表示为 0:0:0:0:0:0:0:0

IPv6 地址 0000:0000:0000:0000:0000:0000:0000:0001,可表示为 0:0:0:0:0:0:0:1

③ 两种压缩表示法的结合。

将两种零压缩表示法相结合,即同时压缩连续的 0 16 位字段和压缩 16 位字段中的前导 0,可以缩短 IPv6 地址的书写长度。

例如,IPv6 地址 0000:0000:0000:0000:0000:0000:0000:0000

可表示为:::IPv6 地址 0000:0000:0000:0000:0000:0000:0000:0001

可表示为::1

相关文章
|
7月前
|
网络架构
|
1月前
|
网络协议 安全 数据挖掘
IPv6与IPv4有何不同
【10月更文挑战第26天】IPv6与IPv4相比,具有更大的地址空间、更小的路由表、增强的组播支持、自动配置支持和更高的安全性。IPv6地址长度为128位,几乎无限的地址资源解决了IPv4地址枯竭的问题;聚类原则减少了路由表大小,加快数据转发速度;自动配置简化了网络管理;加密技术提升了网络安全性。企业迁移到IPv6可以确保未来网络的可持续发展,提高效率和安全性。
83 0
|
5月前
|
网络协议 安全 物联网
|
7月前
|
网络协议
IPv6可以用多久
IPv6可以用多久
274 0
|
7月前
|
网络协议 网络安全 数据安全/隐私保护
IPv4和IPv6有什么区别
IPv4和IPv6有什么区别
|
网络协议 安全 Unix
IPv4 + IPv6 = IPv10?是的,IPv10就是IPV4 + IPv6!
IPv4 + IPv6 = IPv10?是的,IPv10就是IPV4 + IPv6!
IPv4 + IPv6 = IPv10?是的,IPv10就是IPV4 + IPv6!
|
网络协议
移动 IPv6
移动 IP 协议设计用来允许网络节点在从一个接入点移动到另一个接入点时维持它们与远程端节点的IP联通性。移动IP协议主要是为无线设备设计的,虽然它能在任何有线技术上使用。
143 0
|
网络协议 安全 数据挖掘
IPv6
IPv6地址和简介
386 0
|
网络协议
什么是IPv6?
IPv6是英文“Internet Protocol Version 6”(互联网协议第6版)的缩写,是互联网工程任务组(IETF)设计的用于替代IPv4的下一代IP协议,其地址数量号称可以为全世界的每一粒沙子编上一个地址
170 0
|
Web App开发 监控 网络协议
你好啊 IPv6
介绍两条通往IPv6世界的捷径。
1649 0