共用方式為


MIB_IPFORWARDROW結構 (ipmib.h)

MIB_IPFORWARDROW結構包含描述 IPv4 網路路由的資訊。

語法

typedef struct _MIB_IPFORWARDROW {
  DWORD    dwForwardDest;
  DWORD    dwForwardMask;
  DWORD    dwForwardPolicy;
  DWORD    dwForwardNextHop;
  IF_INDEX dwForwardIfIndex;
  union {
    DWORD              dwForwardType;
    MIB_IPFORWARD_TYPE ForwardType;
  };
  union {
    DWORD               dwForwardProto;
    MIB_IPFORWARD_PROTO ForwardProto;
  };
  DWORD    dwForwardAge;
  DWORD    dwForwardNextHopAS;
  DWORD    dwForwardMetric1;
  DWORD    dwForwardMetric2;
  DWORD    dwForwardMetric3;
  DWORD    dwForwardMetric4;
  DWORD    dwForwardMetric5;
} MIB_IPFORWARDROW, *PMIB_IPFORWARDROW;

成員

dwForwardDest

類型: DWORD

路由的目的地 IPv4 位址。 IPv4 位址為 0.0.0.0 的專案會被視為預設路由。 此成員無法設定為多播 (類別 D) IPv4 位址。

dwForwardMask

類型: DWORD

dwForwardDest 成員中的值進行比較之前,要與目的地 IPv4 位址搭配使用的 IPv4 子網路遮罩。

dwForwardMask值應該套用至目的地 IPv4 位址, (邏輯和作業) ,然後再與dwForwardDest成員中的值進行比較。

dwForwardPolicy

類型: DWORD

會導致選取多重路徑路由的條件集, (指定目的地) 的下一個躍點集。 此成員通常是 IP TOS 格式。 RFC 1354 會描述此成員的編碼方式。 如需詳細資訊,請參閱http://www.ietf.org/rfc/rfc1354.txt

dwForwardNextHop

類型: DWORD

針對遠端路由,下一個系統路由的 IPv4 位址。 否則,此成員應該是 0.0.0.0 的 IPv4 位址。

dwForwardIfIndex

類型: DWORD

本機介面的索引,應透過此介面到達此路由的下一個躍點。

dwForwardType

類型: DWORD

如 RFC 1354 中所述的路由類型。 如需詳細資訊,請參閱http://www.ietf.org/rfc/rfc1354.txt

這個成員可以是 Iprtmib.h 標頭檔中定義的其中一個值。

在 Windows Vista 和更新版本上,標頭檔已重新組織,而且此成員可以是Ipmib.h標頭檔中所定義MIB_IPFORWARD_TYPE列舉類型的其中一個值。 請注意,Iprtrmib.h標頭檔會自動包含Ipmib.h標頭,Iphlpapi.h標頭會自動包含該標頭檔。 不應該直接使用 Iprtrmib.hIpmib.h 標頭檔。

下列清單顯示此成員的可能值。

意義
MIB_IPROUTE_TYPE_OTHER
1
RFC 1354 中未指定某些其他類型。
MIB_IPROUTE_TYPE_INVALID
2
不正確路由。 此值可能是由 ICMP 重新導向所新增的路由所產生。
MIB_IPROUTE_TYPE_DIRECT
3
本機路由,其中下一個躍點是本機介面 (最終目的地) 。
MIB_IPROUTE_TYPE_INDIRECT
4
下一個躍點不是遠端目的地 (遠端目的地) 的遠端路由。

ForwardType

dwForwardProto

類型: DWORD

產生路由的通訊協定或路由機制,如 RFC 1354 中所述。 如需詳細資訊,請參閱http://www.ietf.org/rfc/rfc1354.txt如需路由通訊協定所使用的可能通訊協定識別碼清單,請參閱通訊協定識別碼。

這個成員可以是 Iprtmib.h 標頭檔中定義的其中一個值。 此成員的值可以是 Iprtmib.h 標頭檔中定義的其中一個MIB_IPPROTO_xxx值,或是 routprot.h 標頭檔中定義的其中一個PROTO_IP_xxx值,因為這些值相同。

在 Windows Vista 和更新版本上,標頭檔已重新組織,而且此成員可以是 Nldef.h 標頭檔中定義的其中一個值。 請注意,Ipmib.h標頭檔會自動包含Nldef.h標頭,該標頭檔由Iprtrmib.h標頭自動包含。 Iphlpapi.h標頭會自動包含Iprtrmib.h標頭檔。 不應該直接使用 Iprtrmib.hIpmib.hNldef.h 標頭檔。

下列清單顯示此成員的可能值。

意義
MIB_IPPROTO_OTHER
1
RFC 1354 中未指定其他通訊協定。
MIB_IPPROTO_LOCAL
2
本機介面。
MIB_IPPROTO_NETMGMT
3
靜態路由。 此值可用來識別透過網路管理所設定 IP 路由的路由資訊,例如動態主機設定通訊協定 (DCHP) 、簡單網路管理通訊協定 (SNMP) ,或呼叫 CreateIpForwardEntryDeleteIpForwardEntrySetIpForwardEntry 函式。
MIB_IPPROTO_ICMP
4
ICMP 重新導向的結果。
MIB_IPPROTO_EGP
5
外部閘道通訊協定 (EGP) ,這是動態路由通訊協定。
MIB_IPPROTO_GGP
6
閘道對閘道通訊協定 (GGP) 動態路由通訊協定。
MIB_IPPROTO_HELLO
7
Hellospeak 通訊協定是動態路由通訊協定。 這是歷程記錄專案不再使用,而且是原始 ARPANET 路由器所使用的早期路由通訊協定,其執行稱為模糊球路由通訊協定的特殊軟體,有時稱為 Hellospeak,如 RFC 891 和 RFC 1305 中所述。 如需詳細資訊,請參閱 http://www.ietf.org/rfc/rfc891.txthttp://www.ietf.org/rfc/rfc1305.txt
MIB_IPPROTO_RIP
8
一種動態路由通訊協定, (RIP) 或 RIP-II。
MIB_IPPROTO_IS_IS
9
中繼系統對中繼系統 (IS-IS) 通訊協定,這是動態路由通訊協定。 IS-IS 通訊協定是針對開放系統互相連線 (OSI) 通訊協定套件所開發。
MIB_IPPROTO_ES_IS
10
端系統對中繼系統 (ES-IS) 通訊協定,這是動態路由通訊協定。 ES-IS 通訊協定是針對開放系統互相連線 (OSI) 通訊協定套件所開發。
MIB_IPPROTO_CISCO
11
Cisco Interior 閘道路由通訊協定 (IGRP) 動態路由通訊協定。
MIB_IPPROTO_BBN
12
使用最短路徑 First (SPF) 演算法的 Bolt、Beranek 和 Newman (BBN) 內部閘道通訊協定 (IGP) 。 這是早期動態路由通訊協定。
MIB_IPPROTO_OSPF
13
Open Shortest Path First (OSPF) 通訊協定,這是動態路由通訊協定。
MIB_IPPROTO_BGP
14
邊界閘道通訊協定 (BGP) ,這是動態路由通訊協定。
MIB_IPPROTO_NT_AUTOSTATIC
10002
原本由路由通訊協定新增的 Windows 特定專案,但現在是靜態的。
MIB_IPPROTO_NT_STATIC
10006
從路由使用者介面或路由命令新增為靜態路由的 Windows 特定專案。
MIB_IPPROTO_NT_STATIC_NON_DOD
10007
從路由使用者介面或路由命令新增為靜態路由的 Windows 特定專案,但這些路由不會造成 Dial On Demand (DOD) 。

ForwardProto

dwForwardAge

類型: DWORD

在網路路由表中新增或修改路由之後的秒數。

dwForwardNextHopAS

類型: DWORD

下一個躍點的自發系統編號。 當這個成員未知或不與 dwForwardProto中指定的通訊協定或路由機制無關時,此值應該設定為零。 此值記載于 RFC 1354 中。 如需詳細資訊,請參閱 http://www.ietf.org/rfc/rfc1354.txt

dwForwardMetric1

類型: DWORD

此路由的主要路由計量值。 此計量的語意取決於 dwForwardProto 成員中指定的路由通訊協定。 如果未使用此計量,其值應該設定為 -1。 此值記載于 RFC 1354 中。 如需詳細資訊,請參閱 http://www.ietf.org/rfc/rfc1354.txt

dwForwardMetric2

類型: DWORD

此路由的替代路由計量值。 此計量的語意取決於 dwForwardProto 成員中指定的路由通訊協定。 如果未使用此計量,其值應該設定為 -1。 此值記載于 RFC 1354 中。 如需詳細資訊,請參閱 http://www.ietf.org/rfc/rfc1354.txt

dwForwardMetric3

類型: DWORD

此路由的替代路由計量值。 此計量的語意取決於 dwForwardProto 成員中指定的路由通訊協定。 如果未使用此計量,其值應該設定為 -1。 此值記載于 RFC 1354 中。 如需詳細資訊,請參閱 http://www.ietf.org/rfc/rfc1354.txt

dwForwardMetric4

類型: DWORD

此路由的替代路由計量值。 此計量的語意取決於 dwForwardProto 成員中指定的路由通訊協定。 如果未使用此計量,其值應該設定為 -1。 此值記載于 RFC 1354 中。 如需詳細資訊,請參閱 http://www.ietf.org/rfc/rfc1354.txt

dwForwardMetric5

類型: DWORD

此路由的替代路由計量值。 此計量的語意取決於 dwForwardProto 成員中指定的路由通訊協定。 如果未使用此計量,其值應該設定為 -1。 此值記載于 RFC 1354 中。 如需詳細資訊,請參閱 http://www.ietf.org/rfc/rfc1354.txt

備註

GetIpForwardTable函式會列舉本機系統上的 IPv4 路由專案,並在包含MIB_IPFORWARDROW結構專案陣列的MIB_IPFORWARDTABLE結構中傳回這項資訊。

MIB_IPFORWARDROW結構的dwForwardDestdwForwardMaskdwForwardNextHop成員會以網路位元組順序表示 IPv4 位址。

MIB_IPFORWARDROW結構的dwForwardProto成員會指定產生路由的通訊協定或路由機制。 路由通訊協定識別碼可用來識別指定之路由通訊協定的路由資訊。 例如,MIB_IPPROTO_NETMGMT可用來識別透過網路管理所設定 IP 路由的路由資訊,例如動態主機設定通訊協定 (DCHP) 、簡單網路管理通訊協定 (SNMP) ,或呼叫CreateIpForwardEntry、DeleteIpForwardEntrySetIpForwardEntry函式。 如需可能的通訊協定和路由機制清單,請參閱 通訊協定識別碼

MIB_IPFORWARDROW結構dwForwardDest成員中的 IPv4 位址 0.0.0.0 會被視為預設路由。 安裝多個網路介面卡時, MIB_IPFORWARDTABLE 可能包含多個 MIB_IPFORWARDROW 專案, 其中 dwForwardDest 成員設定為 0.0.0.0。

當 dwForwardAge設定為INFINITE時,將不會根據逾時移除路由

值。 dwForwardAge的任何其他值會指定在網路路由表中新增或修改路由之後的秒數。

當路由和遠端存取服務 (RRAS) 執行時,在 Windows Server 2003 或 Windows 2000 Server 上,傳回 的MIB_IPFORWARDROW 專案會將 dwForwardTypedwForwardAge 成員設定為零。

在 Windows Vista 和 Windows Server 2008 上,MIB_IPFORWARDROW結構的dwForwardMetric1成員中指定的路由計量,代表新增至相關聯介面MIB_IPINTERFACE_ROW結構之Metric成員中所指定之介面計量的組合。 因此,MIB_IPFORWARDROW結構的dwForwardMetric1成員應該等於或大於相關聯MIB_IPINTERFACE_ROW結構的Metric成員。 如果應用程式想要將路由計量設定為 0,則MIB_IPFORWARDROW結構的dwForwardMetric1成員應該設定為等於相關聯MIB_IPINTERFACE_ROW結構之Metric成員中指定的介面計量值。 應用程式可以藉由呼叫 GetIpInterfaceEntry 函式來擷取介面計量。

IPv4 路由目前不會使用 MIB_IPFORWARDROW 結構的一些成員。 這些成員包括 dwForwardPolicydwForwardNextHopASdwForwardMetric2dwForwardMetric3dwForwardMetric4dwForwardMetric5

在針對 Windows Vista 和更新版本發行的 Microsoft Windows 軟體發展工具組 (SDK) 上,標頭檔的組織已變更。 此結構定義于 Ipmib.h 標頭檔中,而不是 在 Iprtrmib.h 標頭檔中。 請注意, Ipmib.h 標頭檔會自動包含在 Iprtrmib.h中,該檔案會自動包含在 Iphlpapi.h 標頭檔中。 不應該直接使用 Ipmib.hIprtrmib.h 標頭檔。

範例

若要檢視擷取 MIB_IPFORWARDTABLE 結構的範例,然後列印出此資料表中的 MIB_IPFORWARDROW 結構專案,請參閱 GetIpForwardTable 函式。

需求

   
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
標頭 ipmib.h (包含 Iphlpapi.h)

另請參閱

CreateIpForwardEntry

DeleteIpForwardEntry

GetIpForwardTable

GetIpInterfaceEntry

MIB_IPFORWARDTABLE

MIB_IPINTERFACE_ROW

通訊協定識別碼

SetIpForwardEntry