MIB_IF_ROW2 構造体 (netioapi.h)
MIB_IF_ROW2構造体には、特定のインターフェイスに関する情報が格納されます。
構文
typedef struct _MIB_IF_ROW2 {
NET_LUID InterfaceLuid;
NET_IFINDEX InterfaceIndex;
GUID InterfaceGuid;
WCHAR Alias[IF_MAX_STRING_SIZE + 1];
WCHAR Description[IF_MAX_STRING_SIZE + 1];
ULONG PhysicalAddressLength;
UCHAR PhysicalAddress[IF_MAX_PHYS_ADDRESS_LENGTH];
UCHAR PermanentPhysicalAddress[IF_MAX_PHYS_ADDRESS_LENGTH];
ULONG Mtu;
IFTYPE Type;
TUNNEL_TYPE TunnelType;
NDIS_MEDIUM MediaType;
NDIS_PHYSICAL_MEDIUM PhysicalMediumType;
NET_IF_ACCESS_TYPE AccessType;
NET_IF_DIRECTION_TYPE DirectionType;
struct {
BOOLEAN HardwareInterface : 1;
BOOLEAN FilterInterface : 1;
BOOLEAN ConnectorPresent : 1;
BOOLEAN NotAuthenticated : 1;
BOOLEAN NotMediaConnected : 1;
BOOLEAN Paused : 1;
BOOLEAN LowPower : 1;
BOOLEAN EndPointInterface : 1;
} InterfaceAndOperStatusFlags;
IF_OPER_STATUS OperStatus;
NET_IF_ADMIN_STATUS AdminStatus;
NET_IF_MEDIA_CONNECT_STATE MediaConnectState;
NET_IF_NETWORK_GUID NetworkGuid;
NET_IF_CONNECTION_TYPE ConnectionType;
ULONG64 TransmitLinkSpeed;
ULONG64 ReceiveLinkSpeed;
ULONG64 InOctets;
ULONG64 InUcastPkts;
ULONG64 InNUcastPkts;
ULONG64 InDiscards;
ULONG64 InErrors;
ULONG64 InUnknownProtos;
ULONG64 InUcastOctets;
ULONG64 InMulticastOctets;
ULONG64 InBroadcastOctets;
ULONG64 OutOctets;
ULONG64 OutUcastPkts;
ULONG64 OutNUcastPkts;
ULONG64 OutDiscards;
ULONG64 OutErrors;
ULONG64 OutUcastOctets;
ULONG64 OutMulticastOctets;
ULONG64 OutBroadcastOctets;
ULONG64 OutQLen;
} MIB_IF_ROW2, *PMIB_IF_ROW2;
メンバー
InterfaceLuid
種類: NET_LUID
ネットワーク インターフェイスのローカル一意識別子 (LUID)。
InterfaceIndex
種類: NET_IFINDEX
ネットワーク インターフェイスを識別するインデックス。 このインデックス値は、ネットワーク アダプターが無効になって有効になっている場合に変更される可能性があり、永続的と見なすべきではありません。
InterfaceGuid
種類: GUID
ネットワーク インターフェイスの GUID。
Alias[IF_MAX_STRING_SIZE + 1]
種類: WCHAR[IF_MAX_STRING_SIZE + 1]
ネットワーク インターフェイスのエイリアス名を含む NULL で終わる Unicode 文字列。
Description[IF_MAX_STRING_SIZE + 1]
種類: WCHAR[IF_MAX_STRING_SIZE + 1]
ネットワーク インターフェイスの説明を含む NULL で終わる Unicode 文字列。
PhysicalAddressLength
種類: ULONG
PhysicalAddress メンバーによって指定された物理ハードウェア アドレスの長さ (バイト単位)。
PhysicalAddress[IF_MAX_PHYS_ADDRESS_LENGTH]
種類: UCHAR[IF_MAX_PHYS_ADDRESS_LENGTH]
このネットワーク インターフェイスのアダプターの物理ハードウェア アドレス。
PermanentPhysicalAddress[IF_MAX_PHYS_ADDRESS_LENGTH]
種類: UCHAR[IF_MAX_PHYS_ADDRESS_LENGTH]
このネットワーク インターフェイスのアダプターの永続的な物理ハードウェア アドレス。
Mtu
種類: ULONG
このネットワーク インターフェイスの最大伝送単位 (MTU) サイズ (バイト単位)。
Type
型: IFTYPE
インターネット割り当て名機関 (IANA) で定義されているインターフェイス型。 詳細については、「http://www.iana.org/assignments/ianaiftype-mib」を参照してください。 インターフェイスの種類に使用できる値は、 Ipifcons.h ヘッダー ファイルに一覧表示されます。
次の表に、インターフェイス型の一般的な値を示しますが、他の多くの値を使用できます。
TunnelType
種類: TUNNEL_TYPE
Type メンバーがIF_TYPE_TUNNEL場合にトンネルによって使用されるカプセル化メソッド。 トンネルの種類は、インターネット割り当て名機関 (IANA) によって定義されます。 詳細については、「http://www.iana.org/assignments/ianaiftype-mib」を参照してください。 このメンバーには、Ifdef.h ヘッダー ファイルで定義されているTUNNEL_TYPE列挙型の値のいずれかを指定できます。
MediaType
種類: NDIS_MEDIUM
インターフェイスの NDIS メディアの種類。 このメンバーは、Ntddndis.h ヘッダー ファイルで定義されているNDIS_MEDIUM列挙型の値のいずれかになります。
PhysicalMediumType
種類: NDIS_PHYSICAL_MEDIUM
NDIS 物理メディアの種類。 このメンバーは、Ntddndis.h ヘッダー ファイルで定義されているNDIS_PHYSICAL_MEDIUM列挙型の値のいずれかになります。
AccessType
種類: NET_IF_ACCESS_TYPE
インターフェイス アクセスの種類。 このメンバーは、Ifdef.h ヘッダー ファイルで定義されているNET_IF_ACCESS_TYPE列挙型の値のいずれかになります。
DirectionType
種類: NET_IF_DIRECTION_TYPE
インターフェイスの方向の種類。 このメンバーは、Ifdef.h ヘッダー ファイルで定義されているNET_IF_DIRECTION_TYPE列挙型の値のいずれかになります。
InterfaceAndOperStatusFlags
インターフェイスに関する情報を提供するフラグのセット。 これらのフラグは、ビットごとの OR 演算と組み合わされます。 どのフラグも適用されない場合、このメンバーは 0 に設定されます。
InterfaceAndOperStatusFlags.HardwareInterface
型: BOOLEAN ネットワーク インターフェイスがハードウェア用であるかどうかを設定します。
InterfaceAndOperStatusFlags.FilterInterface
型: BOOLEAN ネットワーク インターフェイスがフィルター モジュール用であるかどうかを設定します。
InterfaceAndOperStatusFlags.ConnectorPresent
型: BOOLEAN ネットワーク インターフェイスにコネクタが存在するかどうかを設定します。 この値は、物理ネットワーク アダプターがある場合に設定されます。
InterfaceAndOperStatusFlags.NotAuthenticated
型: BOOLEAN ネットワーク インターフェイスの既定のポートが認証されていない場合は、 を設定します。 ネットワーク インターフェイスがターゲットによって認証されていない場合、ネットワーク インターフェイスは操作モードではありません。 これは有線ネットワーク接続とワイヤレス ネットワーク接続の両方に適用されますが、ワイヤレス ネットワーク接続では認証がより一般的です。
InterfaceAndOperStatusFlags.NotMediaConnected
型: BOOLEAN ネットワーク インターフェイスがメディア接続状態でない場合に設定します。 有線ネットワークのネットワーク ケーブルが取り外されている場合は、これが設定されます。 ワイヤレス ネットワークの場合、これはネットワークに接続されていないネットワーク アダプターに対して設定されます。
InterfaceAndOperStatusFlags.Paused
型: BOOLEAN ネットワーク インターフェイスのネットワーク スタックが一時停止または一時停止状態になっている場合に設定します。 これは、コンピューターが休止状態であることを意味するものではありません。
InterfaceAndOperStatusFlags.LowPower
型: BOOLEAN ネットワーク インターフェイスが低電力状態の場合は を設定します。
InterfaceAndOperStatusFlags.EndPointInterface
型: BOOLEAN ネットワーク インターフェイスがエンドポイント デバイスであり、ネットワークに接続する真のネットワーク インターフェイスではない場合に設定します。 これは、ネットワーク インフラストラクチャを使用して PC と通信するが、外部ネットワークへの接続を提供しないスマート フォンなどのデバイスで設定できます。 これらの種類のデバイスでは、このフラグを設定する必要があります。
OperStatus
種類: IF_OPER_STATUS
RFC 2863 で IfOperStatus として定義されているインターフェイスの動作状態。 詳細については、「http://www.ietf.org/rfc/rfc2863.txt」を参照してください。 このメンバーには、Ifdef.h ヘッダー ファイルで定義されているIF_OPER_STATUS列挙型の値のいずれかを指定できます。
AdminStatus
種類: NET_IF_ADMIN_STATUS
RFC 2863 で定義されているインターフェイスの管理ステータス。 詳細については、「http://www.ietf.org/rfc/rfc2863.txt」を参照してください。 このメンバーには、Ifdef.h ヘッダー ファイルで定義されているNET_IF_ADMIN_STATUS列挙型の値のいずれかを指定できます。
MediaConnectState
種類: NET_IF_MEDIA_CONNECT_STATE
インターフェイスの接続状態。 このメンバーには、Ifdef.h ヘッダー ファイルで定義されているNET_IF_MEDIA_CONNECT_STATE列挙型の値のいずれかを指定できます。
値 | 意味 |
---|---|
|
インターフェイスの接続状態が不明です。 |
|
インターフェイスはネットワークに接続されています。 |
|
インターフェイスがネットワークに接続されていません。 |
NetworkGuid
種類: NET_IF_NETWORK_GUID
インターフェイスが属するネットワークに関連付けられている GUID。
ConnectionType
種類: NET_IF_CONNECTION_TYPE
NDIS ネットワーク インターフェイス接続の種類。 このメンバーには、Ifdef.h ヘッダー ファイルで定義されているNET_IF_CONNECTION_TYPE列挙型の値のいずれかを指定できます。
TransmitLinkSpeed
種類: ULONG64
送信リンクの 1 秒あたりのビット数の速度。
ReceiveLinkSpeed
種類: ULONG64
受信リンクの 1 秒あたりのビット数の速度。
InOctets
種類: ULONG64
このインターフェイスを介してエラーなしで受信されたデータのオクテットの数。 この値には、ユニキャスト、ブロードキャスト、マルチキャスト パケットのオクテットが含まれます。
InUcastPkts
種類: ULONG64
このインターフェイスを介してエラーなしで受信されたユニキャスト パケットの数。
InNUcastPkts
種類: ULONG64
このインターフェイスを介してエラーなしで受信された非ユニキャスト パケットの数。 この値には、ブロードキャスト パケットとマルチキャスト パケットが含まれます。
InDiscards
種類: ULONG64
パケットが上位層プロトコルに配信されるのを防ぐためのエラーが検出されなかった場合でも、破棄するように選択された受信パケットの数。
InErrors
種類: ULONG64
エラーが原因で破棄された受信パケットの数。
InUnknownProtos
種類: ULONG64
プロトコルが不明であったために破棄された受信パケットの数。
InUcastOctets
種類: ULONG64
このインターフェイスを介してユニキャスト パケットでエラーなしで受信されたデータのオクテットの数。
InMulticastOctets
種類: ULONG64
このインターフェイスを介してマルチキャスト パケットでエラーなしで受信されたデータのオクテットの数。
InBroadcastOctets
種類: ULONG64
このインターフェイスを介してブロードキャスト パケットでエラーなしで受信されたデータのオクテットの数。
OutOctets
種類: ULONG64
このインターフェイスを介してエラーなしで送信されるデータのオクテットの数。 この値には、ユニキャスト、ブロードキャスト、マルチキャスト パケットのオクテットが含まれます。
OutUcastPkts
種類: ULONG64
このインターフェイスを介してエラーなしで送信されるユニキャスト パケットの数。
OutNUcastPkts
種類: ULONG64
このインターフェイスを介してエラーなしで送信される非ユニキャスト パケットの数。 この値には、ブロードキャスト パケットとマルチキャスト パケットが含まれます。
OutDiscards
種類: ULONG64
エラーがないにもかかわらず破棄された送信パケットの数。
OutErrors
種類: ULONG64
エラーが原因で破棄された送信パケットの数。
OutUcastOctets
種類: ULONG64
このインターフェイスを介してユニキャスト パケットでエラーなしで送信されるデータのオクテットの数。
OutMulticastOctets
種類: ULONG64
このインターフェイスを介してマルチキャスト パケットでエラーなしで送信されるデータのオクテットの数。
OutBroadcastOctets
種類: ULONG64
このインターフェイスを介してブロードキャスト パケットでエラーなしで送信されるデータのオクテットの数。
OutQLen
種類: ULONG64
送信キューの長さ。 このフィールドは現在使用されていません。
注釈
MIB_IF_ROW2構造は、Windows Vista 以降で定義されます。
Type フィールドの値は、Ipifcons.h ヘッダー ファイルで定義されています。 現在、 Type メンバーの説明に記載されている使用可能な値のみがサポートされています。
Netioapi.h ヘッダー ファイルは Iphlpapi.h ヘッダー ファイルに自動的に含まれることに注意してください。 Netioapi.h ヘッダー ファイルを直接使用しないでください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
Header | netioapi.h (Iphlpapi.h を含む) |