Ir para o conteúdo principal

Guias / Corrigir: guias para os erros que aparecem de verdade

DNS_PROBE_FINISHED_NXDOMAIN: o que significa e como corrigir

DNS_PROBE_FINISHED_NXDOMAIN significa que a consulta pelo nome de host que você digitou voltou como "nome inexistente". O navegador nunca recebeu um endereço IP, então nunca abriu uma conexão. O problema está na resolução de nomes, não no servidor web do site.

O que o erro significa

NXDOMAIN é um código de resposta do DNS, abreviação de domínio não existente. Um resolvedor devolve esse código depois de percorrer a cadeia da raiz até a zona que deveria conter o seu nome de host e não encontrar nada lá. O Chrome mostra DNS_PROBE_FINISHED_NXDOMAIN. O Firefox diz que não consegue conectar ao servidor. O Safari diz que não consegue encontrar o servidor. Os três estão relatando a mesma resposta.

NXDOMAIN não é a mesma coisa que uma falha do resolvedor, e a diferença decide onde você vai procurar. Se o seu resolvedor está inacessível ou estoura o tempo, você recebe uma mensagem de "servidor DNS não está respondendo". Se a zona responde mas está quebrada, por exemplo uma cadeia DNSSEC que não valida, você normalmente recebe SERVFAIL. NXDOMAIN é uma resposta definitiva: o nome não está publicado.

Uma característica do NXDOMAIN importa mais que qualquer outra durante o diagnóstico. Respostas negativas são cacheadas. Pela RFC 2308, o resolvedor guarda o resultado "nome inexistente" pelo intervalo definido no registro SOA da zona, normalmente entre 5 e 60 minutos. Um domínio que voltou a funcionar há dois minutos ainda pode falhar na sua máquina, e nenhuma quantidade de recarregamentos vai mudar isso até a entrada do cache expirar ou você limpá-la.

Por que acontece

  • Um erro de digitação no nome de host. A causa mais comum de longe, e a última que todo mundo verifica.
  • O domínio não está registrado, ou expirou. Um domínio expirado costuma sair da zona poucas horas depois do fim do período de carência.
  • Sem delegação de servidores de nomes. O domínio existe no registrador mas não tem registros NS apontando para um provedor de DNS, então a zona pai não tem para onde encaminhar o resolvedor.
  • O registro foi apagado ou renomeado. A ausência de um A ou CNAME para www gera NXDOMAIN em www.example.com enquanto o domínio sem prefixo continua funcionando.
  • Uma alteração ainda não chegou ao seu resolvedor. Registros novos podem levar até o TTL do registro anterior para aparecer em todo lugar.
  • Uma resposta negativa em cache no seu dispositivo, no seu navegador ou no resolvedor do seu provedor de internet.
  • Uma entrada no arquivo hosts apontando o nome para algo que não existe mais, ou uma linha esquecida de um teste antigo.
  • VPN, proxy ou software de filtragem respondendo ao DNS por conta própria e bloqueando ou falhando em resolver o nome.
  • Um nome de host que só existe em uma rede privada à qual você não está conectado no momento, como um domínio interno .local ou da empresa.

Como corrigir

Redigite o endereço primeiro, depois vá do navegador para fora, em direção à rede. Teste depois de cada passo em vez de executar todos de uma vez.

Navegador

  1. Abra a mesma URL em uma janela anônima. Se carregar, o envolvido é uma extensão ou um cookie, não o DNS.
  2. Limpe o cache de resolução do próprio Chrome em chrome://net-internals/#dns e depois esvazie os pools de sockets em chrome://net-internals/#sockets. O Chrome mantém um cache separado do sistema operacional, então limpar só o do sistema muitas vezes não muda nada.

Windows

  1. Limpe o cache do resolvedor: ipconfig /flushdns
  2. Renove a concessão de rede, o que também pega os servidores DNS entregues pelo DHCP:
    ipconfig /release
    ipconfig /renew
  3. Reinicie o serviço de cache se a limpeza não se mantiver:
    net stop dnscache
    net start dnscache
  4. Procure em C:\Windows\System32\drivers\etc\hosts uma linha com o domínio e apague-a se estiver desatualizada.
  5. Configure um resolvedor público: netsh interface ipv4 set dnsservers name="Wi-Fi" static 1.1.1.1 primary
  6. Como último recurso, reinicie a pilha de rede e depois o computador: netsh winsock reset

macOS

  1. Limpe o cache: sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
  2. Veja quais servidores estão em uso: scutil --dns | grep nameserver
  3. Aponte a interface para um resolvedor público: sudo networksetup -setdnsservers Wi-Fi 1.1.1.1 1.0.0.1
  4. Inspecione /etc/hosts e remova qualquer linha referente ao domínio.

Linux

  1. Com systemd-resolved: sudo resolvectl flush-caches, depois confirme os servidores em uso com resolvectl status.
  2. Com dnsmasq: sudo systemctl restart dnsmasq. Com nscd: sudo systemctl restart nscd.
  3. Leia /etc/resolv.conf para ver qual resolvedor você está consultando, e /etc/hosts para achar uma sobrescrita antiga.
  4. Com o NetworkManager, mude o resolvedor na própria conexão:
    nmcli con mod "Wired connection 1" ipv4.dns "1.1.1.1 1.0.0.1"
    nmcli con up "Wired connection 1"

Roteador

  1. Desligue e ligue o roteador. A maioria dos roteadores domésticos roda um pequeno resolvedor encaminhador com cache próprio, e reiniciar limpa esse cache.
  2. Na página de administração do roteador, olhe os servidores DNS da WAN ou do DHCP. Se apontam para um servidor interno antigo ou para um serviço de filtragem, troque-os.
  3. Teste com um celular na rede móvel em vez do Wi-Fi. Se o nome resolver ali, a falha está dentro da sua rede.

Se o domínio é seu

NXDOMAIN no seu próprio site é um problema de publicação, e ele só pode vir de alguns lugares. Verifique primeiro o status do registro e a data de expiração. Depois confirme a delegação, que é o passo que as pessoas pulam:

dig NS example.com +short
dig example.com +trace

Uma resposta NS vazia significa que a zona pai não tem delegação, então nenhum resolvedor consegue chegar ao seu provedor de DNS, não importa quantos registros você tenha criado lá. A saída de +trace mostra a cadeia de encaminhamentos e o passo exato onde ela para. Se a delegação está correta, consulte diretamente o servidor de nomes do seu provedor para confirmar que o registro existe na zona que você está editando:

dig @ns1.example-dns.net www.example.com A

Quando você adiciona um registro que faltava, a resposta negativa antiga continua em cache em outros lugares pelo tempo que o mínimo do SOA permitir, então espere esse prazo antes de concluir que a correção não funcionou.

Verifique de fora

Todas as correções acima mexem na sua própria máquina. Nenhuma delas diz se o nome resolve para outra pessoa, e é isso que você quer saber primeiro. Rode a consulta contra dois resolvedores públicos e compare:

dig example.com +short
dig @1.1.1.1 example.com +short
dig @8.8.8.8 example.com +short

nslookup example.com 8.8.8.8

Se o seu resolvedor padrão não devolve nada e o 1.1.1.1 devolve um endereço, o registro existe e o seu resolvedor está segurando uma resposta negativa antiga ou filtrando o nome. Se nenhum resolvedor devolve nada, o registro realmente não existe.

Dois resolvedores ainda cobrem um único ponto de vista, e as respostas de DNS variam por região com mais frequência do que se imagina. Rode a verificação de consulta DNS para resolver o nome a partir de pontos de verificação em vários países ao mesmo tempo e leia o que cada um devolveu. Um resultado dividido, com algumas localizações respondendo e outras não, aponta para uma alteração ainda se espalhando ou para o servidor de nomes de um provedor inacessível a partir de uma parte da internet. Essa leitura ao longo do tempo é a propagação de DNS, que tem seu próprio guia em como verificar a propagação de DNS.

Detectar um nome que para de resolver

Um registro que desaparece não deixa rastro do seu lado. Nada registra o ocorrido, porque nenhuma requisição chega, e o único sinal é um gráfico de tráfego que despenca. A solução, em todos os casos, é uma consulta que roda em intervalos regulares a partir de algum lugar que não seja o seu escritório. A HostTracker monitora sites desde 2004 e hoje faz verificações a partir de mais de 300 pontos de verificação em 158 cidades, alertando por e-mail, SMS, chamada de voz, Slack, Telegram e outros canais quando um nome para de resolver ou passa a responder com o endereço errado. Os outros guias desta seção estão no grupo de correções, e os dois mais próximos deste são servidor DNS não está respondendo, para quando o resolvedor simplesmente não responde, e como corrigir uma consulta DNS lenta, para quando ele responde mas demora demais.

Verificar agora

Faça a verificação gratuita no seu próprio site, sem precisar de conta.

Dns query

Monitorar permanentemente

Seja avisado no momento em que algo quebrar: o HostTracker verifica de mais de 300 localidades e notifica você por e-mail, SMS, Slack, Telegram e mais.

Recursos do HostTracker

Mais nesta seção: Corrigir: guias para os erros que aparecem de verdade