Pular para o conteúdo

DNS em operação

Intermediário16 min de leituraredes

DNS é a primeira coisa que acontece em qualquer requisição e a última que as pessoas suspeitam quando algo quebra. Também é onde uma mudança de dois segundos leva horas para se desfazer, porque o mundo inteiro guardou a resposta antiga em cache. Operar DNS bem é, principalmente, entender esse atraso e trabalhar com ele.

  • A / AAAA — nome para IPv4 / IPv6.
  • CNAME — apelido para outro nome. Não pode coexistir com outros registros no mesmo nome, e por isso não funciona no ápice do domínio (exemplo.com.br). Provedores oferecem ALIAS/ANAME para resolver isso.
  • MX — servidores de e-mail, com prioridade.
  • TXT — verificações e política de e-mail (SPF, DKIM, DMARC).
  • CAA — quais autoridades podem emitir certificado para o domínio. Barato e pouco usado; configure.
  • NS / SOA — delegação da zona e seus parâmetros.
Janela do terminal
dig +short loja.exemplo.com.br A
dig +trace loja.exemplo.com.br # o caminho completo, do root ao autoritativo
dig @8.8.8.8 loja.exemplo.com.br # o que um resolvedor público está vendo
dig +short exemplo.com.br NS # quem responde pela zona

Ao investigar, sempre compare a resposta do autoritativo com a de um resolvedor público: divergência significa cache, não erro de configuração.

O TTL diz por quanto tempo a resposta pode ser guardada. Ele é o principal controle operacional que você tem:

  • TTL alto (24h): menos consultas, mais estabilidade — e mudança que demora um dia.
  • TTL baixo (60s): mudança rápida, mais consultas ao autoritativo.

A regra de ouro é planejar antes: baixe o TTL com antecedência (pelo menos o valor do TTL antigo antes da janela), faça a mudança, valide, e só depois volte a subir.

Janela do terminal
# 24h antes da migração
# loja.exemplo.com.br 60 IN A 203.0.113.10
dig +noall +answer loja.exemplo.com.br # confirme que o TTL curto já circula

Isso vale especialmente para DR: TTL de 300s configurado hoje é o que permite desviar tráfego em minutos amanhã. Reduzir TTL durante o desastre não ajuda — a resposta antiga já está em cache com o TTL antigo.

Vale lembrar: não existe “propagação” de DNS como um processo que você acompanha. O que existe é cache expirando em ritmos diferentes pelo mundo — e resolvedores que ignoram TTL muito baixo.

Provedores gerenciados (Route 53, Cloud DNS, Azure DNS, NS1) fazem mais que traduzir nome:

  • Failover com health check: se o endpoint principal falhar, o registro passa a responder o secundário. É o mecanismo de DR mais simples que existe.
  • Latência / geolocalização: encaminha para a região mais próxima ou por país — útil para atender Brasil e exterior com infraestruturas diferentes.
  • Ponderado: divide tráfego por percentual, o que permite migração gradual entre ambientes.

O limite de tudo isso é o cache: quem já resolveu continua indo para o destino antigo até o TTL expirar. Por isso DNS serve para mudanças de minutos, e balanceador ou proxy serve para mudanças de segundos.

Registro ponderado é um jeito legítimo de fazer blue-green entre ambientes inteiros: 100/0, depois 90/10, depois 50/50. Funciona bem para migração de infraestrutura e mal para canário fino de aplicação — o controle é grosseiro e a reversão depende de cache.

Para canário de verdade, use o balanceador, o ingress ou o mesh. Deixe o DNS para o que ele faz bem: apontar para o ponto de entrada certo.

A sequência que evita a indisponibilidade clássica:

  1. Inventarie a zona atual, registro por registro (inclusive TXT de verificação e MX — esquecer o e-mail é o erro mais comum).
  2. Crie a zona no provedor novo com todos os registros, sem mexer na delegação.
  3. Compare as duas respostas, consultando cada autoritativo diretamente:
    Janela do terminal
    for r in A MX TXT CNAME; do
    diff <(dig @ns-antigo.exemplo A loja.exemplo.com.br +short) \
    <(dig @ns-novo.exemplo A loja.exemplo.com.br +short)
    done
  4. Reduza o TTL do NS e dos registros críticos, e aguarde o TTL antigo expirar.
  5. Troque a delegação no registrador (no .br, no painel do Registro.br).
  6. Mantenha a zona antiga funcionando por pelo menos uma semana — resolvedores teimosos existem, e desligar cedo é o que transforma migração em incidente.
  • Expiração do domínio (não só do certificado). Renovação automática e alerta com 60 dias — domínio expirado derruba tudo, inclusive o e-mail para recuperar o domínio.
  • Registros de e-mail (SPF/DKIM/DMARC), que quebram silenciosamente.
  • Resolução a partir de vários pontos, não só da sua rede.
  • Mudanças na zona: alerta em qualquer alteração, porque sequestro de DNS é um ataque eficiente e discreto. Ative bloqueio de transferência no registrador e DNSSEC quando o provedor suportar.

Próximo passo: o nome resolvido precisa de conexão confiável. Continue em TLS e certificados.