Erro de DNS: o que significa e como achar a causa real
"Erro de DNS" não é um problema específico; é o rótulo que um navegador, um roteador ou um colega frustrado usa para qualquer falha na etapa de resolução de nome, e a correção depende inteiramente de qual delas você tem. Esta página é um ponto de partida, não um diagnóstico: leia os passos de triagem abaixo, rode as duas ou três checagens que se aplicam, e elas vão te levar ao guia que cobre exatamente o seu sintoma.
O que "erro de DNS" cobre
Por baixo dessa única frase existem várias falhas distintas que não têm nada em comum além de onde acontecem. Um navegador pode dizer que o nome não existe. Pode dizer que o resolvedor nunca respondeu. Pode carregar a página no fim, só que devagar, depois de uma pausa visível. Um escritório inteiro pode perder a capacidade de resolver qualquer nome enquanto a própria conexão de internet continua no ar. Ou os registros do seu próprio site podem parar de funcionar para visitantes de uma região enquanto parecem completamente normais para você. Cada uma dessas situações tem uma causa e uma correção diferentes, e nenhuma delas se resolve com o conselho genérico de "reinicie o roteador e tente de novo", que corrige exatamente uma das cinco.
O resto desta página é um conjunto curto de perguntas. Responda-as em ordem e você vai chegar ao guia específico que combina com o que está acontecendo, em vez de percorrer cinco listas de correção sem relação torcendo para que uma delas ajude.
É só neste dispositivo, ou em todos?
Tente a mesma consulta a partir de um celular usando dados móveis, não o seu Wi-Fi. Se o nome resolve ali e falha no seu notebook, o problema é local: uma configuração de DNS errada só naquela máquina, um cache travado, uma VPN presa a resolvedores que não estão mais acessíveis, ou um software de segurança interceptando DNS por conta própria. Se falhar no celular também, em uma rede completamente diferente, passe para a próxima pergunta, porque a falha não está no seu dispositivo nem na sua rede local.
É só um site, ou está tudo quebrado?
Tente resolver um nome conhecido que você tem certeza que funciona, como um grande site de busca. Se isso também falhar, o seu próprio resolvedor está inacessível ou não está respondendo, o que é um problema de roteador ou de rede, não algo errado com o único site que você estava tentando alcançar. Se o nome conhecido resolve bem e só o site que você queria falha, o problema está naquele domínio específico: seus registros, seus servidores de nomes, ou uma alteração ainda se espalhando para alguns resolvedores e não para outros.
Uma consulta contra um resolvedor público funciona?
Este único teste faz mais trabalho de triagem do que qualquer outra coisa aqui, porque separa "a minha rede" de "o domínio em si" em um único comando:
nslookup example.com 8.8.8.8
dig example.com @1.1.1.1
Troque example.com pelo nome real que está falhando. Três resultados são possíveis, e cada um aponta para um lugar diferente:
- Você recebe uma resposta normal. O domínio resolve bem do lado de fora. O seu resolvedor padrão, seja lá qual o seu dispositivo ou roteador está configurado para usar, é a peça quebrada. Isso é servidor DNS não responde se falhar em silêncio, ou um problema de cache se uma consulta que costumava funcionar parou de funcionar.
- Você recebe uma resposta explícita de "nome inexistente" (NXDOMAIN). Um resolvedor público, sem motivo para ter nada em cache, está te dizendo que o registro genuinamente não existe agora, ou que uma resposta negativa desatualizada está em cache em algum ponto da cadeia. Essa mensagem exata e o que checar em seguida é DNS_PROBE_FINISHED_NXDOMAIN.
- Você recebe uma resposta, mas ela demora visivelmente ou o tempo varia entre as execuções. O resolvedor está funcionando, só que devagar. Adicione
+statsa uma consulta dig ou observe o atraso a olho nu. Isso é como corrigir uma consulta DNS lenta, uma causa e uma correção diferentes das duas anteriores.
O que o resolvectl status mostra no Linux
Em uma máquina Linux usando systemd-resolved, um único comando mostra o que o seu sistema está de fato configurado para perguntar, e é aí que boa parte dos relatos de "o DNS está quebrado" se revela errada desde o início:
resolvectl status
Leia a linha "Current DNS Server" da interface que você está usando. Se ela listar um endereço que não é o resolvedor esperado, por exemplo o servidor interno de uma VPN que não está mais acessível, ou um endereço antigo de roteador de uma rede que você deixou, essa divergência é o problema inteiro, e nenhuma limpeza de cache corrige um endereço errado. Se o servidor listado bater com o esperado e as consultas ainda falharem, a configuração do resolvedor não é o problema, e a falha está mais adiante na cadeia, de volta às perguntas acima.
Alterou um registro de DNS recentemente?
Se você ou alguém da sua equipe editou um registro, mudou de hospedagem ou trocou de provedor de DNS no último dia ou dois, e o erro é inconsistente, funcionando para umas pessoas e não para outras, isso não é um registro quebrado. É o comportamento esperado enquanto respostas antigas em cache expiram no próprio ritmo em resolvedores diferentes. Essa situação específica, incluindo como saber se a alteração realmente foi salva corretamente, está coberta em como verificar a propagação de DNS. Não persiga um "erro de DNS" como um bug se o cronograma bate com uma alteração recente; dê a ela a janela do TTL primeiro.
Perguntas frequentes
Qual guia eu preciso se o navegador mostra um código de erro específico?
Busque por esse código exato. DNS_PROBE_FINISHED_NXDOMAIN significa que o nome não existe e está coberto em sua própria página, linkada acima. Uma mensagem genérica de "servidor DNS não responde" ou "não é possível encontrar o servidor" sem código específico combina com a segunda pergunta desta página: teste um resolvedor público diretamente e veja qual dos três resultados você recebe.
Rodei as checagens e agora está tudo resolvendo normalmente. O que aconteceu?
A maioria das falhas de DNS é passageira: um resolvedor ficou sobrecarregado por um instante, uma entrada de cache expirou no meio da investigação, ou uma oscilação de rede se resolveu sozinha. Se está resolvendo limpo agora e continua assim, não há mais nada a corrigir. Se voltar de forma intermitente, esse padrão em si já é uma pista, e vale checar se ele coincide com um horário específico do dia, uma rede ou um aplicativo.
Um erro de DNS é o mesmo que o site estar fora do ar?
Não, e a distinção importa. Um erro de DNS significa que o nome nunca resolveu para um endereço, então nenhuma conexão chegou a ser tentada. Um site fora do ar geralmente significa que o nome resolveu normalmente, mas o servidor não respondeu, recusou a conexão ou devolveu uma página de erro. O teste com resolvedor público acima diz em qual das duas situações você está: um endereço volta, ou não volta.
Por que o mesmo domínio funciona para mim mas não para um colega?
Isso é quase sempre cache, não um registro quebrado. Redes diferentes usam resolvedores diferentes, cada um com a própria cópia em cache de uma resposta e o próprio prazo de expiração. Um de vocês pode estar vendo um resultado desatualizado em cache enquanto o resolvedor do outro já atualizou. Confirme o registro atual e correto direto nos servidores de nomes do domínio antes de supor que algo está realmente errado.
Devo simplesmente trocar para um resolvedor DNS público e parar de investigar?
Trocar para 1.1.1.1 ou 8.8.8.8 é uma escolha permanente razoável, e ela descarta rapidamente um resolvedor de provedor ou de roteador quebrado. É uma correção real quando o seu resolvedor padrão se revela o problema, não só um contorno, mas não vai ajudar se a falha estiver nos próprios servidores de nomes do domínio, e não no resolvedor que está te respondendo.
Onde checo se um nome resolve de forma diferente em países diferentes?
Um resolvedor na sua própria rede só mostra um único ponto de vista, e as respostas de DNS genuinamente variam por região durante uma migração ou uma queda parcial. Rode a mesma consulta a partir de vários locais de uma vez com a ferramenta de consulta DNS, que checa a partir de vários países em uma única passada e mostra onde uma resposta diverge ou estoura o tempo.