Domain IP Lookup

Quanto tempo uma consulta costuma levar

1-10 msResposta em cache, mesma rede: o caso normal
20-80 msSem cache, resolvedor anycast próximo: ainda aceitável
500 ms+Se for sempre tão lento, há algo errado
Solução de problemas

Como diagnosticar uma resolução DNS lenta

3 min de leitura

A resolução DNS deveria ser rápida a ponto de passar despercebida: tipicamente de um a poucos dígitos de milissegundos para uma resposta em cache, e raramente mais do que algumas centenas de milissegundos, mesmo em uma consulta completa sem cache. Quando ela está perceptivelmente mais lenta que isso, geralmente a causa é uma entre poucas específicas, e não uma lentidão genérica e misteriosa.

CenárioTempo típicoVale investigar além disso?
Resposta em cache, mesma rede1-10 msNão: este é o caminho rápido esperado
Sem cache, resolvedor anycast próximo20-80 msNão: é normal para uma consulta a frio
Sem cache, cadeia longa de CNAME100-300 msTalvez: verifique o tamanho da cadeia
Acima de 500 ms de forma consistente500 ms+Sim: há algo realmente errado

Os suspeitos de sempre

  • Um resolvedor mal configurado ou sobrecarregado: o resolvedor padrão do seu provedor de internet passando por um dia ruim é mais comum do que as pessoas imaginam, e trocar por uma alternativa pública como 1.1.1.1 ou 8.8.8.8 é uma etapa legítima de diagnóstico, não apenas um paliativo.
  • Uma cadeia longa de CNAME: cada salto que o resolvedor precisa seguir antes de chegar a um registro A/AAAA de verdade acrescenta latência, e uma cadeia de quatro ou cinco saltos faz diferença.
  • Um TTL muito curto, forçando consultas completas frequentes em vez de respostas rápidas em cache: útil para propagação rápida, mas custoso para a velocidade média se for definido bem abaixo do necessário.
  • Problemas no caminho de rede entre o seu resolvedor e os servidores autoritativos, que nada têm a ver com o software de DNS: perda de pacotes, problemas de roteamento ou distância geográfica de um servidor de nomes sem presença anycast por perto.

Isolando o DNS de todo o resto

A forma mais confiável de saber se o DNS é mesmo o seu gargalo é medir a consulta isoladamente, separada do carregamento completo da página. Uma consulta dedicada, cronometrada de forma independente do estabelecimento da conexão, da negociação do TLS e do download da resposta, mostra exatamente quanto da sua latência total, se houver, é responsabilidade do DNS. Se a consulta volta de forma consistente em poucos milissegundos, mas o site ainda parece lento para carregar, o gargalo está totalmente depois do DNS, e mais ajustes de DNS não vão mudar o resultado.

Vale conferir isso antes de presumir: muitas reclamações de “site lento” não têm nada a ver com o servidor ou com o código do site, e muitas outras que parecem uma lentidão geral são, na verdade, específicas de DNS e podem ser resolvidas com um ajuste de TTL ou de resolvedor.

Por que os resolvedores anycast costumam ser a opção mais rápida

Resolvedores públicos como 1.1.1.1 e 8.8.8.8 costumam superar o resolvedor padrão de um provedor de internet não por terem um software mais inteligente, mas por causa do anycast: o mesmo endereço IP é anunciado a partir de dezenas de locais físicos no mundo, e o roteamento da rede envia automaticamente a sua consulta ao mais próximo topologicamente. O resolvedor do próprio provedor, por outro lado, costuma ser um único data center (ou um pequeno punhado deles), o que pode significar um tempo de ida e volta realmente maior, dependendo de onde você está em relação a ele. É também por isso que trocar de resolvedor é uma primeira etapa legítima de diagnóstico, e não uma superstição: ela trata uma diferença física real de distância e de roteamento, não apenas um efeito placebo.

Quando está lento para todo mundo, e não só para você

Se um domínio resolve lentamente a partir de várias redes e resolvedores diferentes, e não apenas de um, o problema provavelmente deixou de ser “o seu caminho até um resolvedor” e passou a ser “a infraestrutura autoritativa do próprio domínio”. Um único servidor de nomes autoritativo sem anycast, a uma grande distância de rede de boa parte dos seus visitantes reais, um servidor autoritativo sob carga pesada ou uma zona DNS grande e lenta de transferir podem aparecer dessa forma. Este é um caso em que uma comparação em lote entre vários resolvedores é mais reveladora do que uma única consulta: uma lentidão consistente em todos os pontos de observação aponta para a origem, o provedor de DNS do próprio domínio, e não para uma rede qualquer no meio do caminho.

Precisa conferir os endereços DNS públicos de um domínio? Use a ferramenta Domain IP Lookup.

Leitura relacionada

Três motivos para o mesmo domínio responder de forma diferente

Geo-roteamento

Um servidor de borda por região

Cache

TTLs independentes, caches independentes

Split-horizon

Uma resposta diferente, por design

Solução de problemas

Por que meu domínio resolve diferente em cada rede?

Ver um IP diferente em casa, no escritório ou na rede celular do seu telefone não é necessariamente um bug. Veja o que de fato está acontecendo.

3 min de leitura

Quatro resultados, quatro próximos passos diferentes

NXDOMAINO nome não existe: nunca vale tentar de novo
TIMEOUTNenhuma resposta chegou a tempo: em geral é transitório
SERVFAILO servidor não conseguiu processar: às vezes é transitório
REFUSEDRecusado por política: raramente é falha, raramente é transitório
Solução de problemas

Timeout de DNS vs. SERVFAIL: qual é a diferença?

Os dois parecem uma consulta que falhou, mas um timeout e um SERVFAIL apontam para problemas diferentes e pedem próximos passos diferentes.

3 min de leitura

Quatro resultados, quatro próximos passos diferentes

NXDOMAINO nome não existe: nunca vale tentar de novo
TIMEOUTNenhuma resposta chegou a tempo: em geral é transitório
SERVFAILO servidor não conseguiu processar: às vezes é transitório
REFUSEDRecusado por política: raramente é falha, raramente é transitório
Solução de problemas

NXDOMAIN explicado: por que um domínio não resolve

NXDOMAIN significa que o domínio não existe no que diz respeito ao DNS: não é timeout nem problema de servidor. Veja o que realmente o causa.

3 min de leitura