Visão geral do Auxiliar de IP
O Auxiliar de Protocolo de Internet (Auxiliar de IP) permite que os drivers recuperem informações sobre a configuração de rede do computador local e modifiquem essa configuração. O Auxiliar de IP também fornece mecanismos de notificação para garantir que um driver seja notificado quando determinados aspectos da configuração de rede do computador local forem alterados. O Auxiliar de IP está disponível no Windows Vista e versões posteriores dos sistemas operacionais Microsoft Windows.
Muitas das funções auxiliares de IP passam parâmetros de estrutura que representam tipos de dados associados à tecnologia MIB (Base de Informações de Gerenciamento). As funções auxiliares de IP usam essas estruturas MIB para representar várias informações de rede.
A documentação Auxiliar de IP usa os termos adaptador e interface extensivamente. Um adaptador é um termo herdado que é uma forma abreviada de adaptador de rede, que originalmente se referia a alguma forma de hardware de rede. Um adaptador é uma abstração no nível do link de dados.
Uma interface é descrita nos documentos RFC da IETF como um conceito abstrato que representa a conexão de um nó a um link. Uma interface é uma abstração no nível de IP.
Seu driver pode usar as seguintes funções de modo kernel, estruturas MIB e enumerações de camada de rede (NL) e MIB para recuperar e modificar as configurações de transporte do Protocolo de Controle de Transmissão/Protocolo de Internet (TCP/IP) em um computador local.
Nota
Ao desenvolver o código do driver, siga as instruções para incluir arquivos de cabeçalho.
Funções de conversão de interface
Função | Descrição |
---|---|
ConvertInterfaceAliasToLuid | Converte um LUID (identificador local exclusivo) de uma interface de rede para o nome Unicode da interface. |
ConvertInterfaceGuidToLuid | Converte um GUID (identificador global exclusivo) de um adaptador de rede para o LUID da interface. |
ConvertInterfaceIndexToLuid | Converte um índice local para um adaptador de rede no LUID da interface. |
ConvertInterfaceLuidToAlias | Converte o LUID de uma interface de rede em um alias de interface. |
ConvertInterfaceLuidToGuid | Converte um LUID de um adaptador de rede em um GUID da mesma interface. |
ConvertInterfaceLuidToIndex | Converte um LUID para um adaptador de rede no índice local da interface. |
ConvertInterfaceLuidToNameA | Converte um LUID de um adaptador de rede no nome da interface ANSI. |
ConvertInterfaceLuidToNameW | Converte um LUID de uma interface de rede para o nome da interface Unicode. |
ConvertInterfaceNameToLuidA | Converte um nome de adaptador de rede ANSI no LUID da interface. |
ConvertInterfaceNameToLuidW | Converte um nome de interface de rede Unicode para o LUID da interface. |
if_indextoname | Converte o índice local de um adaptador de rede no nome da interface ANSI. |
if_nametoindex | Converte o nome da interface ANSI de uma interface de rede para o índice local da interface. |
Funções de gerenciamento de interface
Função | Descrição |
---|---|
GetIfEntry2 | Recupera informações da interface especificada no computador local. |
GetIfStackTable | Recupera uma tabela de entradas de linha de pilha de adaptador de rede que especificam o relacionamento dos adaptadores de rede em uma pilha de interface. |
GetIfTable2 | Recupera a tabela de interface MIB-II. |
GetIfTable2Ex | Recupera a tabela de interface MIB-II, considerando um nível de informações de interface a serem recuperadas. |
GetInvertedIfStackTable | Recupera uma tabela de entradas de linha de pilha de adaptador de rede invertida que especificam o relacionamento dos adaptadores de rede em uma pilha de interface. |
GetIpInterfaceEntry | Recupera informações de IP para a interface especificada no computador local. |
GetIpInterfaceTable | Recupera as entradas da interface IP no computador local. |
InitializeIpInterfaceEntry | Inicializa os membros de uma entrada de estrutura MIB_IPINTERFACE_ROW com valores padrão. |
SetIpInterfaceEntry | Define as propriedades de uma interface IP no computador local. |
Funções de gerenciamento de endereço IP
Função | Descrição |
---|---|
CreateAnycastIpAddressEntry | Adiciona uma nova entrada de endereço IP anycast no computador local. |
CreateSortedAddressPairs | Emparelha uma lista fornecida de endereços de destino junto com os endereços IP locais do computador host e classifica os pares de acordo com a ordem preferencial de comunicação. |
CreateUnicastIpAddressEntry | Adiciona uma nova entrada de endereço IP unicast no computador local. |
DeleteAnycastIpAddressEntry | Exclui uma entrada de endereço IP anycast existente do computador local. |
DeleteUnicastIpAddressEntry | Exclui uma entrada de endereço IP unicast existente do computador local. |
GetAnycastIpAddressEntry | Recupera informações de uma entrada de endereço IP anycast existente no computador local. |
GetAnycastIpAddressTable | Recupera a tabela de endereços IP anycast no computador local. |
GetMulticastIpAddressEntry | Recupera informações de uma entrada de endereço IP multicast existente no computador local. |
GetMulticastIpAddressTable | Recupera a tabela de endereços IP multicast no computador local. |
GetUnicastIpAddressEntry | Recupera informações de uma entrada de endereço IP unicast existente no computador local. |
GetUnicastIpAddressTable | Recupera a tabela de endereços IP unicast no computador local. |
InitializeUnicastIpAddressEntry | Inicializa uma estrutura MIB_UNICASTIPADDRESS_ROW com valores padrão para uma entrada de endereço IP unicast no computador local. |
NotifyStableUnicastIpAddressTable | Recupera a tabela de endereços IP unicast estável em um computador local. |
SetUnicastIpAddressEntry | Define as propriedades de uma entrada de endereço IP unicast existente no computador local. |
Funções de gerenciamento de endereços vizinhos IP
Função | Descrição |
---|---|
CreateIpNetEntry2 | Cria uma nova entrada de endereço IP vizinho no computador local. |
DeleteIpNetEntry2 | Exclui uma entrada de endereço IP vizinho do computador local. |
FlushIpNetTable2 | Limpa a tabela de vizinhança IP no computador local. |
GetIpNetEntry2 | Recupera informações de uma entrada de endereço IP vizinho no computador local. |
GetIpNetTable2 | Recupera a tabela vizinha de IP no computador local. |
ResolveIpNetEntry2 | Resolve o endereço físico de uma entrada de endereço IP vizinho no computador local. |
SetIpNetEntry2 | Define o endereço físico de uma entrada de endereço IP de vizinho existente no computador local. |
Funções de gerenciamento de caminho IP
Função | Descrição |
---|---|
FlushIpPathTable | Limpa a tabela de caminho IP no computador local. |
GetIpPathEntry | Recupera informações de uma entrada de caminho IP no computador local. |
GetIpPathTable | Recupera informações de uma tabela de caminho ip no computador local. |
Funções de gerenciamento de rotas IP
Função | Descrição |
---|---|
CreateIpForwardEntry2 | Cria uma nova entrada de rota IP no computador local. |
DeleteIpForwardEntry2 | Exclui uma entrada de rota de rede IP do computador local. |
GetBestRoute2 | Recupera a entrada de rota IP no computador local para obter a melhor rota para o endereço IP de destino especificado. |
GetIpForwardEntry2 | Recupera informações de uma entrada de rota IP no computador local. |
GetIpForwardTable2 | Recupera as entradas de rota IP no computador local. |
InitializeIpForwardEntry | Inicializa a estrutura MIB_IPFORWARD_ROW2 com valores padrão para uma entrada de rota IP no computador local. |
SetIpForwardEntry2 | Define as propriedades de uma entrada de rota IP no computador local. |
Funções de gerenciamento de memória da tabela IP
Função | Descrição |
---|---|
FreeMibTable | Libera o buffer alocado pelas funções que retornam tabelas de interfaces de rede, endereços e rotas (por exemplo, GetIfTable2 e GetAnycastIpAddressTable). |
Funções de notificação
Função | Descrição |
---|---|
CancelMibChangeNotify2 | Cancela o registro do driver para notificações de alterações na interface IP, no endereço IP, na rota IP e nas solicitações para recuperar a tabela de endereços IP unicast estáveis. |
NotifyIpInterfaceChange | Registra o driver para ser notificado sobre alterações em todas as interfaces IP, interfaces IPv4 ou interfaces IPv6 em um computador local. |
NotifyRouteChange2 | Registra para ser notificado sobre alterações nas entradas de rota IP em um computador local. |
NotifyUnicastIpAddressChange | Registra para ser notificado sobre alterações em todas as interfaces IP unicast, endereços IPv4 unicast ou endereços IPv6 unicast em um computador local. |
Funções de gerenciamento de cliente do Teredo IPv6
Função | Descrição |
---|---|
GetTeredoPort | Recupera o número de porta UDP dinâmico que o cliente Teredo usa no computador local. |
NotifyTeredoPortChange | Registra-se para ser notificado sobre alterações no número da porta UDP que o cliente Teredo usa como porta de serviço em um computador local. |
NotifyStableUnicastIpAddressTable | Recupera a tabela de endereços IP unicast estável em um computador local. |
Estruturas MIB
Estrutura | Descrição |
---|---|
IP_ADDRESS_PREFIX | Armazena um prefixo de endereço IP. |
MIB_ANYCASTIPADDRESS_ROW | Armazena informações sobre um endereço IP anycast. |
MIB_ANYCASTIPADDRESS_TABLE | Contém uma tabela de entradas de endereço IP anycast. |
MIB_IF_ROW2 | Armazena informações sobre uma interface específica. |
MIB_IF_TABLE2 | Contém uma tabela de entradas de interface lógica e física. |
MIB_IFSTACK_ROW | Representa a relação entre duas interfaces de rede. |
MIB_IFSTACK_TABLE | Contém uma tabela de entradas de linha na pilha de adaptador de rede. Esta tabela especifica a relação dos adaptadores de rede em uma pilha de interfaces. |
MIB_INVERTEDIFSTACK_ROW | Representa a relação entre duas interfaces de rede. |
MIB_INVERTEDIFSTACK_TABLE | Contém uma tabela de entradas de linha de pilha de adaptador de rede invertida. Esta tabela especifica o relacionamento dos adaptadores de rede em uma pilha de interfaces em ordem inversa. |
MIB_IPFORWARD_ROW2 | Armazena informações sobre uma entrada de rota IP. |
MIB_IPFORWARD_TABLE2 | Contém uma tabela de entradas de rota IP. |
MIB_IPINTERFACE_ROW | Armazena informações de gerenciamento de interface para uma família de endereços IP específica em uma interface de rede. |
MIB_IPINTERFACE_TABLE | Contém uma tabela de entradas de interface IP. |
MIB_IPNET_ROW2 | Armazena informações sobre um endereço IP vizinho. |
MIB_IPNET_TABLE2 | Contém uma tabela de entradas de endereços IP vizinhos. |
MIB_IPPATH_ROW | Armazena informações sobre uma entrada de caminho IP. |
MIB_IPPATH_TABLE | Contém uma tabela de entradas de caminho IP. |
MIB_MULTICASTIPADDRESS_ROW | Armazena informações sobre um endereço IP multicast. |
MIB_MULTICASTIPADDRESS_TABLE | Contém uma tabela de entradas de endereço IP multicast. |
MIB_UNICASTIPADDRESS_ROW | Armazena informações sobre um endereço IP unicast. |
MIB_UNICASTIPADDRESS_TABLE | Contém uma tabela de entradas de endereço IP unicast. |
Enumerações de MIB
Enumeração | Descrição |
---|---|
MIB_IF_TABLE_LEVEL | Define o nível das informações de interface a serem recuperadas. |
MIB_NOTIFICATION_TYPE | Define o tipo de notificação que é passado para uma função de retorno de chamada quando ocorre uma notificação. |
Enumerações de NL
Enumeração | Descrição |
---|---|
NL_ADDRESS_TYPE | Especifica o tipo de endereço IP da camada de rede. |
NL_DAD_STATE | Define o estado de detecção de endereço duplicado (DAD). |
NL_LINK_LOCAL_ADDRESS_BEHAVIOR | Define o comportamento do endereço local do link. |
NL_NEIGHBOR_STATE | Define o estado de um endereço IP vizinho da camada de rede, conforme descrito no RFC 2461, seção 7.3.2. |
NL_PREFIX_ORIGIN | Define a origem do prefixo ou da parte de rede do endereço IP. |
NL_ROUTE_ORIGIN | Define a origem da rota IP. |
NL_ROUTE_PROTOCOL | Define o mecanismo de roteamento com o qual uma rota IP foi adicionada, conforme descrito no RFC 4292. |
NL_ROUTER_DISCOVERY_BEHAVIOR | Define o comportamento de descoberta do roteador, conforme descrito no RFC 2461. |
NL_SUFFIX_ORIGIN | Define a origem do sufixo ou da parte de host do endereço IP. |