Tendo problemas para resolver um FQDN na minha rede local, a partir do Ubuntu 18.04

3

Meu laptop está funcionando biônico, funcionando bem e eu completei uma atualização completa via apt há algumas semanas e tudo está funcionando como esperado, mas quando tento me conectar ao meu NAS, o FQDN não é resolvido, posso conectar via IP etc. Eu fiz uma quantidade razoável de leitura, tive que acompanhar as grandes mudanças que aconteceram com o Linux desde a última vez que trabalhei com o redhat linux em 2003.

Então, agora temos o network manager e o systemd, essas são mudanças muito grandes da maneira antiga de fazer as coisas e eu posso ver as razões para a evolução que aconteceu, apenas dificulta a resolução de problemas se você for um Unix pessoa mais antiga ;-) O resolvedor systemd pode ser trocado para dnsmasq e o gerenciador de rede tem um plugin que funciona com o dnsmasq, ok consiga tudo isso sem nenhum problema. O que eu não consigo entender é, por que fora da caixa, o Ubuntu não está encaminhando corretamente a pesquisa de DNS para o meu roteador, que é capaz de fornecer entradas de DNS estático para determinados serviços na minha rede. Isso funciona perfeitamente com janelas e macos.

Em uma tentativa de resolver isso, ele não estava funcionando corretamente com o resolvedor systemd, eu o troquei pelo dnsmasq, ainda sem charuto: - /

O laptop pega um IP via dhcp corretamente e o gerenciador de rede preenche corretamente o /etc/resolv.conf com o IP dos roteadores para o dns.

A resolução normal de dns da Internet está funcionando corretamente e, se eu desligar a entrada automática de resolução do dns fornecida pelo gerenciador de rede, o /etc/resolv.conf não tem quebras de entrada e de dns da Internet como esperado. Isso também prova que meu laptop também está encaminhando consultas de DNS que não podem resolver localmente.

Eu estou em uma perda completa sobre o que está errado, qualquer orientação sobre possíveis qwerks com o gerente de rede e / ou dnsmasq seria muito apreciada. Além disso, se alguém tiver um link para um bom mergulho técnico no linux DNS 2016/17, isso seria de grande ajuda.

    
por Kappy 22.04.2018 / 22:39

1 resposta

1

Resolvi meu próprio problema, por isso estou fornecendo minha solução para que outros possam achar útil.

Estava apenas lendo um blog sobre problemas de problemas do cliente de linux a> e viu que o /etc/nsswitch.conf não tem as mesmas entradas que o meu.

A minha parecia:

hosts: files mdns4_minimal [NOTFOUND=return] dns myhostname

E a entrada do blog parecia:

hosts: files dns myhostname

Ao remover mdns4_minimal e [NOTFOUND = return] quando reiniciei os serviços de dns / rede, a resolução do FQDN começou a funcionar. Então decidi investigar o que mdns4_minimal e [NOTFOUND = return] realmente fazem. Eu então me deparei com uma outra pergunta aqui no askubuntu.com que explica a causa real do meu problema .

Acontece que, se como eu, você está usando o domínio .local para o seu dns de rede interna, esse tld também é usado para o DNS multicast do mDNS, para serviços como o Bonjour. Para que o dns funcione corretamente, você precisa priorizar o dns sobre mdns para que ele funcione.

Agora retornei meu arquivo /etc/nsswitch.conf para seu estado original com as seguintes alterações:

hosts: files dns [NOTFOUND=return] mdns4_minimal mdns4

Como você pode ver, o DNS agora é priorizado sobre o mdns4 e meu resolvedor local consulta meu DNS da rede, que retorna o resultado esperado:

~$ ping nas01.home.local

PING nas01.home.local (192.168.1.101) 56(84) bytes of data.

64 bytes from nas01.home.local (192.168.1.101): icmp_seq=1 ttl=64 time=0.196 ms

64 bytes from nas01.home.local (192.168.1.101): icmp_seq=2 ttl=64 time=0.279 ms

64 bytes from nas01.home.local (192.168.1.101): icmp_seq=3 ttl=64 time=0.243 ms

Provavelmente é improvável que a maioria das pessoas use o .local em casa ou no laboratório, mas eu sempre preferi usá-lo, mesmo nos ambientes corporativos, pois não é um formato da Internet.

    
por Kappy 22.04.2018 / 23:27