IP_ADAPTER_UNICAST_ADDRESS_XP 構造体 (iptypes.h)
IP_ADAPTER_UNICAST_ADDRESS構造体は、特定のアダプターの IP アドレスのリンクされた一覧に 1 つのユニキャスト IP アドレスを格納します。
構文
typedef struct _IP_ADAPTER_UNICAST_ADDRESS_XP {
union {
ULONGLONG Alignment;
struct {
ULONG Length;
DWORD Flags;
};
};
struct _IP_ADAPTER_UNICAST_ADDRESS_XP *Next;
SOCKET_ADDRESS Address;
IP_PREFIX_ORIGIN PrefixOrigin;
IP_SUFFIX_ORIGIN SuffixOrigin;
IP_DAD_STATE DadState;
ULONG ValidLifetime;
ULONG PreferredLifetime;
ULONG LeaseLifetime;
} IP_ADAPTER_UNICAST_ADDRESS_XP, *PIP_ADAPTER_UNICAST_ADDRESS_XP;
メンバー
Alignment
種類: ULONGLONG
予約済み。 構造体を配置するためにコンパイラによって使用されます。
Length
種類: ULONG
この構造体の長さ (バイト単位)。
Flags
型: DWORD
この IP アドレスのフラグのセット。
以下の表に、使用可能な値を示します。 これらの定数は、 Iptypes.h ヘッダー ファイルで定義されています。
値 | 説明 |
---|---|
|
IP アドレスは DNS に表示されるのが適しています。 |
|
IP アドレスはクラスター アドレスであり、ほとんどのアプリケーションで使用しないでください。 |
Next
型: 構造体_IP_ADAPTER_UNICAST_ADDRESS*
リスト内の次の IP アダプター アドレス構造へのポインター。
Address
種類: SOCKET_ADDRESS
このユニキャスト IP アドレス エントリの IP アドレス。 このメンバーには、IPv6 アドレスまたは IPv4 アドレスを指定できます。
PrefixOrigin
種類: IP_PREFIX_ORIGIN
IP アドレスのプレフィックスまたはネットワーク部分。 このメンバーには、Iptypes.h ヘッダー ファイルで定義されているIP_PREFIX_ORIGIN列挙型の値のいずれかを指定できます。
SuffixOrigin
種類: IP_SUFFIX_ORIGIN
IP アドレスのサフィックスまたはホスト部分。 このメンバーには、Iptypes.h ヘッダー ファイルで定義されているIP_SUFFIX_ORIGIN列挙型の値のいずれかを指定できます。
DadState
種類: IP_DAD_STATE
重複アドレス検出 (DAD) の状態。 このメンバーには、Iptypes.h ヘッダー ファイルで定義されているIP_DAD_STATE列挙型の値のいずれかを指定できます。 重複アドレス検出は、IPv4 アドレスと IPv6 アドレスの両方で使用できます。
ValidLifetime
種類: ULONG
IP アドレスが有効な最大有効期間 (秒単位)。 0xffffffffの値は無限であると見なされます。
PreferredLifetime
種類: ULONG
IP アドレスが有効な優先有効期間 (秒単位)。 0xffffffffの値は無限であると見なされます。
LeaseLifetime
種類: ULONG
IP アドレスが有効なリースの有効期間 (秒単位)。
解説
IP_ADAPTER_ADDRESSES構造体は、GetAdaptersAddresses 関数によって取得されます。 IP_ADAPTER_ADDRESSES構造体の FirstUnicastAddress メンバーは、IP_ADAPTER_UNICAST_ADDRESS構造体のリンクされたリストへのポインターです。
Windows Vista 以降で IP_ADAPTER_UNICAST_ADDRESS 構造のサイズが変更されました。 Length メンバーは、使用されているIP_ADAPTER_UNICAST_ADDRESS構造体のバージョンを決定するために使用する必要があります。
Windows Vista 以降の IP_ADAPTER_UNICAST_ADDRESS 構造体のバージョンには、 OnLinkPrefixLength という新しいメンバーが追加されています。
この構造体を GetAdaptersAddresses 関数と同様の管理機能と共に使用すると、構成されているすべてのアドレス (重複するアドレスを含む) が表示されます。 このような重複するアドレス エントリは、アドレスが静的に構成されている場合に発生する可能性があります。 このようなレポートを使用すると、管理者のトラブルシューティングが容易になります。 DadState メンバーは、このような状況の特定とトラブルシューティングに効果的です。
Windows SDK では、Windows Vista 以降で使用する構造体のバージョンは 、IP_ADAPTER_UNICAST_ADDRESS_LHとして定義されています。 Windows SDK では、Service Pack 1 (SP1) 以降の Windows XP を含む以前のシステムで使用されるこの構造のバージョンは 、IP_ADAPTER_UNICAST_ADDRESS_XPとして定義されています。 ターゲット プラットフォームが Windows Vista 以降 (NTDDI_VERSION >= NTDDI_VISTA
、、または WINVER >= 0x0600
) の場合にアプリケーションをコンパイルする場合、_WIN32_WINNT >= 0x0600
IP_ADAPTER_UNICAST_ADDRESS_LH構造体は IP_ADAPTER_UNICAST_ADDRESS 構造体に型定義されます。 ターゲット プラットフォームが Windows Vista 以降でない場合にアプリケーションをコンパイルする場合、 IP_ADAPTER_UNICAST_ADDRESS_XP 構造体は IP_ADAPTER_UNICAST_ADDRESS 構造体に typedef されます。
SOCKET_ADDRESS構造体は、IP_ADAPTER_UNICAST_ADDRESS構造体で使用されます。 Windows Vista 以降用にリリースされた Microsoft Windows ソフトウェア開発キット (SDK) では、ヘッダー ファイルのorganizationが変更され、SOCKET_ADDRESS構造は、Winsock2.h ヘッダー ファイルによって自動的に含まれる Ws2def.h ヘッダー ファイルで定義されています。 Windows Server 2003 および Windows XP 用にリリースされたプラットフォーム ソフトウェア開発キット (SDK) では、 SOCKET_ADDRESS 構造が Winsock2.h ヘッダー ファイルで宣言されています。 IP_ADAPTER_UNICAST_ADDRESS構造を使用するには、Iphlpapi.h ヘッダー ファイルの前に Winsock2.h ヘッダー ファイルを含める必要があります。
要件
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
Header | iptypes.h (Iphlpapi.h を含む) |