IPv4 首部中的选项字段


IPv4 用于网络通信。数据包包含重要信息。IPv4 首部包含一个选项字段,用于提供灵活性和控制。选项字段是可选的,位于首部长度和服务类型之间。其是否存在取决于首部长度字段中的值。

IPv4 首部中的选项字段

IPv4 首部包含有关 IP 数据包的源和目标的信息。它还包含其他参数,这些参数会影响路由器和主机如何处理数据包。它由 20 字节的固定部分和最多 40 字节的可选项部分组成。可选项部分,称为选项字段,长度可变,可以包含零个、一个或多个选项。虽然它可以从 0 到 40 字节不等,但选项字段通常要短得多。

IPv4 首部中的选项字段为 IP 协议提供了附加的功能或灵活性。它可以包含不同类型的选项,每个选项都有其特定的用途。这些选项可以提供各种功能,例如路由控制、安全措施和网络诊断。选项字段的可变长度可以根据特定要求或所需功能自定义 IP 数据包。

IPv4 首部中的选项字段是与 IP 数据包一起发送的信息的一部分。它有助于控制如何处理数据包。此字段的长度可变,并且是可选的,这意味着它可能并非包含在所有数据包中。

IPv4 选项的格式

在 IPv4 首部中,每个选项都有其特定的格式。选项由三个字段组成:类型、长度和数据。类型字段指示选项的特定类型。它可能包含子字段:“复制”和“类别”。长度字段指示选项的总长度(以字节为单位)。选项数据包含实际参数,格式因类型而异。选项字段可以用于其他目的,例如指示数据包版本或安全信息。大多数选项在正常情况下不使用,但在需要时可以提供自定义功能。

注意

  • 选项字段的最大长度为 40 字节。

  • 选项按顺序处理,从选项字段的开头到结尾。

  • 如果无法识别某个选项,则会忽略该选项。

  • IPv6 数据报不使用选项字段。

选项类型

第一个字节是服务类型,第二个字节是每个选项字段的长度。我们总结了 RFC 791 和 RFC 1108 中定义的选项类型。

选项类型 名称 含义
0 选项列表结束 (EOL) 指示选项字段的结尾
1 无操作 (NOP) 用于填充或对齐目的
2 安全 携带安全信息,例如分类级别
3 松散源路由和记录路由 (LSRR) 允许源指定数据包必须访问的中间节点列表
4 流标识符 用于实验目的
5 严格源路由和记录路由 (SSRR) 类似于 LSRR,但是要求数据包仅访问源指定的节点
6 实验测量 用于实验目的
7 记录路由 (RR) 记录处理数据包的路由器的 IP 地址
8 流标识符 用于实验目的
9 实验测量 用于实验目的
10-16 未分配 保留供将来使用
17-18 实验访问控制 用于实验目的
19-126 未分配 保留供将来使用
127-130 保留用于安全选项扩展 保留供将来使用
131-136 未分配 保留供将来使用
137-138 实验访问控制扩展 用于实验目的
139-140 IMI 流量描述符 (IMITD) 用于实验目的
141-252 未分配 保留供将来使用
253-254 实验和测试 (EXP) 用于实验目的

这些选项将在下面解释。

记录路由 (RR)

此选项记录从源到目标路径上的最多九个路由器 IP 地址。它有助于调试和跟踪。格式包括类型 7、复制位 0、类别 0(控制)和可变选项长度。指针字段(1 字节)显示下一个可用的 IP 地址记录槽。源将其初始化为 4,每个路由器将其递增 4。路由数据字段按处理顺序保存路由器的 IP 地址。未使用的槽用零填充。

源路由 (LSRR 和 SSRR)

源路由选项允许源设置数据包路径的中间节点。有两种类型:松散源路由和记录路由 (LSRR) 以及严格源路由和记录路由 (SSRR)。

LSRR 允许附加节点,SSRR 仅遵循指定的节点。

有两种类型:LSRR (3) 和 SSRR (5) 选项。复制位为 1,类别为 0(控制),选项长度可变。指针字段(1 字节)显示下一个要访问的节点。源将其初始化为 4,每个节点将其递增 4。路由数据字段包含要访问的节点的 IP 地址。第一个地址是第一个要访问的节点,最后一个地址是最终目标。

安全

此选项携带安全信息,用于对数据包进行特殊处理。类型为 2,复制位为 1,类别为 2(保留),选项长度为 11 字节。安全字段(2 字节)显示数据包的分类级别。四个级别:未分类、机密、秘密和绝密。分隔字段(4 字节)对信息访问有其他限制。处理限制字段(4 字节)有进一步的分发限制。传输控制代码(1 字节)控制对信息的访问。

填充

如果选项不是 4 字节的倍数,则填充选项会将其填充。填充选项:EOL (0) 指示结束,NOP (1) 用于对齐。例如,如果选项为 7 字节,则 NOP (1) 将使其成为 8 字节。如果没有更多选项,则 EOL (0) 标记结尾。

选项列表结束 (EOL)

标记选项字段的结尾,一个字节,无数据。

无操作 (NOP)

用于填充或对齐,一个字节,无数据。

流标识符

标识数据报流,四个字节,两个字节的数据。

实验测量

测量网络性能,可变长度,至少三个字节。

未分配

保留供将来使用,没有定义的格式或含义。

实验访问控制

用于基于标准的访问控制,可变长度,至少三个字节。

实验访问控制扩展

用于基于标准的访问控制,可变长度,至少三个字节。

IMI 流量描述符 (IMITD)

描述数据报流量特性,可变长度,至少三个字节。

实验和测试 (EXP)

用于测试新功能或协议,可变长度,至少三个字节。

总结

IPv4 首部中的选项字段为该协议提供了附加的功能和灵活性。它包含各种控制参数以及有关数据包的其他信息。选项字段位于首部长度和服务类型字段之间。其是否存在由首部长度字段中的值决定。

选项字段可以包含不同类型的选项,每个选项都有其特定的用途。这些选项提供各种功能,例如路由控制、安全措施和网络诊断。每个选项的格式都包含选项类型、选项长度和选项数据字段。

虽然选项字段提供了自定义和灵活性,但大多数功能在正常情况下并不需要。因此,它很少使用。但是,提供选项字段可以根据特定需要进行自定义和灵活调整。

需要注意的是,选项字段的最大长度为 40 字节。选项按顺序从字段的开头到结尾进行处理。无法识别的选项将被忽略。IPv6 数据报不使用选项字段。

总而言之,IPv4 首部中的选项字段增强了 IP 协议的功能。它提供了对如何处理 IP 数据包的额外控制。

更新于:2023年8月31日

4K+ 次浏览

开启您的职业生涯

完成课程获得认证

开始学习
广告