Atualizei para o Ubuntu 17.04 e parece que agora existe um novo mecanismo de resolução de DNS introduzido pela primeira vez no Ubuntu 16.10.
Agora estou recebendo falhas de pesquisa de DNS 50% das vezes. Todas as outras chamadas para nslookup estão falhando, com metade das chamadas resolvendo bem e metade dando o seguinte:
watch -n 1 nslookup google.com
Server: 127.0.0.53
Address: 127.0.0.53#53
** server can't find google.com: SERVFAIL
Pelo que entendi, esse endereço IP do servidor DNS agora é usado para representar resolvido pelo sistema, o que faz algum tipo de meta pesquisa para evitar consultas DNS mais lentas (ou algo assim ...). Estou vendo exatamente o mesmo comportamento em duas máquinas que atualizei para 17.04 na semana passada.
Alguma idéia de qual é o problema aqui e a maneira correta de resolvê-lo?
As coisas estavam funcionando bem antes da atualização (de 16.04 ou 16.10, não me lembro qual, desculpe). Eu pensei que o 17.04 foi um lançamento LTS, mas agora vejo que pulei a arma e ela não será considerada estável até abril. Então aqui estou.
Também é importante notar que os navegadores não parecem apresentar problemas, mas nslookup, ping, git, etc.
.
no mês em que será lançado. (Assim, no seu caso, será em04
/17
)Respostas:
O Ubuntu 17.04 não pode resolver servidores DNS com suporte a DNSSEC a partir de 18/04/2017. Desative o DNSSEC com este daemon:
Opcionalmente, reconfigure o resolvconf se você mexeu com ele (diga sim para "preparar /etc/resolve.conf para atualizações dinâmicas?"):
Reinicie o systemd-resolved:
Seu DNS deve começar a funcionar. Você pode verificar tentando
systemd-resolve www.google.com
e vendo uma resposta.fonte
Eu estive alternando entre o resolvido pelo systemd e o gerenciamento /etc/resolv.conf manual e não achei o mecanismo de resolução de DNS do systemd ainda estável.
Aparentemente, há pelo menos um bug libnss no Ubuntu 16.10 e aparentemente ainda no 17.04. Há muitas pessoas com problemas de DNS desde que o Ubuntu 16.10 ativou a resolução do sistema, aqui está uma análise e aqui está a solução alternativa de outra pessoa. Nenhum deles funcionou para mim até eu substituir manualmente o /etc/resolv.conf pelos servidores DNS do Google.
Esta é uma solução perfeitamente válida , se você não precisar de configuração dinâmica de DNS. Apenas certifique-se de parar e desativar o systemd-resolved:
fonte
systemctl enable systemd-resolved.service && systemctl start systemd-resolved.service
O Ubuntu 17.04 e outras distribuições estão adotando o systemd, que inclui resolvido pelo systemd, que submete os usuários a uma resolução de DNS bastante pesada.
Eu não acho que é necessariamente uma mudança ruim, é apenas muita mudança. Tentarei atualizar e expandir esta resposta à medida que aprender mais.
fonte
Simplificando, você só precisa ter a linha "DNSSEC = no" na seção [Resolve] do /etc/systemd/resolved.conf.
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1682499/
fonte
basta adicionar o servidor de nomes /etc/systemd/resolved.conf DNS = 194.109.xxx.xxx (no seu roteador, servidor de nomes externo)
systemctl restart systemd-resolved
não é necessário alterar o rand de 3 para 2, não é necessário alterar a configuração do dnssec para off
fonte