次の方法で共有


MIB_IPFORWARD_ROW2 構造体

MIB_IPFORWARD_ROW2 構造体には、IP ルート エントリに関する情報が格納されます。

構文

typedef struct _MIB_IPFORWARD_ROW2 {
  NET_LUID          InterfaceLuid;
  NET_IFINDEX       InterfaceIndex;
  IP_ADDRESS_PREFIX DestinationPrefix;
  SOCKADDR_INET     NextHop;
  UCHAR             SitePrefixLength;
  ULONG             ValidLifetime;
  ULONG             PreferredLifetime;
  ULONG             Metric;
  NL_ROUTE_PROTOCOL Protocol;
  BOOLEAN           Loopback;
  BOOLEAN           AutoconfigureAddress;
  BOOLEAN           Publish;
  BOOLEAN           Immortal;
  ULONG             Age;
  NL_ROUTE_ORIGIN   Origin;
} MIB_IPFORWARD_ROW2, *PMIB_IPFORWARD_ROW2;

メンバー

  • InterfaceLuid
    この IP ルート エントリに関連付けられているネットワーク インターフェイスのローカル一意識別子 (LUID)。

  • InterfaceIndex
    この IP ルート エントリに関連付けられているネットワーク インターフェイスのローカル インデックス値。 このインデックス値は、ネットワーク アダプターを無効にしてから有効にした場合、またはその逆を行った場合に変更される可能性があり、永続的と見なすべきではありません。

  • DestinationPrefix
    このルートの宛先 IP アドレスの IP アドレス プレフィックス。

  • NextHop
    リモート ルートの場合、ルートに沿った次のシステムまたはゲートウェイの IP アドレス。 ローカル ループバック アドレスまたはローカル リンク上の IP アドレスへのルートの場合、ネクスト ホップは指定されません (すべてゼロ)。 ローカル ループバック ルートの場合、このメンバーは IPv4 ルート エントリに対しては 0.0.0.0 という IPv4 アドレスに、IPv6 ルート エントリに対しては 0::0 という IPv6 アドレスにする必要があります。

  • SitePrefixLength
    このルートの IP アドレスのサイト プレフィックスまたはネットワーク部分の長さ (ビット単位)。 IPv4 ルート エントリの場合、32 より大きい値は無効な値です。 IPv6 ルート エントリの場合、128 より大きい値は無効な値です。 通常、255 という値は無効な値を表すために使用されます。

  • ValidLifetime
    IP ルート エントリが有効な最大時間 (秒単位)。 0xffffffff という値は無限であると見なされます。

  • PreferredLifetime
    IP ルート エントリが有効な優先時間 (秒単位)。 0xffffffff という値は無限であると見なされます。

  • メトリック
    この IP ルート エントリのルート メトリック オフセット値。 ルート設定の計算に使用される実際のルート メトリックは、この Metric メンバーで指定されるルート メトリック オフセットに追加された MIB_IPINTERFACE_ROW 構造体の Metric メンバーで指定されているインターフェイス メトリックであることにご注意ください。 このメトリックのセマンティクスは、Protocol メンバーで指定されているルーティング プロトコルによって決まります。 このメトリックを使用しない場合は、その値を -1 に設定する必要があります。 この値は RFC 4292 に記載されています。 詳細については、「IP 転送テーブル MIB」を参照してください。

  • プロトコル
    この IP ルートが追加された NL_ROUTE_PROTOCOL ルーティング メカニズムの種類。

  • Loopback
    ルートがループバック ルート (ゲートウェイがローカル ホスト上にある) かどうかを指定する値。

  • AutoconfigureAddress
    IP アドレスが自動構成されているかどうかを示す値。

  • 発行
    ルートが発行されるかどうかを指定する値。

  • Immortal
    ルートが不変かどうかを指定する値。

  • 年齢
    ネットワーク ルーティング テーブルでルートが追加または変更されてからの秒数。

  • 元のドメイン
    NL_ROUTE_ORIGIN IP ルートの配信元の種類。

解説

GetIpForwardTable2 関数は、ローカル コンピューター上の IP ルート エントリを列挙し、MIB_IPFORWARD_ROW2 エントリの配列として MIB_IPFORWARD_TABLE2 構造体でこの情報を返します。

GetIpForwardEntry2 関数は、単一の IP ルート エントリを取得し、この情報をMIB_IPFORWARD_ROW2 構造体で返します。

MIB_IPFORWARD_ROW2 構造体の DestinationPrefix メンバーで、IP_ADDRESS_PREFIXPrefix メンバーと PrefixLength メンバーが 0 に設定されているエントリは、既定のルートと見なされます。 MIB_IPFORWARD_TABLE2 には、複数のネットワーク アダプターがインストールされている場合に DestinationPrefix で IP_ADDRESS_PREFIX の Prefix メンバーと PrefixLength メンバーが 0 に設定されている複数の MIB_IPFORWARD_ROW2 エントリが含まれる場合があります。

IB_IPFORWARD_ROW2 エントリの Metric メンバーは、特定のネットワーク インターフェイスの IP ルートに割り当てられる値であり、そのルートの使用に関連するコストを確認できます。 たとえば、このメトリックは、リンク速度、ホップ数、または遅延時間の観点から評価できます。 自動メトリックは、リンク速度に基づいてローカル ルートのメトリックを自動的に構成する Windows XP 以降のバージョンの Windows オペレーティング システムの機能です。 既定では、Windows XP 以降では、自動メトリック機能が有効になっています (MIB_IPINTERFACE_ROW 構造体の UseAutomaticMetric メンバーが TRUE に設定されています)。 この機能を手動で構成して、特定のメトリックを IP ルートに割り当てることもできます。

MIB_IPFORWARD_ROW2 構造体の Metric メンバーで指定されているルート メトリック は、ルート メトリック オフセットのみを表します。 完全なメトリックは、関連付けられているインターフェイスの MIB_IPINTERFACE_ROW 構造体の Metric メンバーで指定されているインターフェイス メトリックに、このルート メトリック オフセットを追加してできる組み合わせです。 ドライバーは、GetIpInterfaceEntry 関数を呼び出すと、インターフェイス メトリックを取得できます。

要件

バージョン

Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。

ヘッダー

Netioapi.h (Netioapi.h を含む)

関連項目

CreateIpForwardEntry2

DeleteIpForwardEntry2

GetIpForwardEntry2

GetIpForwardTable2

GetIpInterfaceEntry

IP_ADDRESS_PREFIX

MIB_IPFORWARD_TABLE2

MIB_IPINTERFACE_ROW

NL_ROUTE_ORIGIN

NL_ROUTE_PROTOCOL

SetIpForwardEntry2