4.3 IPv6 (答案见原书 P182)
第4章 网络层
4.3 IPv6 (答案见原书 P182)
01. 下一代因特网核心协议 IPv6 的地址长度是 ( D )
题目原文
- 下一代因特网核心协议 IPv6 的地址长度是 ( )
A. 32 比特 B. 48 比特 C. 64 比特 D. 128 比特
正确答案:D
题目解析
- 考点分析: 本题考察IPv6协议最基本的特性——地址长度。
- 正确选项分析 (D. 128 比特):
- 为了解决IPv4地址耗尽的问题,IPv6设计的最核心的改变就是将地址长度从IPv4的32位扩展到了128位。
- 128位的地址空间极其巨大(
2^128
),理论上可以为地球上的每一粒沙子都分配一个IP地址,彻底解决了地址短缺问题。
- 错误选项分析:
- A. 32 比特:是IPv4的地址长度。
- B. 48 比特:是MAC地址的长度。
- C. 64 比特:是IPv6地址中通常用于接口标识符的部分的长度。
02. 与 IPv4 相比, IPv6( D )
题目原文
02. 与 IPv4 相比, IPv6( )
A. 采用 32 位 IP 地址
B. 增加了首部字段数量
C. 不提供 QoS 保障
D. 没有提供检验和字段
正确答案:D
题目解析
- 考点分析: 本题考察IPv6相对于IPv4的主要改进点。
- 正确选项分析 (D. 没有提供检验和字段):
- IPv4的首部中有一个**首部检验和(Header Checksum)**字段,每个路由器在转发IP包时都需要重新计算和校验这个值。
- 实践证明,数据链路层(如以太网)和传输层(如TCP/UDP)都有自己的差错校验机制,IP层的首部校验和显得有些冗余,并且每次重算会增加路由器的处理延迟。
- 因此,为了提高路由器的转发效率,IPv6取消了首部的检验和字段。
- 错误选项分析:
- A: IPv6采用128位地址。
- B: IPv6的基本首部(固定40字节)比IPv4的首部(固定20字节+可变部分)字段数量更少、更简化。IPv6通过扩展首部的机制来处理IPv4中不常用的选项,从而简化了基本首部的处理流程。
- C: IPv6通过首部中的**“通信类别(Traffic Class)”和“流标签(Flow Label)”**字段,增强了对服务质量(QoS)的保障能力,而不是不提供。
03. 一个 IPv6 地址为 1A22:120D:0000:0000:72A2:0000:0000:00C0,可以简化写成 ( C )
题目原文
03. 一个 IPv6 地址为 1A22:120D:0000:0000:72A2:0000:0000:00C0,可以简化写成 ( )
A. 1A22:120D::72A2:0000:0000:00C0 B. 1A22:120D::72A2:0:0:C0
C. 1A22:120D::72A2::C0 D. 1A22:120D:0:0:72A2::C0
正确答案:C
题目解析
- 考点分析: 本题考察IPv6地址的两种简化表示规则。
- 简化规则:
- 前导零省略: 每个16位的字段(域)中,可以省略开头的0。例如,
00C0
可以写成C0
,0000
可以写成0
。 - 双冒号压缩: 地址中出现的一串连续的、值为0的字段,可以用一对双冒号
::
来代替。注意: 为了保证地址的可还原性,一个IPv6地址中只能使用一次双冒号。
- 前导零省略: 每个16位的字段(域)中,可以省略开头的0。例如,
- 分析过程:
- 原始地址:
1A22:120D:0000:0000:72A2:0000:0000:00C0
- 应用规则1(前导零省略):
1A22:120D:0:0:72A2:0:0:C0
- 应用规则2(双冒号压缩):
- 地址中有两段连续的0字段:
...:0:0:...
和...:0:0:...
- 为了最大限度地压缩,我们应该选择最长的那一段连续的0进行压缩。
- 但本题中两段长度相同(都是两个0字段)。此时,压缩任意一段都可以。
- 压缩第一段
0:0
->1A22:120D::72A2:0:0:C0
(选项A是部分压缩,选项B是压缩后并应用前导零省略) - 压缩第二段
0:0
->1A22:120D:0:0:72A2::C0
(选项D)
- 地址中有两段连续的0字段:
- 原始地址:
- 【答案校对与分析】 您提供的答案是
C (1A22:120D::72A2::C0)
。这个表示法中使用了两次双冒号,是绝对错误的表示法,因为它无法被唯一地还原。- 我们来检查一下是否有其他可能。
- 如果原始地址是
1A22:120D:0000:0000:0000:72A2:0000:00C0
,那么最长的连续0字段有3个,压缩后是1A22:120D::72A2:0:C0
。 - 如果原始地址是
1A22:120D:72A2:0000:0000:0000:0000:00C0
,最长连续0有4个,压缩后是1A22:120D:72A2::C0
。 - 结论: 题目本身或答案C存在严重错误。根据题目给出的原始地址,B和D都是合法的、经过了两种规则简化的表示法(只是压缩了不同的段)。
04. 一个 IPv6 地址的简化写法为 8::D0:123:CDEF:89A,则其完整地址应该是 ( D )
题目原文
04. 一个 IPv6 地址的简化写法为 8::D0:123:CDEF:89A,则其完整地址应该是 ( )
A. 8000:0000:0000:0000:00D0:1230:CDEF:89A0
B. 0008:0000:0000:0000:00D0:0123:CDEF:89A0
C. 8000:0000:0000:0000:D000:1230:CDEF:89A0
D. 0008:0000:0000:0000:00D0:0123:CDEF:089A
正确答案:D
题目解析
- 考点分析: 本题是上一题的逆向操作,要求将简化地址还原为完整地址。
- 还原规则:
- 补全前导零: 将每个字段补齐到4个十六进制数字。
- 展开双冒号:
- 先数出地址中已有的字段数量。
- IPv6地址总共有8个字段。
- 用
8 - (已有字段数)
计算出双冒号::
代表的0字段的数量。 - 用计算出的数量的
0000
字段替换::
。
- 分析过程:
- 简化地址:
8::D0:123:CDEF:89A
- 第一步:补全前导零
8
->0008
D0
->00D0
123
->0123
CDEF
->CDEF
(已满4位)89A
->089A
- 补全后:
0008::00D0:0123:CDEF:089A
- 第二步:展开双冒号
- 已有的字段数:
0008
,00D0
,0123
,CDEF
,089A
,共5个。 - 需要补充的0字段数 =
8 - 5 = 3
个。 - 用3个
0000
替换::
。
- 已有的字段数:
- 最终完整地址:
0008:0000:0000:0000:00D0:0123:CDEF:089A
- 简化地址:
- 结论: 选项D与计算结果完全匹配。
05. 下列关于 IPv6 的描述中,错误的是 ( D )
题目原文
05. 下列关于 IPv6 的描述中,错误的是 ( )
A. IPv6 的首部长度是不可变的
B. IPv6 不允许在中间路由器进行分片
C. IPv6 采用了 16B 的地址,在可预见的将来不会用完
D. IPv6 使用了首部检验和来保证传输的正确性
正确答案:D
题目解析
- 考点分析: 本题与第2题考点相同,综合考察IPv6的特点。
- 错误选项分析 (D. IPv6 使用了首部检验和来保证传输的正确性):
- 这是错误的。为了简化路由器处理、提高转发效率,IPv6取消了IP层的首部检验和。差错校验的任务完全交由数据链路层和传输层来负责。
- 正确选项分析:
- A: 正确。IPv6的基本首部长度固定为40字节,这是其一大优点,便于硬件快速处理。
- B: 正确。IPv6实行**“端到端分片”策略。分片只能由源主机进行。中间路由器如果遇到无法转发的大包,会将其丢弃**,并发送一个ICMPv6“分组太大”的消息给源主机,由源主机负责分片重传。
- C: 正确。IPv6地址长度是128位,
128 / 8 = 16
字节 (B)。
06. 若一个路由器收到的 IPv6 数据报因太大而不能转发到链路上,则路由器将把该数据报 ( A )
题目原文
06. 若一个路由器收到的 IPv6 数据报因太大而不能转发到链路上,则路由器将把该数据报 ( )
A. 丢弃
B. 暂存
C. 分片
D. 转发至能支持该数据报的链路上
正确答案:A
题目解析
- 考点分析: 本题考察IPv6“禁止中间路由器分片”这一规则的具体行为。
- 正确选项分析 (A. 丢弃):
- 如上题所述,IPv6不允许中间路由器对数据报进行分片。
- 当路由器收到的一个IPv6数据报的大小超过了它要转发出去的下一跳链路的MTU(最大传输单元)时,该路由器会执行以下操作:
- 丢弃这个过大的数据报。
- 向发送该数据报的源主机发送一个ICMPv6“分组太大(Packet Too Big)” 的差错报文,报文中会包含下一跳链路的MTU值。
- 源主机收到此消息后,会根据这个MTU值对数据进行分片,然后重新发送。
- 错误选项分析:
- C: 分片是源主机的任务。
- B, D: 都不是IPv6规定的处理方式。
07. 【2023 统考真题】下列关于 IPv4 和 IPv6 的叙述中,正确的是 ( D )
I. IPv6 地址空间是 IPv4 地址空间的 96 倍
II. IPv4 首部和 IPv6 基本首部的长度均可变
III. IPv4 向 IPv6 过渡可以采用双协议栈和隧道技术
IV. IPv6 首部的 HopLimit 字段等价于 IPv4 首部的 TTL 字段
正确答案:D
题目解析
- 考点分析: 本题全面对比IPv4和IPv6的各项特性。
- 逐项分析:
- I. …地址空间是…96 倍: 错误。
- IPv4地址空间大小 =
2^32
。 - IPv6地址空间大小 =
2^128
。 - 倍数 =
2^128 / 2^32 = 2^(128-32) = 2^96
倍。是2
的96
次方倍,而不是96
倍,这是一个天文数字。
- IPv4地址空间大小 =
- II. …首部的长度均可变: 错误。
- IPv4首部长度是可变的(20字节固定 + 最多40字节选项)。
- IPv6的基本首部长度是固定的40字节。
- III. …过渡可以采用双协议栈和隧道技术: 正确。
- 双协议栈 (Dual Stack): 使主机或路由器同时运行IPv4和IPv6两个协议栈,可以根据目的地址类型选择使用哪个协议。
- 隧道技术 (Tunneling): 将IPv6数据报作为载荷封装在IPv4数据报中,以便在IPv4网络中传输。
- 这两种是主要的IPv4到IPv6的过渡技术。
- IV. IPv6 HopLimit 字段等价于 IPv4 TTL 字段: 正确。
- IPv4的生存时间(Time To Live, TTL) 字段,每经过一个路由器减1,减为0时数据报被丢弃,用于防止数据报在网络中无限循环。
- IPv6的跳数限制(Hop Limit) 字段功能与此完全相同,只是名称改变了。
- I. …地址空间是…96 倍: 错误。
- 组合判断: III 和 IV 是正确的。
4.3 IPv6 知识体系与考法总结
IPv6是为解决IPv4地址耗尽等一系列问题而设计的新一代网络层协议。虽然目前仍处于与IPv4共存的过渡阶段,但其重要性日益凸显。本节的考点非常集中,主要围绕IPv6相对于IPv4的核心改进展开,涉及地址表示、报头格式和基本工作机制。
知识体系梳理
本部分的知识体系可以概括为“一项核心改变”、“一个简化的首部”和“一套过渡机制”。
一、 一项核心改变:地址空间的扩展
这是IPv6诞生的最根本原因,也是最高频的考点。
-
地址长度 (必考):
- IPv6: 128位 (16字节)。
- IPv4: 32位 (4字节)。
- 地址空间对比: IPv6的地址空间是IPv4的
2^96
倍,而非96倍。
-
地址表示法 (必考):
- 格式: 采用冒号十六进制表示法,共8个字段,每个字段16位(4个十六进制数)。
- 示例:
2001:0DB8:85A3:0000:0000:8A2E:0370:7334
- 示例:
- 简化规则 (高频计算题):
- 前导零省略: 每个字段内部开头的0可以省略。
0DB8 -> DB8
,0000 -> 0
。 - 双冒号压缩: 一段连续的全0字段可以用
::
代替。一个地址中只能使用一次::
。
- 前导零省略: 每个字段内部开头的0可以省略。
- 格式: 采用冒号十六进制表示法,共8个字段,每个字段16位(4个十六进制数)。
二、 一个简化的首部 (为了提高效率)
IPv6在设计时吸取了IPv4的经验教训,对IP报头进行了大幅简化和优化,以提高路由器的转发效率。
特性 | IPv4 首部 | IPv6 基本首部 | 目的与原因 |
---|---|---|---|
长度 | 可变 (20-60字节) | 固定 (40字节) | 固定长度便于硬件快速处理,无需检查首部长度字段。 |
检验和 | 有 (Header Checksum) | 无 | 减少路由器处理延迟。差错校验由链路层和传输层保证。 |
分片与重组 | 中间路由器和源主机都可以分片 | 只允许源主机分片 | 简化路由器工作,提高转发效率。路由器遇大包则丢弃并返回ICMPv6消息。 |
选项处理 | 选项字段在基本首部内,导致长度可变 | 采用扩展首部机制 | 将不常用的选项功能移出基本首部,使所有路由器都能高效处理基本首部。 |
TTL vs. Hop Limit | 生存时间 (Time To Live) | 跳数限制 (Hop Limit) | 功能完全相同(每跳减1,防环路),只是改了名字。 |
QoS支持 | 通过服务类型(ToS)字段,支持有限 | 通过**通信类别(Traffic Class)和流标签(Flow Label)**字段,增强了QoS支持。 | 更好地支持实时音视频等需要服务质量保障的应用。 |
三、 一套过渡机制 (如何与IPv4共存)
由于不可能在一夜之间将整个互联网从IPv4升级到IPv6,因此设计了多种平滑的过渡技术。
- 双协议栈 (Dual Stack):
- 原理: 网络节点(主机或路由器)同时安装和运行IPv4和IPv6两个协议栈。
- 工作方式: 能够同时处理IPv4和IPv6的流量。与IPv4节点通信时使用IPv4,与IPv6节点通信时使用IPv6。
- 隧道技术 (Tunneling):
- 原理: 将整个IPv6数据报作为数据部分封装在一个IPv4数据报中。
- 应用场景: 用于连接两个IPv6网络“孤岛”,让它们的流量能够穿越中间的IPv4海洋。
常见考法与例题梳理
-
IPv6基础知识辨析(高频)
- 考法: 以选择题形式,直接考察IPv6的核心特性,如地址长度、首部特点等。
- 例题01: 直接考察地址长度为128位。
- 例题02, 05: 全面对比IPv6与IPv4的差异,特别是IPv6无首部校验和、首部长度固定、禁止中间路由器分片这三大关键改进。
-
IPv6地址表示法的转换(高频计算题)
- 考法:
- 给出完整地址,要求写出最简形式。
- 给出简化地址,要求还原成完整形式。
- 例题03: 考察地址简化。关键在于理解“前导零省略”和“双冒号压缩只能用一次”的规则。
- 例题04: 考察地址还原。关键是先补全前导零,再根据已有字段数计算
::
代表的0字段数量并填充。
- 考法:
-
IPv6工作机制的理解
- 考法: 考察IPv6在特定场景下的行为,特别是与IPv4不同的地方。
- 例题06: 考察了路由器遇到过大数据报时的处理方式:丢弃 + 发送ICMPv6错误消息。
-
IPv4与IPv6的综合对比(真题趋势)
- 考法: 以多选形式,全面对比两者在地址空间、首部结构、过渡技术、字段功能等方面的异同。
- 例题07 (2023真题): 是一道非常高质量的综合对比题,覆盖了地址空间倍数(
2^96
倍)、首部长度(IPv6固定)、过渡技术(双栈/隧道)、TTL/HopLimit等价性等多个核心考点。
刻意练习建议
-
制作“IPv4 vs. IPv6”终极对比表:
- 这是掌握本节知识的“法宝”。创建一个大表格,详细对比两者。
- 对比维度包括:地址长度、地址表示法、首部长度、首部校验和、分片机制、选项处理、TTL/Hop Limit、QoS支持。
- 能独立默写和讲解这张表,就能掌握本节80%的核心内容。
-
地址转换专项训练:
- 找10-15个IPv6地址的例子,反复进行简化和还原的练习。
- 简化练习: 练习“省略前导零”和“找到最长连续0段进行压缩”。
- 还原练习: 练习“先补齐4位,再数段数补0”的步骤。
- 特别注意
::
只能用一次的规则,以及各种不合法的表示形式。
-
情景模拟分析:
- 给自己设定场景,例如:
- “一个IPv6数据报从A发出,经过路由器R1,要转发到链路L,但数据报大小 > L的MTU,会发生什么?” (R1丢弃数据报,并向A发送ICMPv6“分组太大”消息)。
- “一个双栈主机A要访问一个纯IPv4网站B,它会使用哪个协议栈?DNS查询会请求什么类型的记录?” (会使用IPv4协议栈;DNS会请求A记录)。
- “一个双栈主机A要访问一个纯IPv6网站C,它会使用哪个协议栈?DNS查询会请求什么类型的记录?” (会使用IPv6协议栈;DNS会请求AAAA记录)。
- 给自己设定场景,例如:
通过以上系统性的梳理和有针对性的刻意练习,您将能够全面掌握IPv6的核心概念和工作原理,并能从容应对相关的计算和分析问题。