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 パケット ヘッダーの Time to Live フィールド。 これは IPv6 ヘッダーのホップ制限フィールドです。

Tos

種類: UCHAR

IPv4 ヘッダーのサービス フィールドの種類。 このメンバーは現在、暗黙的に無視されます。

Flags

種類: UCHAR

[フラグ] フィールド。 IPv4 では、これは IPv4 ヘッダーの Flags フィールドです。 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、IcmpSendEcho2、および Icmp6SendEcho2 関数で使用されるICMP_ECHO_REPLY構造体のメンバーです。

この構造は、 Iphlpapi.h ヘッダー ファイルに自動的に含まれる Ipexport.h ヘッダー ファイルで定義されます。 Ipexport.h ヘッダー ファイルを直接使用しないでください。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
Header ipexport.h (Iphlpapi.h を含む)

こちらもご覧ください

ICMP_ECHO_REPLY

IP_OPTION_INFORMATION32

Icmp6SendEcho2

IcmpSendEcho

IcmpSendEcho2