estructura de MIB_IPINTERFACE_ROW
La estructura MIB_IPINTERFACE_ROW almacena información de administración de interfaz para una familia de direcciones IP determinada en una interfaz de red.
Sintaxis
typedef struct _MIB_IPINTERFACE_ROW {
ADDRESS_FAMILY Family;
NET_LUID InterfaceLuid;
NET_IFINDEX InterfaceIndex;
ULONG MaxReassemblySize;
ULONG64 InterfaceIdentifier;
ULONG MinRouterAdvertisementInterval;
ULONG MaxRouterAdvertisementInterval;
BOOLEAN AdvertisingEnabled;
BOOLEAN ForwardingEnabled;
BOOLEAN WeakHostSend;
BOOLEAN WeakHostReceive;
BOOLEAN UseAutomaticMetric;
BOOLEAN UseNeighborUnreachabilityDetection;
BOOLEAN ManagedAddressConfigurationSupported;
BOOLEAN OtherStatefulConfigurationSupported;
BOOLEAN AdvertiseDefaultRoute;
NL_ROUTER_DISCOVERY_BEHAVIOR RouterDiscoveryBehavior;
ULONG DadTransmits;
ULONG BaseReachableTime;
ULONG RetransmitTime;
ULONG PathMtuDiscoveryTimeout;
NL_LINK_LOCAL_ADDRESS_BEHAVIOR LinkLocalAddressBehavior;
ULONG LinkLocalAddressTimeout;
ULONG ZoneIndices[ScopeLevelCount];
ULONG SitePrefixLength;
ULONG Metric;
ULONG NlMtu;
BOOLEAN Connected;
BOOLEAN SupportsWakeUpPatterns;
BOOLEAN SupportsNeighborDiscovery;
BOOLEAN SupportsRouterDiscovery;
ULONG ReachableTime;
NL_INTERFACE_OFFLOAD_ROD TransmitOffload;
NL_INTERFACE_OFFLOAD_ROD ReceiveOffload;
BOOLEAN DisableDefaultRoutes;
} MIB_IPINTERFACE_ROW, *PMIB_IPINTERFACE_ROW;
Miembros
Familia
Familia de direcciones. Los valores posibles para la familia de direcciones se enumeran en el archivo de encabezado Winsock2.h. Tenga en cuenta que los valores de la familia de direcciones AF_ y las constantes de familia de protocolos PF_ son idénticos (por ejemplo, AF_INET y PF_INET), por lo que puede usar cualquiera de las constantes.En Windows Vista y versiones posteriores de los sistemas operativos Windows, los valores posibles para este miembro se definen en el archivo de encabezado Ws2def.h. Tenga en cuenta que el archivo de encabezado Ws2def.h se incluye automáticamente en Netioapi.h y nunca debe usar Ws2def.h directamente.
Actualmente se admiten los siguientes valores:
AF_INET
Familia de direcciones IPv4.AF_INET6
Familia de direcciones IPv6.AF_UNSPEC
La familia de direcciones no está especificada.
InterfaceLuid
Identificador único local (LUID) de la interfaz de red.InterfaceIndex
Valor de índice local para la interfaz de red. Este valor de índice puede cambiar cuando un adaptador de red está deshabilitado y habilitado, o en otras circunstancias, y no debe considerarse persistente.MaxReassemblySize
Tamaño máximo del ensamblado, en bytes, de un paquete IP fragmentado. Este miembro se establece actualmente en cero y se reserva para su uso futuro.InterfaceIdentifier
Reservado para uso futuro. Este miembro está establecido actualmente en cero.MinRouterAdvertisementInterval
Intervalo mínimo de anuncios de enrutador, en milisegundos, en esta interfaz IP. Este miembro tiene como valor predeterminado 200 para IPv6. Este miembro solo es aplicable si el miembro AdvertisingEnabled está establecido en TRUE.MaxRouterAdvertisementInterval
El intervalo de anuncio de enrutador máximo, en milisegundos, en esta interfaz IP. Este miembro tiene como valor predeterminado 600 para IPv6. Este miembro solo es aplicable si el miembro AdvertisingEnabled está establecido en TRUE.AdvertisingEnabled
Valor que indica si la publicidad del enrutador está habilitada en esta interfaz IP. El valor predeterminado para IPv6 es que el anuncio de enrutador solo está habilitado si la interfaz está configurada para actuar como enrutador. El valor predeterminado para IPv4 es que el anuncio del enrutador está deshabilitado.ForwardingEnabled
Valor que indica si el reenvío IP está habilitado en esta interfaz IP.WeakHostSend
Valor que indica si el modo de envío de host débil está habilitado en esta interfaz IP.WeakHostReceive
Valor que indica si el modo de recepción de host débil está habilitado en esta interfaz IP.UseAutomaticMetric
Valor que indica si la interfaz IP usa la métrica automática.UseNeighborUnreachabilityDetection
Valor que indica si la detección de falta de acceso del vecino está habilitada en esta interfaz IP.ManagedAddressConfigurationSupported
Valor que indica si la interfaz IP admite la configuración de direcciones administradas mediante DHCP.OtherStatefulConfigurationSupported
Valor que indica si la interfaz IP admite otra configuración con estado (por ejemplo, configuración de ruta).AdvertiseDefaultRoute
Valor que indica si la interfaz IP anuncia la ruta predeterminada. Este miembro solo es aplicable si el miembro AdvertisingEnabled está establecido en TRUE.RouterDiscoveryBehavior
Tipo de comportamiento de detección de enrutador NL_ROUTER_DISCOVERY_BEHAVIOR .DadTransmits
Número de mensajes consecutivos que se envían mientras el controlador realiza la detección de direcciones duplicadas en una dirección de unidifusión IP provisional. Un valor de cero indica que la detección de direcciones duplicadas no se realiza en direcciones IP provisionales. Un valor de uno indica una única transmisión sin retransmisiones de seguimiento. Para IPv4, el valor predeterminado para este miembro es 3. Para IPv6, el valor predeterminado para este miembro es 1. En el caso de IPv6, estos mensajes se envían como solicitudes de solicitud de vecino (NS) IPv6. Este miembro se define como DupAddrDetectTransmits en RFC 2462. Para obtener más información, vea IPv6 "Stateless Address Autoconfiguration" (Configuración automática de direcciones sin estado).BaseReachableTime
Base del tiempo accesible aleatorio, en milisegundos. El miembro se describe en RFC 2461. Para obtener más información, vea "Detección de vecinos para ip versión 6 (IPv6)".RetransmitTime
Tiempo de espera de solicitud de vecino (NS) IPv6, en milisegundos. El miembro se describe en RFC 2461. Para obtener más información, vea "Detección de vecinos para ip versión 6 (IPv6)".PathMtuDiscoveryTimeout
Tiempo de espera de detección de MTU de ruta de acceso, en milisegundos.LinkLocalAddressBehavior
Un NL_LINK_LOCAL_ADDRESS_BEHAVIOR tipo de comportamiento de dirección local de vínculo.LinkLocalAddressTimeout
Tiempo de espera de la dirección IP local del vínculo, en milisegundos.ZoneIndices
Matriz que especifica la parte de zona de los identificadores de ámbito.SitePrefixLength
Longitud del prefijo del sitio, en bits, de la dirección de la interfaz IP. Longitud, en bits, del prefijo del sitio o de la parte de red de la dirección de la interfaz IP. Para una dirección IPv4, cualquier valor mayor que 32 es un valor no válido. Para una dirección IPv6, cualquier valor mayor que 128 es un valor no válido. Normalmente, se usa un valor de 255 para representar un valor no válido.Métrica
Métrica de interfaz. Tenga en cuenta que la métrica de ruta real que se usa para calcular la preferencia de ruta es la suma del desplazamiento de métrica de ruta que se especifica en el miembro Métrica de la estructura MIB_IPFORWARD_ROW2 y la métrica de interfaz que se especifica en este miembro.NlMtu
Tamaño de MTU de la capa de red, en bytes.Conectada
Valor que indica si la interfaz está conectada a un punto de acceso de red.SupportsWakeUpPatterns
Valor que especifica si la interfaz de red admite Wake on LAN.SupportsNeighborDiscovery
Valor que especifica si la interfaz IP admite la detección de vecinos.SupportsRouterDiscovery
Valor que especifica si la interfaz IP admite la detección de vecinos.ReachableTime
Base para el tiempo de acceso aleatorio, en milisegundos. El miembro se describe en RFC 2461. Para obtener más información, consulte Detección de vecinos para ip versión 6 (IPv6).TransmitOffload
Conjunto de marcas que indican las funcionalidades de descarga de transmisión para la interfaz IP. La estructura NL_INTERFACE_OFFLOAD_ROD se define en el archivo de encabezado Nldef.h.ReceiveOffload
Conjunto de marcas que indican las funcionalidades de descarga de recepción para la interfaz IP. La estructura NL_INTERFACE_OFFLOAD_ROD se define en el archivo de encabezado Nldef.h.DisableDefaultRoutes
Valor que indica si se debe deshabilitar el uso de la ruta predeterminada en la interfaz. Los clientes VPN pueden usar este miembro para restringir la tunelización dividida.
Observaciones
Los miembros Family, InterfaceLuid e InterfaceIndex identifican de forma única una entrada de MIB_IPINTERFACE_ROW.
Cuando un paquete de unidifusión llega a un host, la dirección IP debe determinar si el paquete está destinado localmente (su destino coincide con una dirección asignada a una interfaz del host). Las implementaciones de IP que siguen un modelo de host débil aceptan cualquier paquete destinado localmente, independientemente de la interfaz en la que se recibió el paquete. Las implementaciones de IP que siguen el modelo de host seguro solo aceptan paquetes destinados localmente si la dirección de destino del paquete coincide con una dirección asignada a la interfaz en la que se recibió el paquete. El modelo de host débil proporciona una mejor conectividad de red. Sin embargo, también hace que los hosts sean susceptibles a ataques de red basados en varios hogares.
La implementación IPv4 actual en los sistemas operativos Windows Server 2003 y Windows XP usa el modelo de host débil. La pila TCP/IP en Windows Vista y versiones posteriores de los sistemas operativos Windows admite el modelo de host seguro para IPv4 e IPv6 y está configurado para usar el modo de host seguro de forma predeterminada (los miembros WeakHostReceive y WeakHostSend se establecen en FALSE). Puede configurar la pila TCP/IP en Windows Vista y versiones posteriores para usar un modelo de host débil.
Una métrica 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. De forma predeterminada, la característica de métrica automática está habilitada ( UseAutomaticMetric está establecida en TRUE) en Windows XP y versiones posteriores. También puede configurar manualmente esta característica para asignar una métrica específica a una ruta IP.
La característica de métrica automática puede ser útil cuando la tabla de enrutamiento contiene varias rutas para el mismo destino. Por ejemplo, un equipo que tiene una interfaz de red de 10 megabits y una interfaz de red de 100 megabits tiene una puerta de enlace predeterminada configurada en ambas interfaces de red. Cuando UseAutomaticMetric es TRUE, esta característica puede forzar todo el tráfico destinado a Internet, por ejemplo, para usar la interfaz de red más rápida que está disponible.
La métrica de interfaz especificada en el miembro Métrica representa solo la métrica de la interfaz. La métrica de enrutamiento completa es una combinación de esta métrica de interfaz agregada al desplazamiento de la métrica de ruta que se especifica en el miembro Métrica de la estructura MIB_IPFORWARD_ROW2 de una entrada de ruta especificada en esta interfaz.
El acceso simultáneo sin privilegios a varias redes de diferentes requisitos de seguridad crea un agujero de seguridad y permite que un controlador sin privilegios retransmita accidentalmente los datos entre las dos redes. Un ejemplo típico es el acceso simultáneo a una red privada virtual (VPN) e Internet. Windows Server 2003 y Windows XP usan un modelo de host débil, donde el Servicio de acceso remoto (RAS) impide este acceso simultáneo aumentando la métrica de ruta de todas las rutas predeterminadas en otras interfaces. Por lo tanto, todo el tráfico se enruta a través de la interfaz VPN, lo que interrumpe otra conectividad de red.
En Windows Vista y versiones posteriores, de forma predeterminada, se usa un modelo de host seguro. Si se especifica una dirección IP de origen en la búsqueda de ruta mediante la función GetBestRoute2 , la búsqueda de rutas está restringida a la interfaz de la dirección IP de origen. La modificación de la métrica de ruta por RAS no tiene ningún efecto porque la lista de rutas potenciales ni siquiera tiene la ruta para la interfaz VPN, lo que permite el tráfico a Internet. El controlador puede usar el miembro DisableDefaultRoutes de la estructura MIB_IPINTERFACE_ROW para deshabilitar el uso de la ruta predeterminada en una interfaz. Los clientes VPN pueden usar este miembro como medida de seguridad para restringir la tunelización dividida cuando el cliente VPN no requiere la tunelización dividida. Un cliente VPN puede llamar a la función SetIpInterfaceEntry para establecer el miembro DisableDefaultRoutes en TRUE cuando sea necesario. Un cliente VPN puede consultar el estado actual del miembro DisableDefaultRoutes llamando a la función GetIpInterfaceEntry .
Requisitos
Versión |
Disponible en Windows Vista y versiones posteriores de los sistemas operativos Windows. |
Encabezado |
Netioapi.h (incluya Netioapi.h) |