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 パケット ヘッダーの Time to Live フィールド。 これは IPv6 ヘッダーのホップ制限フィールドです。
Tos
種類: UCHAR
IPv4 ヘッダーのサービス フィールドの種類。 このメンバーは現在、暗黙的に無視されます。
Flags
種類: UCHAR
[フラグ] フィールド。 IPv4 では、これは IPv4 ヘッダーの Flags フィールドです。 IPv6 では、このフィールドはオプション ヘッダーで表されます。
IPv4 の場合、 Flags メンバーに指定できる値は、 Ipexport.h ヘッダー ファイルで定義されている次の値の組み合わせです。
値 | 説明 |
---|---|
|
この値を指定すると、IP パケットが送信元の IP ルーティング ヘッダーに追加されます。 この値は、Windows Vista 以降でのみ適用されます。 |
|
この値は、パケットをフラグメント化しないことを示します。 |
OptionsSize
種類: UCHAR
IP オプション データのサイズ (バイト単位)。
OptionsData
種類: UCHAR * POINTER_32
オプション データへのポインター。
解説
IP_OPTION_INFORMATION32構造体は、64 ビット プラットフォーム上の IP パケットのヘッダーに含めるオプションを記述するために使用されます。 IP_OPTION_INFORMATION32構造体は、_WIN64が定義されている場合にのみ定義されます。
TTL、TOS、Flags メンバーの値は、IP ヘッダーの特定のフィールドに格納されます。
OptionsData メンバーのバイトは、標準 IP ヘッダーに続くオプション領域に格納されます。
IPv4 のソース ルート オプションを除き、オプション データは RFC 791 で指定されているように、ネットワーク上で送信される形式である必要があります。 IPv4 ソース ルート オプションには、ルート データに完全なルート (最終宛先を経由する最初のホップ) が含まれている必要があります。 最初のホップがデータからプルされ、それに応じてオプションが再フォーマットされます。 それ以外の場合、ルート オプションは RFC 791 で指定されているように書式設定する必要があります。
IPv6 で使用する場合、オプション データは RFC 2460 で指定されているように、ネットワーク上で送信される形式である必要があります。
IP_OPTION_INFORMATION32構造体は、IcmpSendEcho、IcmpSendEcho2、および Icmp6SendEcho2 関数によって使用されるICMP_ECHO_REPLY32構造体のメンバーです。
この構造は、 Iphlpapi.h ヘッダー ファイルに自動的に含まれる Ipexport.h ヘッダー ファイルで定義されます。 Ipexport.h ヘッダー ファイルを直接使用しないでください。
要件
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
Header | ipexport.h (Iphlpapi.h を含む) |