Em um host com várias interfaces de rede, cuja interface resp. Servidor DNS é usado para resolver o nome do host da máquina local (Windows)?

2

Estou tentando responder a seguinte pergunta: O que acontece se uma máquina com várias interfaces de rede, gateways e servidores DNS (por exemplo, uma interface para um adaptador Ethernet e outra para uma conexão VPN) tentar se comunicar com ela mesma, mas não via "localhost"; mas através do seu próprio nome de host (local ou qualificado). Qual interface (ou melhor, qual endereço IP da interface) será usado?

O contexto da questão é que, em tal cenário, às vezes a interface errada (geralmente, a VPN é a "errada") é usada, o que causa problemas com o nosso software se, por exemplo, a conexão VPN for interrompida. Para esses cenários, gostaria de saber como posso influenciar a resolução de nomes para que o IP do adaptador Ethernet seja o preferido.

Eu brinquei com a alteração das métricas das rotas para as diferentes interfaces, mas isso realmente não me deu nenhum comportamento claramente observável. Uma máquina laptop (que faz parte de um AD) onde eu fiz esse experimento, a métrica para a rota para o IP link-local da interface VPN e a rota para o IP do adaptador Ethernet inicialmente tinha a mesma métrica, por exemplo, "rota print "mostraria essas duas rotas (e, claro, muito mais):

Active Routes:
Network Destination    Netmask          Gateway     Interface  Metric


      1.2.3.4          255.255.255.255  On-link     1.2.3.4    276 
      2.3.4.5          255.255.255.255  On-link     2.3.4.5    276

Suponha que 1.2.3.4 seja o IP da interface VPN, 2.3.4.5 o da placa de rede. Quando eu pingava a máquina com seu nome de host local ou qualificado, ela resolveria inicialmente o IP dos adaptadores VPN. Então eu brinquei com a redução ou o aumento das métricas para uma ou outra interface. Infelizmente, não tive um comportamento claramente observável, mas o que de repente recebi foram erros. Se o IP da VPN fosse resolvido, o ping falharia com um erro, e a mensagem de erro indicaria que o host 2.3.4.5 (o IP da Ethernet!) Respondia com "o host de destino não alcançável":

C:\Users\me>ping myhost

Pinging myhost.my.company.domain [1.2.3.4] with 32 bytes of data:
Reply from 2.3.4.5: Destination host unreachable 

Então, meu palpite é que desde que o IP da VPN foi resolvido, o gateway da VPN é usado, e a VPN obviamente não sabe sobre o outro IP.

O próximo ping, então, sempre resolveria o IP do adaptador ethernet e funcionaria bem

C:\Users\me>ping myhost

Pinging myhost.my.company.domain [1.2.3.4] with 32 bytes of data:
Reply from 1.2.3.4: bytes=32 time<1ms TTL=128
[...]

Isso aconteceu mesmo depois de voltar as métricas para seus valores originais (idênticos). Ocorreu-me que eu provavelmente estava no caminho errado com a alteração das rotas para os meus IPs locais, mas provavelmente eu deveria mudar as rotas para os servidores DNS (ou de alguma outra maneira mudar a precedência do servidor DNS), mas neste momento eu decidi para parar de experimentar e começar a ler primeiro, antes que eu estrague minha configuração. Parece que meu Google foo estava ruim hoje, então acabei postando aqui.

Qualquer ajuda (ou ponteiros para a documentação correta) foi apreciada. Alterar o arquivo hosts provavelmente poderia me dar o que eu quero, mas eu preferiria uma solução mais portátil (e, o mais importante, eu gostaria de entender o que está acontecendo!).

    
por MellowCoder 12.05.2016 / 07:52

1 resposta

1

Além da métrica de roteamento, o Windows tem uma configuração para a prioridade de conexão de rede.

Para alterar a prioridade de conexão :

  • Network and Sharing Center > %código%
  • Pressione Alt e escolha no menu Adapter Settings > %código%
  • Na guia Advanced , reordene a conexão preferida ao topo

Em seguida, altere as métricas da interface , de modo que sua rota preferida tenha uma métrica menor.

  • Advanced Settings > Adapter and Bindings > Ethernet adapter > %código%
  • Properties > %código%
  • Desmarque TCP/IPv4
  • Adicionar valor para Properties

Limpe as tabelas de roteamento, abrindo a janela General e digite:

route /f

Em seguida, reinicialize o Windows, para garantir que as métricas entrem em vigor. As tabelas de roteamento devem ser reconstruídas e as métricas atribuídas às rotas.

Neste ponto, se você ainda tiver problemas, verifique suas% métricas Advanced .

No caso em que uma interface é revertida para automática durante as reinicializações, talvez seja necessário adicionar uma rota persistente:

route add -p [destination] [mask] [gateway] [metric] if [interface]
    
por 12.05.2016 / 09:34