IP_OPTION_INFORMATION32 结构 (ipexport.h)

IP_OPTION_INFORMATION32 结构描述了要包含在 64 位平台上 IP 数据包标头中的选项。

语法

typedef struct ip_option_information32 {
  UCHAR Ttl;
  UCHAR Tos;
  UCHAR Flags;
  UCHAR OptionsSize;
  UCHAR POINTER_32 *OptionsData;
} IP_OPTION_INFORMATION32, *PIP_OPTION_INFORMATION32;

成员

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

类型: UCHAR * POINTER_32

指向选项数据的指针。

注解

IP_OPTION_INFORMATION32 结构用于描述要包含在 64 位平台上 IP 数据包标头中的选项。 仅当定义了 _WIN64 时,才会定义IP_OPTION_INFORMATION32结构。

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

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

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

若要与 IPv6 一起使用,选项数据的格式必须按照 RFC 2460 中指定的格式在线路上传输。

IP_OPTION_INFORMATION32 结构是 IcmpSendEcho、IcmpSendEcho2Icmp6SendEcho2 函数使用的 ICMP_ECHO_REPLY32结构的成员。

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

要求

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

另请参阅

ICMP_ECHO_REPLY32

IP_OPTION_INFORMATION

Icmp6Sendecho2

IcmpSendecho

IcmpSendecho2