estructura MIB_IPFORWARD_ROW2 (netioapi.h)

La estructura MIB_IPFORWARD_ROW2 almacena información sobre una entrada de ruta IP.

Sintaxis

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;

Miembros

InterfaceLuid

Tipo: NET_LUID

Identificador único local (LUID) de la interfaz de red asociada a esta entrada de ruta IP.

InterfaceIndex

Tipo: NET_IFINDEX

Valor de índice local de la interfaz de red asociada a esta entrada de ruta IP. Este valor de índice puede cambiar cuando un adaptador de red está deshabilitado y, a continuación, habilitado, o en otras circunstancias, y no debe considerarse persistente.

DestinationPrefix

Tipo: IP_ADDRESS_PREFIX

Prefijo de dirección IP para la dirección IP de destino de esta ruta.

NextHop

Tipo: SOCKADDR_INET

Para una ruta remota, la dirección IP del siguiente sistema o puerta de enlace en ruta. Si la ruta es a una dirección de bucle invertido local o a una dirección IP en el vínculo local, el próximo salto no se especifica (todos los ceros). Para una ruta de bucle invertido local, este miembro debe ser una dirección IPv4 de 0.0.0.0 para una entrada de ruta IPv4 o una dirección IPv6 de 0::0 para una entrada de ruta IPv6.

SitePrefixLength

Tipo: UCHAR

Longitud, en bits, del prefijo del sitio o de la parte de red de la dirección IP de esta ruta. Para una entrada de ruta IPv4, cualquier valor mayor que 32 es un valor no válido. Para una entrada de ruta IPv6, cualquier valor mayor que 128 es un valor no válido. Un valor de 255 se usa normalmente para representar un valor no válido.

ValidLifetime

Tipo: ULONG

El tiempo máximo, en segundos, que la entrada de ruta IP es válida. Un valor de 0xffffffff se considera infinito.

PreferredLifetime

Tipo: ULONG

El tiempo preferido, en segundos, que la entrada de ruta IP es válida. Un valor de 0xffffffff se considera infinito.

Metric

Tipo: ULONG

Valor de desplazamiento de métrica de ruta para esta entrada de ruta IP. Tenga en cuenta que la métrica de ruta real que se usa para calcular la preferencia de ruta es la suma de la métrica de interfaz especificada en el miembro Métrica de la estructura MIB_IPINTERFACE_ROW y el desplazamiento de métrica de ruta especificado en este miembro. La semántica de esta métrica viene determinada por el protocolo de enrutamiento especificado en el miembro Protocolo . Si no se usa esta métrica, su valor debe establecerse en -1. Este valor se documenta en RFC 4292. Para obtener más información, vea http://www.ietf.org/rfc/rfc4292.txt.

Protocol

Tipo: NL_ROUTE_PROTOCOL

Mecanismo de enrutamiento en el que se agregó esta ruta IP. Este miembro puede ser uno de los valores del tipo de enumeración NL_ROUTE_PROTOCOL definido en el archivo de encabezado Nldef.h . El miembro se describe en RFC 4292. Para obtener más información, vea http://www.ietf.org/rfc/rfc4292.txt.

Tenga en cuenta que el encabezado Nldef.h se incluye automáticamente en el archivo de encabezado Ipmib.h que el encabezado Iprtrmib.h incluye automáticamente. El encabezado Iphlpapi.h incluye automáticamente el archivo de encabezado Iprtrmib.h . Los archivos de encabezado Iprtrmib.h, Ipmib.h y Nldef.h nunca se deben usar directamente.

En la lista siguiente se muestran los valores posibles para este miembro.

Valor Significado
MIB_IPPROTO_OTHER
1
No se especificó el mecanismo de enrutamiento.
MIB_IPPROTO_LOCAL
2
Interfaz local.
MIB_IPPROTO_NETMGMT
3
Una ruta estática. Este valor se usa para identificar la información de ruta para el enrutamiento IP establecido a través de la administración de red, como el Protocolo de configuración dinámica de host (DCHP), el Protocolo simple de administración de redes (SNMP) o mediante llamadas a las funciones CreateIpForwardEntry2, DeleteIpForwardEntry2 o SetIpForwardEntry2 .
MIB_IPPROTO_ICMP
4
Resultado de una redirección ICMP.
MIB_IPPROTO_EGP
5
Protocolo exterior de puerta de enlace (EGP), un protocolo de enrutamiento dinámico.
MIB_IPPROTO_GGP
6
El protocolo de puerta de enlace a puerta de enlace (GGP), un protocolo de enrutamiento dinámico.
MIB_IPPROTO_HELLO
7
El protocolo Hellospeak, un protocolo de enrutamiento dinámico. Esta es una entrada histórica que ya no está en uso y fue un protocolo de enrutamiento temprano usado por los enrutadores ARPANET originales que ejecutaron software especial llamado protocolo de enrutamiento de Fuzzball, a veces llamado Hellospeak, como se describe en RFC 891 y RFC 1305. Para obtener más información, vea http://www.ietf.org/rfc/rfc891.txt y http://www.ietf.org/rfc/rfc1305.txt.
MIB_IPPROTO_RIP
8
El Protocolo de información de enrutamiento de Berkeley (RIP) o RIP-II, un protocolo de enrutamiento dinámico.
MIB_IPPROTO_IS_IS
9
El protocolo sistema intermedio a intermedio (IS-IS), un protocolo de enrutamiento dinámico. El protocolo IS-IS se desarrolló para su uso en el conjunto de protocolos de interconexión de sistemas abiertos (OSI).
MIB_IPPROTO_ES_IS
10
El protocolo End System-to-Intermediate System (ES-IS), un protocolo de enrutamiento dinámico. El protocolo ES-IS se desarrolló para su uso en el conjunto de protocolos de interconexión de sistemas abiertos (OSI).
MIB_IPPROTO_CISCO
11
El Cisco Interior Gateway Routing Protocol (IGRP), un protocolo de enrutamiento dinámico.
MIB_IPPROTO_BBN
12
Bolt, Beranek y Newman (BBN) Protocolo de puerta de enlace interior (IGP) que usaban el algoritmo Shortest Path First (SPF). Se trata de un protocolo de enrutamiento dinámico temprano.
MIB_IPPROTO_OSPF
13
El protocolo Open Shortest Path First (OSPF), un protocolo de enrutamiento dinámico.
MIB_IPPROTO_BGP
14
Border Gateway Protocol (BGP), un protocolo de enrutamiento dinámico.
MIB_IPPROTO_NT_AUTOSTATIC
10002
Una entrada específica de Windows agregada originalmente por un protocolo de enrutamiento, pero que ahora es estática.
MIB_IPPROTO_NT_STATIC
10006
Una entrada específica de Windows agregada como una ruta estática desde la interfaz de usuario de enrutamiento o un comando de enrutamiento.
MIB_IPPROTO_NT_STATIC_NON_DOD
10007
Una entrada específica de Windows agregada como una ruta estática desde la interfaz de usuario de enrutamiento o un comando de enrutamiento, salvo que estas rutas no provocan dial on demand (DOD).

Loopback

Tipo: BOOLEAN

Valor que especifica si la ruta es una ruta de bucle invertido (la puerta de enlace está en el host local).

AutoconfigureAddress

Tipo: BOOLEAN

Valor que especifica si la dirección IP está configurada automáticamente.

Publish

Tipo: BOOLEAN

Valor que especifica si se publica la ruta.

Immortal

Tipo: BOOLEAN

Valor que especifica si la ruta es inmortal.

Age

Tipo: ULONG

Número de segundos desde que se agregó o modificó la ruta en la tabla de enrutamiento de red.

Origin

Tipo: NL_ROUTE_ORIGIN

Origen de la ruta. Este miembro puede ser uno de los valores del tipo de enumeración NL_ROUTE_ORIGIN definido en el archivo de encabezado Nldef.h .

Valor Significado
NlroManual
0
Resultado de la configuración manual.
NlroWellKnown
1
Una ruta conocida.
NlroDHCP
2
Resultado de la configuración de DHCP.
NlroRouterAdvertisement
3
El resultado del anuncio del enrutador.
Nlro6to4
4
Resultado de la tunelización de 6to4.

Comentarios

La estructura MIB_IPFORWARD_ROW2 se define en Windows Vista y versiones posteriores.

La función GetIpForwardTable2 enumera las entradas de ruta IP en un sistema local y devuelve esta información en una estructura de MIB_IPFORWARD_TABLE2 como una matriz de MIB_IPFORWARD_ROW2 entradas.

La función GetIpForwardEntry2 recupera una única entrada de ruta IP y devuelve esta información en una estructura MIB_IPFORWARD_ROW2 .

Una entrada con el prefijo y los miembros PrefixLength del IP_ADDRESS_PREFIX establecido en cero en el miembro DestinationPrefix de la estructura MIB_IPFORWARD_ROW2 se considera una ruta predeterminada. El MIB_IPFORWARD_TABLE2 puede contener varias entradas de MIB_IPFORWARD_ROW2 con los miembros Prefix y PrefixLength del IP_ADDRESS_PREFIX establecido en cero en el miembro DestinationPrefix cuando hay varios adaptadores de red instalados.

El miembro Metric de una entrada de MIB_IPFORWARD_ROW2 es un valor que se asigna a una ruta IP para una interfaz de red determinada que identifica el costo asociado al uso de esa ruta. Por ejemplo, la métrica se puede valorar en términos de velocidad de vínculo, recuento de saltos o retraso de tiempo. La métrica automática es una característica en Windows XP y versiones posteriores que configura automáticamente la métrica para las rutas locales que se basan en la velocidad del vínculo. La característica de métrica automática está habilitada de forma predeterminada (el miembro UseAutomaticMetric de la estructura MIB_IPINTERFACE_ROW se establece en TRUE) en Windows XP y versiones posteriores. También se puede configurar manualmente para asignar una métrica específica a una ruta IP.

La métrica de ruta especificada en el miembro Métrica de la estructura MIB_IPFORWARD_ROW2 representa solo el desplazamiento de la métrica de ruta. La métrica completa es una combinación de este desplazamiento de métrica de ruta agregado a la métrica de interfaz especificada en el miembro Métrica de la estructura MIB_IPINTERFACE_ROW de la interfaz asociada. Una aplicación puede recuperar la métrica de interfaz llamando a la función GetIpInterfaceEntry .

Tenga en cuenta que el archivo de encabezado Netioapi.h se incluye automáticamente en el archivo de encabezado Iphlpapi.h . El archivo de encabezado Netioapi.h nunca se debe usar directamente.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Encabezado netioapi.h (incluya Iphlpapi.h)

Consulte también

CreateIpForwardEntry2

DeleteIpForwardEntry2

GetIpForwardEntry2

GetIpForwardTable2

GetIpInterfaceEntry

IP_ADDRESS_PREFIX

MIB_IPFORWARD_TABLE2

MIB_IPINTERFACE_ROW

SOCKADDR_INET

SetIpForwardEntry2