Sdílet prostřednictvím


SetIpForwardEntry2 – funkce

Funkce SetIpForwardEntry2 nastaví vlastnosti položky trasy PROTOKOLU IP na místním počítači.

Syntax

NETIOAPI_API SetIpForwardEntry2(
  _In_ const MIB_IPFORWARD_ROW2 *Route
);

Parametry

  • route [in]
    Ukazatel na položku MIB_IPFORWARD_ROW2 struktury pro položku trasy IP. Ovladač musí nastavit DestinationPrefix člen struktury MIB_IPFORWARD_ROW2 na platnou cílovou předponu a řadu IP adres, nastavit NextHop člen MIB_IPFORWARD_ROW2 na platnou IP adresu a rodinu a zadat InterfaceLuid člen nebo InterfaceIndex člen MIB_IPFORWARD_ROW2.

Návratová hodnota

SetIpForwardEntry2 vrátí STATUS_SUCCESS, pokud bude funkce úspěšná.

Pokud funkce selže, SetIpForwardEntry2 vrátí jeden z následujících kódů chyb:

Návratový kód Popis
STATUS_INVALID_PARAMETER

Funkci byla předána neplatná hodnota parametru. Tato chyba se vrátí, pokud se v parametru Route předá ukazatel NULL, DestinationPrefix člen struktury MIB_IPFORWARD_ROW2, ke které route parametr odkazuje, nebyl zadán NextHop člen struktury MIB_IPFORWARD_ROW2, interfaceLuid i InterfaceIndex členy MIB_IPFORWARD_ROW2 struktury nebyly zadány.

STATUS_NOT_FOUND

Zadané rozhraní nebylo nalezeno. Tato chyba se vrátí, pokud funkce nemůže najít síťové rozhraní určené InterfaceLuid nebo InterfaceIndex člen struktury MIB_IPFORWARD_ROW2, na kterou odkazuje parametr Route.

Jiné

Pomocí funkce FormatMessage získejte řetězec zprávy pro vrácenou chybu.

Poznámky

Funkce SetIpForwardEntry2 slouží k nastavení vlastností existující položky trasy PROTOKOLU IP v místním počítači.

Ovladač musí inicializovat následující členy struktury MIB_IPFORWARD_ROW2, na které odkazuje řádek parametru.

  • DestinationPrefix
    Nastavte platnou předponu adresy IPv4 nebo IPv6 a rodinu.

  • nextHop
    Nastavte platnou adresu IPv4 nebo IPv6 a rodinu.

  • InterfaceLuid nebo InterfaceIndex
    Tito členové se používají v pořadí, které je uvedeno dříve. Pokud je tedy zadán InterfaceLuid, použije se tento člen k určení rozhraní. Pokud nebyla nastavena žádná hodnota pro InterfaceLuid člen (hodnota tohoto členu byla nastavena na nulu), InterfaceIndex člen se použije k určení rozhraní.

Posun metriky trasy zadaný v metriky člen struktury MIB_IPFORWARD_ROW2, která Route parametr odkazuje, představuje pouze část celé metriky trasy. Úplná metrika je kombinací tohoto posunu metriky trasy přidané do metriky rozhraní zadané v metriky člen MIB_IPINTERFACE_ROW struktury přidruženého rozhraní. Ovladač může načíst metriku rozhraní voláním funkce GetIpInterfaceEntry.

SetIpForwardEntry2 ignoruje Age a Origin členy struktury MIB_IPFORWARD_ROW2, na kterou odkazuje řádek parametr. Tyto členy jsou nastaveny zásobníkem sítě a nelze je změnit pomocí funkce SetIpForwardEntry2.

Funkce SetIpForwardEntry2 selže, pokud DestinationPrefix a nextHop členy struktury MIB_IPFORWARD_ROW2, že parametr Route odkazuje tak, aby neodpovídala položce trasy IP zadaného rozhraní.

Požadavky

Cílová platforma

univerzální

Verze

K dispozici v systémech Windows Vista a novějších verzích operačních systémů Windows.

Záhlaví

Netioapi.h (včetně Netioapi.h)

Knihovna

Netio.lib

IRQL

< DISPATCH_LEVEL

Viz také

CreateIpForwardEntry2

DeleteIpForwardEntry2

GetBestRoute2

GetIpForwardEntry2

GetIpForwardTable2

GetIpInterfaceEntry

InitializeIpForwardEntry

MIB_IPFORWARD_ROW2

MIB_IPFORWARD_TABLE2

MIB_IPINTERFACE_ROW

NotifyRouteChange2