estructura MIB_IPFORWARDROW (ipmib.h)

La estructura MIB_IPFORWARDROW contiene información que describe una ruta de red IPv4.

Sintaxis

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;

Members

dwForwardDest

Tipo: DWORD

Dirección IPv4 de destino de la ruta. Una entrada con una dirección IPv4 de 0.0.0.0 se considera una ruta predeterminada. Este miembro no se puede establecer en una dirección IPv4 de multidifusión (clase D).

dwForwardMask

Tipo: DWORD

Máscara de subred IPv4 que se va a usar con la dirección IPv4 de destino antes de compararse con el valor del miembro dwForwardDest .

El valor dwForwardMask debe aplicarse a la dirección IPv4 de destino (lógica y operación) antes de una comparación con el valor del miembro dwForwardDest .

dwForwardPolicy

Tipo: DWORD

Conjunto de condiciones que provocarían la selección de una ruta de múltiples rutas (el conjunto de próximo saltos para un destino determinado). Este miembro suele estar en formato IP TOS. Esta codificación de este miembro se describe en RFC 1354. Para más información, consulte http://www.ietf.org/rfc/rfc1354.txt.

dwForwardNextHop

Tipo: DWORD

En el caso de las rutas remotas, la dirección IPv4 del siguiente sistema en ruta. De lo contrario, este miembro debe ser una dirección IPv4 de 0.0.0.0.

dwForwardIfIndex

Tipo: DWORD

Índice de la interfaz local a través del cual se debe alcanzar el próximo salto de esta ruta.

dwForwardType

Tipo: DWORD

Tipo de ruta tal y como se describe en RFC 1354. Para más información, consulte http://www.ietf.org/rfc/rfc1354.txt.

Este miembro puede ser uno de los valores definidos en el archivo de encabezado Iprtmib.h .

En Windows Vista y versiones posteriores, los archivos de encabezado se reorganizaron y este miembro puede ser uno de los valores del tipo de enumeración MIB_IPFORWARD_TYPE definido en el archivo de encabezado Ipmib.h . Tenga en cuenta que el encabezado Ipmib.h se incluye automáticamente en el archivo de encabezado Iprtrmib.h que el encabezado Iphlpapi.h incluye automáticamente. Los archivos de encabezado Iprtrmib.h e Ipmib.h nunca se deben usar directamente.

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

Valor Significado
MIB_IPROUTE_TYPE_OTHER
1
Otro tipo no especificado en RFC 1354.
MIB_IPROUTE_TYPE_INVALID
2
Una ruta no válida. Este valor puede resultar de una ruta agregada por un redireccionamiento ICMP.
MIB_IPROUTE_TYPE_DIRECT
3
Una ruta local donde el próximo salto es el destino final (una interfaz local).
MIB_IPROUTE_TYPE_INDIRECT
4
La ruta remota donde el próximo salto no es el destino final (un destino remoto).

ForwardType

dwForwardProto

Tipo: DWORD

Protocolo o mecanismo de enrutamiento que generó la ruta tal y como se describe en RFC 1354. Para más información, consulte http://www.ietf.org/rfc/rfc1354.txt. Consulte Identificadores de protocolo para obtener una lista de los posibles identificadores de protocolo usados por los protocolos de enrutamiento.

Este miembro puede ser uno de los valores definidos en el archivo de encabezado Iprtmib.h . Los valores de este miembro pueden ser uno de los valores de MIB_IPPROTO_xxx definidos en el archivo de encabezado Iprtmib.h o uno de los valores de PROTO_IP_xxx definidos en el archivo de encabezado routprot.h , ya que estos valores son los mismos.

En Windows Vista y versiones posteriores, los archivos de encabezado se reorganizaron y este miembro puede ser uno de los valores definidos en el archivo de encabezado Nldef.h . 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
Otro protocolo no especificado en RFC 1354.
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 CreateIpForwardEntry, DeleteIpForwardEntry o SetIpForwardEntry .
MIB_IPPROTO_ICMP
4
Resultado de la 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).

ForwardProto

dwForwardAge

Tipo: DWORD

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

dwForwardNextHopAS

Tipo: DWORD

Número de sistema autónomo del próximo salto. Cuando este miembro es desconocido o no es relevante para el protocolo o el mecanismo de enrutamiento especificado en dwForwardProto, este valor debe establecerse en cero. Este valor se documenta en RFC 1354. Para obtener más información, vea http://www.ietf.org/rfc/rfc1354.txt.

dwForwardMetric1

Tipo: DWORD

Valor de métrica de enrutamiento principal para esta ruta. La semántica de esta métrica viene determinada por el protocolo de enrutamiento especificado en el miembro dwForwardProto . Si no se usa esta métrica, su valor debe establecerse en -1. Este valor se documenta en RFC 1354. Para obtener más información, vea http://www.ietf.org/rfc/rfc1354.txt.

dwForwardMetric2

Tipo: DWORD

Un valor de métrica de enrutamiento alternativo para esta ruta. La semántica de esta métrica viene determinada por el protocolo de enrutamiento especificado en el miembro dwForwardProto . Si no se usa esta métrica, su valor debe establecerse en -1. Este valor se documenta en RFC 1354. Para obtener más información, vea http://www.ietf.org/rfc/rfc1354.txt.

dwForwardMetric3

Tipo: DWORD

Un valor de métrica de enrutamiento alternativo para esta ruta. La semántica de esta métrica viene determinada por el protocolo de enrutamiento especificado en el miembro dwForwardProto . Si no se usa esta métrica, su valor debe establecerse en -1. Este valor se documenta en RFC 1354. Para obtener más información, vea http://www.ietf.org/rfc/rfc1354.txt.

dwForwardMetric4

Tipo: DWORD

Un valor de métrica de enrutamiento alternativo para esta ruta. La semántica de esta métrica viene determinada por el protocolo de enrutamiento especificado en el miembro dwForwardProto . Si no se usa esta métrica, su valor debe establecerse en -1. Este valor se documenta en RFC 1354. Para obtener más información, vea http://www.ietf.org/rfc/rfc1354.txt.

dwForwardMetric5

Tipo: DWORD

Un valor de métrica de enrutamiento alternativo para esta ruta. La semántica de esta métrica viene determinada por el protocolo de enrutamiento especificado en el miembro dwForwardProto . Si no se usa esta métrica, su valor debe establecerse en -1. Este valor se documenta en RFC 1354. Para obtener más información, vea http://www.ietf.org/rfc/rfc1354.txt.

Comentarios

La función GetIpForwardTable enumera las entradas de ruta IPv4 en un sistema local y devuelve esta información en una estructura MIB_IPFORWARDTABLE que contiene una matriz de entradas de estructura MIB_IPFORWARDROW .

Los miembros dwForwardDest, dwForwardMask y dwForwardNextHop de la estructura MIB_IPFORWARDROW representan direcciones IPv4 en orden de bytes de red.

El miembro dwForwardProto de la estructura MIB_IPFORWARDROW especifica el protocolo o el mecanismo de enrutamiento que generó la ruta. Los identificadores de protocolo de enrutamiento se usan para identificar la información de ruta del protocolo de enrutamiento especificado. Por ejemplo, MIB_IPPROTO_NETMGMT 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 CreateIpForwardEntry, DeleteIpForwardEntry o SetIpForwardEntry . Consulte Identificadores de protocolo para obtener una lista de los posibles protocolos y mecanismos de enrutamiento.

Una dirección IPv4 de 0.0.0.0 en el miembro dwForwardDest de la estructura MIB_IPFORWARDROW se considera una ruta predeterminada. El MIB_IPFORWARDTABLE puede contener varias entradas de MIB_IPFORWARDROW con el miembro dwForwardDest establecido en 0.0.0.0 cuando hay varios adaptadores de red instalados.

Cuando dwForwardAge se establece en INFINITE, la ruta no se quitará en función de un tiempo de espera.

. Cualquier otro valor de dwForwardAge especifica el número de segundos desde que se agregó o modificó la ruta en la tabla de enrutamiento de red.

En Windows Server 2003 o Windows 2000 Server cuando se ejecuta el Servicio de enrutamiento y acceso remoto (RRAS), las entradas MIB_IPFORWARDROW devueltas tienen los miembros dwForwardType y dwForwardAge establecidos en cero.

En Windows Vista y Windows Server 2008, la métrica de ruta especificada en el miembro dwForwardMetric1 de la estructura MIB_IPFORWARDROW representa una combinación de la métrica de ruta agregada a la métrica de interfaz especificada en el miembro Metric de la estructura MIB_IPINTERFACE_ROW de la interfaz asociada. Por lo tanto, el miembro dwForwardMetric1 de la estructura MIB_IPFORWARDROW debe ser igual o mayor que el miembro Metric de la estructura de MIB_IPINTERFACE_ROW asociada. Si una aplicación desea establecer la métrica de ruta en 0, el miembro dwForwardMetric1 de la estructura MIB_IPFORWARDROW debe establecerse igual al valor de la métrica de interfaz especificada en el miembro Metric de la estructura MIB_IPINTERFACE_ROW asociada. Una aplicación puede recuperar la métrica de interfaz llamando a la función GetIpInterfaceEntry .

El enrutamiento IPv4 no usa actualmente varios miembros de la estructura de MIB_IPFORWARDROW . Estos miembros incluyen dwForwardPolicy, dwForwardNextHopAS, dwForwardMetric2, dwForwardMetric3, dwForwardMetric4 y dwForwardMetric5.

En el Kit de desarrollo de software (SDK) de Microsoft Windows publicado para Windows Vista y versiones posteriores, la organización de los archivos de encabezado ha cambiado. Esta estructura se define en el archivo de encabezado Ipmib.h , no en el archivo de encabezado Iprtrmib.h . Tenga en cuenta que el archivo de encabezado Ipmib.h se incluye automáticamente en Iprtrmib.h, que se incluye automáticamente en el archivo de encabezado Iphlpapi.h . Los archivos de encabezado Ipmib.h e Iprtrmib.h nunca se deben usar directamente.

Ejemplos

Para ver un ejemplo que recupera la estructura MIB_IPFORWARDTABLE y, a continuación, imprime las entradas de estructura MIB_IPFORWARDROW de esta tabla, consulte la función GetIpForwardTable .

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado ipmib.h (incluya Iphlpapi.h)

Consulte también

CreateIpForwardEntry

DeleteIpForwardEntry

GetIpForwardTable

GetIpInterfaceEntry

MIB_IPFORWARDTABLE

MIB_IPINTERFACE_ROW

Identificadores de protocolo

SetIpForwardEntry