IP_OPTION_INFORMATION结构 (ipexport.h)

IP_OPTION_INFORMATION 结构描述要包含在 IP 数据包的 标头中的选项。

语法

typedef struct ip_option_information {
  UCHAR  Ttl;
  UCHAR  Tos;
  UCHAR  Flags;
  UCHAR  OptionsSize;
  PUCHAR OptionsData;
} IP_OPTION_INFORMATION, *PIP_OPTION_INFORMATION;

成员

Ttl

类型: UCHAR

IPv4 数据包标头中的生存时间字段。 这是 IPv6 标头中的跃点限制字段。

Tos

类型: UCHAR

IPv4 标头中的服务字段的类型。 此成员当前以无提示方式被忽略。

Flags

类型: UCHAR

标志字段。 在 IPv4 中,这是 IPv4 标头中的“标志”字段。 在 IPv6 中,此字段由选项标头表示。

对于 IPv4,Flags 成员的可能值Ipexport.h 头文件中定义的以下值的组合:

含义
IP_FLAG_REVERSE
0x01
此值会导致 IP 数据包添加到具有源的 IP 路由标头中。 此值仅适用于 Windows Vista 及更高版本。
IP_FLAG_DF
0x02
此值指示数据包不应分段。

OptionsSize

类型: UCHAR

IP 选项数据的大小(以字节为单位)。

OptionsData

类型: PUCHAR

指向选项数据的指针。

注解

IP_OPTION_INFORMATION 结构用于描述要包含在 IP 数据包标头中的选项。 在 64 位平台上,应使用 IP_OPTION_INFORMATION32 结构。

TTLTOSFlags 成员中的值在 IP 标头中的特定字段中携带。

OptionsData 成员中的字节包含在标准 IP 标头后面的选项区域中。

除了 IPv4 的源路由选项之外,选项数据必须采用 RFC 791 中指定的要在网络上传输的格式。 IPv4 源路由选项应包含路由数据中的完整路由(第一个跃点到最终目标)。 从数据中提取第一个跃点,并相应地重新设置选项格式。 否则,路由选项的格式应为 RFC 791 中指定的格式。

若要与 IPv6 一起使用,选项数据的格式必须符合 RFC 2460 中指定的在网络上传输的格式。

IP_OPTION_INFORMATION 结构是 IcmpSendEcho、IcmpSendEcho2Icmp6SendEcho2 函数使用的 ICMP_ECHO_REPLY 结构的成员。

此结构在 Ipexport.h 头文件中定义,该文件自动包含在 Iphlpapi.h 头文件中。 永远不应直接使用 Ipexport.h 头文件。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
标头 ipexport.h (包括 Iphlpapi.h)

另请参阅

ICMP_ECHO_REPLY

IP_OPTION_INFORMATION32

Icmp6Sendecho2

IcmpSendecho

IcmpSendecho2