ERR_NAME_NOT_RESOLVED: o que significa e como corrigir
ERR_NAME_NOT_RESOLVED significa que o navegador pediu ao resolvedor DNS o endereço IP do site e não recebeu de volta nenhuma resposta utilizável. Isso pode significar que o resolvedor não devolveu nada, estourou o tempo, ou devolveu uma resposta que o navegador rejeitou, o que é uma condição mais ampla do que "esse domínio não existe".
O que significa ERR_NAME_NOT_RESOLVED
Antes de conseguir se conectar a qualquer coisa, o navegador transforma um nome de host num endereço IP através do DNS. ERR_NAME_NOT_RESOLVED é o erro genérico do Chrome para quando essa consulta falha de alguma forma diferente de um "não existe" confirmado: o resolvedor não respondeu a tempo, devolveu uma resposta vazia ou malformada, ou a própria pilha de rede do navegador não conseguiu sequer alcançar um resolvedor.
É fácil confundir isso com o DNS_PROBE_FINISHED_NXDOMAIN, que é um caso mais estreito e específico. NXDOMAIN significa que um resolvedor respondeu claramente: esse nome não existe na zona. ERR_NAME_NOT_RESOLVED significa que a própria consulta falhou ou voltou sem nada utilizável, o que inclui um resolvedor quebrado, um estouro de tempo, uma rede sem acesso nenhum a DNS, ou uma sobrescrita local de DNS que deu errado. Se você já sabe que o domínio costumava funcionar e nada mudou no domínio em si, o ERR_NAME_NOT_RESOLVED aponta mais para o caminho de resolução do que para os registros do próprio domínio.
Como o erro aparece
Chrome e Edge mostram "Não é possível acessar este site - Não foi possível encontrar o endereço IP do servidor de example.com. Tente executar o Diagnóstico de Rede do Windows." com o código ERR_NAME_NOT_RESOLVED. O Firefox mostra "Ops. Não conseguimos encontrar esse site" com a mensagem "não conseguimos nos conectar ao servidor em example.com".
O dig mostra o que um resolvedor específico devolve, e o +trace percorre toda a cadeia a partir da raiz:
dig example.com A
;; ANSWER SECTION:
example.com. 300 IN A 203.0.113.10
dig +trace example.com
; <<>> DiG 9.18 <<>> +trace example.com
. 518400 IN NS a.root-servers.net.
...
com. 172800 IN NS a.gtld-servers.net.
...
example.com. 300 IN A 203.0.113.10
O nslookup é uma checagem mais rápida quando você só precisa de um sim ou não:
nslookup example.com
Server: 8.8.8.8
Address: 8.8.8.8#53
Name: example.com
Address: 203.0.113.10
Se algum dos comandos estoura o tempo, devolve SERVFAIL, ou não devolve nada em ANSWER SECTION, a consulta de fato falhou, o que é diferente de uma resposta NXDOMAIN, que diria claramente "esse nome não existe".
O que causa o ERR_NAME_NOT_RESOLVED
- Um registro A ou AAAA ausente. O domínio resolve para outros tipos de registro, ou a zona existe, mas nenhum registro de endereço está publicado para o nome de host solicitado (incluindo um registro ausente para um subdomínio específico mesmo que o domínio raiz funcione).
- Um registro de domínio expirado. Depois que um domínio vence, seus servidores de nomes costumam parar de responder por ele completamente, o que gera exatamente essa falha em vez de um NXDOMAIN limpo.
- Uma interrupção ou má configuração de servidor de nomes. Se os servidores de nomes autoritativos do domínio estão inacessíveis ou devolvem respostas malformadas, todo resolvedor que tenta responder por aquele domínio falha da mesma forma.
- Uma falha na validação DNSSEC. Um resolvedor que faz validação e não consegue verificar uma assinatura DNSSEC (uma assinatura expirada, uma cadeia de confiança quebrada) se recusa a devolver qualquer resposta, em vez de devolver algo em que não confia.
- O próprio resolvedor do visitante está fora do ar ou inacessível, normalmente numa VPN quebrada, num portal cativo de Wi-Fi, ou num roteador mal configurado apontando para um servidor DNS que não existe mais.
- Um cache DNS local corrompido na máquina do visitante, guardando uma entrada desatualizada ou quebrada de antes de o domínio estar configurado corretamente.
Como saber de quem é a culpa
Consulte um resolvedor público diretamente, como dig example.com @8.8.8.8, ignorando o que a rede local está configurada para usar. Se isso também falhar, o problema está na própria configuração de DNS do domínio, não na rede do visitante. Uma consulta DNS rodada a partir de vários locais deixa isso imediato: uma falha consistente em todo lugar aponta para os servidores de nomes ou o registro do domínio, enquanto uma falha só num local ou resolvedor aponta para algo local àquele ponto de vista.
Como corrigir o ERR_NAME_NOT_RESOLVED
Se você é o visitante
- Limpe o cache DNS local. No Windows:
ipconfig /flushdns. No macOS:sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder. No Linux com systemd-resolved:sudo resolvectl flush-caches. - Troque para um resolvedor DNS público como 8.8.8.8 ou 1.1.1.1 nas configurações de rede, substituindo temporariamente o que seu provedor de internet ou roteador oferece por padrão.
- Verifique o arquivo hosts (
/etc/hostsno macOS/Linux,C:\Windows\System32\drivers\etc\hostsno Windows) em busca de uma entrada manual desatualizada sobrescrevendo o domínio. - Desconecte da VPN e tente de novo; alguns clientes de VPN roteiam o DNS por um resolvedor que está inacessível ou mal configurado.
- Reinicie o roteador se todo site na rede falhar em resolver, não só um.
Se você administra o site
- Confirme que o registro A/AAAA existe para o nome de host exato que os visitantes estão usando, incluindo qualquer subdomínio:
dig www.example.com Aedig example.com Asão duas consultas separadas. - Verifique o registro do domínio e o status de expiração no seu registrador; um domínio expirado sem aviso é uma causa comum e frequentemente esquecida.
- Confirme que os servidores de nomes listados no registrador correspondem aos que realmente servem a zona, e que eles respondem:
dig NS example.comseguido de consultar cada servidor de nomes devolvido diretamente. - Se usar DNSSEC, valide a cadeia com
dig +dnssec example.come procure um registro RRSIG expirado, uma causa frequente e autoinfligida de falhas de resolução. - Rode
dig +tracepara ver exatamente em qual ponto da cadeia, da raiz até o servidor autoritativo, a resolução para, em vez de adivinhar.
Erros relacionados
- DNS_PROBE_FINISHED_NXDOMAIN é o erro irmão para uma resposta confirmada de "esse nome não existe", em vez de uma consulta que falhou ou voltou vazia.
- Propagação de DNS explica por que um registro recém-alterado pode resolver corretamente a partir de alguns resolvedores e não de outros por um período de tempo.
Como prevenir o ERR_NAME_NOT_RESOLVED
Falhas de DNS são fáceis de passar despercebidas internamente, já que uma rede de escritório estável e seus registros em cache podem continuar funcionando muito depois de visitantes em outros lugares começarem a falhar. Uma verificação de DNS rodando a partir de mais de 300 pontos de verificação em 158 cidades detecta uma interrupção de servidor de nomes, um registro expirando ou um registro quebrado no momento em que começam a afetar a resolução, em vez de depois que a caixa de suporte já está cheia. A HostTracker monitora sites desde 2004 e avisa por e-mail, SMS, chamada de voz, Slack, Telegram e outros canais.
Perguntas frequentes
Qual é a diferença entre ERR_NAME_NOT_RESOLVED e DNS_PROBE_FINISHED_NXDOMAIN?
NXDOMAIN é uma resposta definitiva: o resolvedor verificou e o nome não existe na zona. ERR_NAME_NOT_RESOLVED é mais amplo e cobre uma consulta que falhou, estourou o tempo, ou devolveu algo sem uso, o que inclui casos em que o domínio existe mas seus servidores de nomes estão inacessíveis.
Um domínio expirado pode causar esse erro?
Sim, e é uma das causas mais comuns. Depois que um domínio vence, seus servidores de nomes costumam parar de responder, então toda consulta por ele falha em vez de devolver um "não existe" limpo.
Por que o site funciona no meu celular com dados móveis mas não no Wi-Fi de casa?
Isso aponta para o resolvedor que sua rede doméstica usa, seja o servidor DNS configurado no seu roteador ou o resolvedor do seu provedor de internet. Trocar para um resolvedor público como o 1.1.1.1 na rede afetada costuma confirmar e resolver.
Acabei de adicionar um subdomínio novo e ele não resolve. Por quê?
Um registro novo precisa se propagar pelos caches de DNS depois de criado, e também precisa realmente existir: confirme com dig subdominio.example.com A direto no servidor de nomes autoritativo antes de assumir que é só atraso de propagação.
O DNSSEC pode causar esse erro num domínio que está tudo bem?
Sim. Se as assinaturas DNSSEC expiram ou a cadeia de confiança quebra, um resolvedor que faz validação se recusa a responder em vez de devolver dados que não consegue verificar, o que aparece exatamente como uma falha de resolução do lado do visitante.