estrutura MIB_IPFORWARD_ROW2 (netioapi.h)
A estrutura MIB_IPFORWARD_ROW2 armazena informações sobre uma entrada de rota IP.
Sintaxe
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;
Membros
InterfaceLuid
Tipo: NET_LUID
O LUID (identificador exclusivo local) para o adaptador de rede associado a essa entrada de rota IP.
InterfaceIndex
Tipo: NET_IFINDEX
O valor do índice local para o adaptador de rede associado a essa entrada de rota IP. Esse valor de índice pode ser alterado quando um adaptador de rede é desabilitado e, em seguida, habilitado ou em outras circunstâncias, e não deve ser considerado persistente.
DestinationPrefix
Tipo: IP_ADDRESS_PREFIX
O prefixo de endereço IP para o endereço IP de destino para essa rota.
NextHop
Tipo: SOCKADDR_INET
Para uma rota remota, o endereço IP do próximo sistema ou gateway a caminho. Se a rota for para um endereço de loopback local ou um endereço IP no link local, o próximo salto não será especificado (todos os zeros). Para uma rota de loopback local, esse membro deve ser um endereço IPv4 de 0.0.0.0 para uma entrada de rota IPv4 ou um endereço IPv6 de 0::0 para uma entrada de rota IPv6.
SitePrefixLength
Tipo: UCHAR
O comprimento, em bits, do prefixo do site ou parte da rede do endereço IP dessa rota. Para uma entrada de rota IPv4, qualquer valor maior que 32 é um valor inválido. Para uma entrada de rota IPv6, qualquer valor maior que 128 é um valor inválido. Um valor de 255 é comumente usado para representar um valor inválido.
ValidLifetime
Tipo: ULONG
O tempo máximo, em segundos, em que a entrada de rota IP é válida. Um valor de 0xffffffff é considerado infinito.
PreferredLifetime
Tipo: ULONG
O tempo preferencial, em segundos, em que a entrada de rota IP é válida. Um valor de 0xffffffff é considerado infinito.
Metric
Tipo: ULONG
O valor de deslocamento da métrica de rota para essa entrada de rota IP. Observe que a métrica de rota real usada para calcular a preferência de rota é a soma da métrica de interface especificada no membro Métrica da estrutura de MIB_IPINTERFACE_ROW e o deslocamento de métrica de rota especificado neste membro. A semântica dessa métrica é determinada pelo protocolo de roteamento especificado no membro Protocolo . Se essa métrica não for usada, seu valor deverá ser definido como -1. Esse valor está documentado no RFC 4292. Para obter mais informações, consulte http://www.ietf.org/rfc/rfc4292.txt.
Protocol
Tipo: NL_ROUTE_PROTOCOL
O mecanismo de roteamento de como essa rota IP foi adicionada. Esse membro pode ser um dos valores do tipo de enumeração NL_ROUTE_PROTOCOL definido no arquivo de cabeçalho Nldef.h . O membro é descrito em RFC 4292. Para obter mais informações, consulte http://www.ietf.org/rfc/rfc4292.txt.
Observe que o cabeçalho Nldef.h é incluído automaticamente pelo arquivo de cabeçalho Ipmib.h , que é incluído automaticamente pelo cabeçalho Iprtrmib.h . O cabeçalho Iphlpapi.h inclui automaticamente o arquivo de cabeçalho Iprtrmib.h . Os arquivos de cabeçalho Iprtrmib.h, Ipmib.h e Nldef.h nunca devem ser usados diretamente.
A lista a seguir mostra os valores possíveis para esse membro.
Valor | Significado |
---|---|
|
O mecanismo de roteamento não foi especificado. |
|
Uma interface local. |
|
Uma rota estática. Esse valor é usado para identificar informações de rota para o conjunto de roteamento de IP por meio do gerenciamento de rede, como o DCHP (Dynamic Host Configuration Protocol), o protocolo SNMP ou chamadas para as funções CreateIpForwardEntry2, DeleteIpForwardEntry2 ou SetIpForwardEntry2 . |
|
O resultado de um redirecionamento ICMP. |
|
O Protocolo de Gateway Exterior (EGP), um protocolo de roteamento dinâmico. |
|
O Protocolo de Gateway para Gateway (GGP), um protocolo de roteamento dinâmico. |
|
O protocolo Hellospeak, um protocolo de roteamento dinâmico. Essa é uma entrada histórica que não está mais em uso e foi um protocolo de roteamento inicial usado pelos roteadores ARPANET originais que executavam um software especial chamado de protocolo de roteamento Fuzzball, às vezes chamado hellospeak, conforme descrito em RFC 891 e RFC 1305. Para obter mais informações, consulte http://www.ietf.org/rfc/rfc891.txt e http://www.ietf.org/rfc/rfc1305.txt. |
|
O RIP (Berkeley Routing Information Protocol) ou RIP-II, um protocolo de roteamento dinâmico. |
|
O protocolo IS-IS (Sistema Intermediário para Sistema Intermediário), um protocolo de roteamento dinâmico. O protocolo IS-IS foi desenvolvido para uso no conjunto de protocolos OSI (Open Systems Interconnection). |
|
O protocolo ES-IS (End System-to-Intermediate System), um protocolo de roteamento dinâmico. O protocolo ES-IS foi desenvolvido para uso no conjunto de protocolos OSI (Open Systems Interconnection). |
|
O Cisco Interior Gateway Routing Protocol (IGRP), um protocolo de roteamento dinâmico. |
|
O Bolt, Beranek e Newman (BBN) Protocolo de Gateway interior (IGP) que usou o algoritmo SPF (Shortest Path First). Este era um protocolo de roteamento dinâmico inicial. |
|
O protocolo OSPF (Open Shortest Path First), um protocolo de roteamento dinâmico. |
|
O BGP (Border Gateway Protocol), um protocolo de roteamento dinâmico. |
|
Uma entrada específica do Windows adicionada originalmente por um protocolo de roteamento, mas que agora é estática. |
|
Uma entrada específica do Windows adicionada como uma rota estática da interface do usuário de roteamento ou um comando de roteamento. |
|
Uma entrada específica do Windows adicionada como uma rota estática da interface do usuário de roteamento ou um comando de roteamento, exceto que essas rotas não causam DOD (Discagem Sob Demanda). |
Loopback
Tipo: BOOLEAN
Um valor que especifica se a rota é uma rota de loopback (o gateway está no host local).
AutoconfigureAddress
Tipo: BOOLEAN
Um valor que especifica se o endereço IP está configurado automaticamente.
Publish
Tipo: BOOLEAN
Um valor que especifica se a rota é publicada.
Immortal
Tipo: BOOLEAN
Um valor que especifica se a rota é imortal.
Age
Tipo: ULONG
O número de segundos desde que a rota foi adicionada ou modificada na tabela de roteamento de rede.
Origin
Tipo: NL_ROUTE_ORIGIN
A origem da rota. Esse membro pode ser um dos valores do tipo de enumeração NL_ROUTE_ORIGIN definido no arquivo de cabeçalho Nldef.h .
Comentários
A estrutura MIB_IPFORWARD_ROW2 é definida no Windows Vista e posterior.
A função GetIpForwardTable2 enumera as entradas de rota IP em um sistema local e retorna essas informações em uma estrutura MIB_IPFORWARD_TABLE2 como uma matriz de entradas de MIB_IPFORWARD_ROW2 .
A função GetIpForwardEntry2 recupera uma única entrada de rota IP e retorna essas informações em uma estrutura MIB_IPFORWARD_ROW2 .
Uma entrada com o Prefixo e os membros PrefixLength do IP_ADDRESS_PREFIX definida como zero no membro DestinationPrefix na estrutura MIB_IPFORWARD_ROW2 é considerada uma rota padrão. O MIB_IPFORWARD_TABLE2 pode conter várias entradas MIB_IPFORWARD_ROW2 com o Prefixo e os membros PrefixLength do IP_ADDRESS_PREFIX definido como zero no membro DestinationPrefix quando houver vários adaptadores de rede instalados.
O membro Métrica de uma entrada de MIB_IPFORWARD_ROW2 é um valor atribuído a uma rota IP para um adaptador de rede específico que identifica o custo associado ao uso dessa rota. Por exemplo, a métrica pode ser valorizada em termos de velocidade do link, contagem de saltos ou atraso de tempo. A métrica automática é um recurso no Windows XP e posterior que configura automaticamente a métrica para as rotas locais baseadas na velocidade do link. O recurso de métrica automática é habilitado por padrão (o membro UseAutomaticMetric da estrutura MIB_IPINTERFACE_ROW é definido como TRUE) no Windows XP e posterior. Ele também pode ser configurado manualmente para atribuir uma métrica específica a uma rota IP.
A métrica de rota especificada no membro Métrica da estrutura MIB_IPFORWARD_ROW2 representa apenas o deslocamento de métrica de rota. A métrica completa é uma combinação desse deslocamento de métrica de rota adicionada à métrica de interface especificada no membro Métrica da estrutura MIB_IPINTERFACE_ROW da interface associada. Um aplicativo pode recuperar a métrica de interface chamando a função GetIpInterfaceEntry .
Observe que o arquivo de cabeçalho Netioapi.h é incluído automaticamente no arquivo de cabeçalho Iphlpapi.h . O arquivo de cabeçalho Netioapi.h nunca deve ser usado diretamente.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 [somente aplicativos da área de trabalho] |
Cabeçalho | netioapi.h (inclua Iphlpapi.h) |