0 XP
Módulo 2 · Redes, HTTP e Nginx

DNS: registros, TTL e por que a mudança não propagou

Intermediário 35 min+25 XPdignslookupRoute 53

Objetivos desta aula

  • Consultar registros com dig
  • Escolher entre A, CNAME e ALIAS
  • Planejar troca de IP com TTL baixo

DNS traduz nome em endereço, e cada tipo de registro tem um papel: A aponta para IPv4, AAAA para IPv6, CNAME para outro nome, MX para e-mail, TXT para verificações e SPF, NS delega a zona. Na AWS, o registro ALIAS resolve a limitação de CNAME no domínio raiz apontando direto para ALB ou CloudFront.

TTL é a duração do cache. Se você vai trocar de servidor, reduza o TTL para 60 segundos algumas horas antes; do contrário, parte dos usuários continuará indo para o IP antigo por horas. É por isso que 'já mudei o DNS e ainda não funciona' quase sempre é cache, não erro.

Ao diagnosticar, consulte o servidor autoritativo e não apenas o resolvedor local: dig +trace mostra a cadeia completa, e comparar a resposta do seu resolvedor com a do autoritativo revela imediatamente se o problema é propagação.

1. Como uma resolução acontece de verdade

Sua máquina pergunta ao resolvedor recursivo (do provedor, 1.1.1.1, 8.8.8.8). Se ele não tiver cache, pergunta à raiz, que indica os servidores de .dev, que indicam os servidores autoritativos de cloudshop.dev, que finalmente respondem o IP. O resolvedor guarda a resposta pelo TTL e devolve a você.

2. Os registros que você vai usar

  • A / AAAA: nome → IPv4 / IPv6
  • CNAME: nome → outro nome (não pode coexistir com outros registros no mesmo nome)
  • ALIAS/ANAME: comportamento de CNAME no apex, específico do provedor
  • MX: servidores de e-mail
  • TXT: SPF, DKIM, verificação de domínio, desafios ACME
  • NS: quem é autoritativo pela zona
  • CAA: quais autoridades podem emitir certificados

3. TTL e cache negativo

O TTL vale também para respostas 'não existe' (NXDOMAIN), controladas pelo registro SOA. Se você consultou um nome antes de criá-lo, pode ficar recebendo NXDOMAIN por alguns minutos mesmo após a criação. Não é bug: é cache negativo.

4. Migração de IP sem indisponibilidade

  1. Um dia antes, baixe o TTL para 60s.
  2. Suba o novo destino e teste com curl --resolve api.cloudshop.dev:443:NOVO_IP https://api.cloudshop.dev/health.
  3. Troque o registro.
  4. Mantenha o servidor antigo ativo pelo TTL antigo.
  5. Volte o TTL para 300–3600s.

5. DNS dentro do Kubernetes e do Docker

Containers usam um DNS interno: no Docker Compose, o nome do serviço resolve para o container; no Kubernetes, api.cloudshop.svc.cluster.local resolve para o Service. Muitos erros 'host not found' em cluster vêm de namespace errado no nome curto.

6. Checagem final

Você deve saber consultar o autoritativo, ler o TTL restante, validar um novo destino antes da troca e explicar por que o apex não aceita CNAME.

Na prática

Diagnóstico de DNS

bash

dig api.cloudshop.dev +short
dig api.cloudshop.dev A +noall +answer      # inclui TTL
dig NS cloudshop.dev +short                  # servidores autoritativos
dig @1.1.1.1 api.cloudshop.dev +short        # resolvedor publico
dig +trace api.cloudshop.dev | tail -20
dig TXT cloudshop.dev +short
resolvectl status | head -20                   # resolvedor local

Testar novo servidor antes de trocar o DNS

bash

# forca o nome a resolver para o novo IP apenas neste comando
curl -sS --resolve api.cloudshop.dev:443:203.0.113.20 https://api.cloudshop.dev/health
# {"status":"ok"}  <- novo destino pronto; agora pode trocar o registro A
dig api.cloudshop.dev @ns-1.awsdns-00.com +noall +answer   # resposta do autoritativo

Por que isso importa

Migração de infraestrutura sem plano de DNS gera indisponibilidade parcial e difícil de explicar.

Erro comum

Trocar o registro com TTL de 24h e prometer que a mudança será imediata.

Dica de produção

Antes de qualquer migração, baixe o TTL, valide o novo destino, migre e só depois volte o TTL para um valor alto.

Pergunta de entrevista

Por que não se usa CNAME no domínio raiz e qual a alternativa na AWS?

Glossário

TTL
Tempo em segundos que um registro pode ficar em cache.
autoritativo
Servidor que detém oficialmente os registros da zona.
resolvedor recursivo
Servidor que faz a busca completa e mantém cache para os clientes.
NXDOMAIN
Resposta DNS indicando que o nome não existe.
apex
O domínio raiz da zona, como cloudshop.dev.
CAA
Registro que restringe quais autoridades podem emitir certificados.

Conexão com o CloudShop

Criar api.cloudshop.dev com TTL 60 durante a fase de migração.

Quiz da aula

  1. 1. Você mudou o registro A mas parte dos usuários ainda vai ao IP antigo. Causa mais provável?

  2. 2. Qual registro é usado no desafio DNS-01 do Let's Encrypt?

  3. 3. Como validar um servidor novo sem mexer no DNS?

Minhas anotações

Salvo automaticamente neste navegador.

AnteriorPróxima