Um registo SOA descreve a autoridade de uma zona DNS. Indica o servidor primário, o contacto responsável e fornece o número de série e temporizações que regem a sincronização com servidores secundários.
Inclui nome, tipo, servidor primário (MNAME), contacto (RNAME), serial e cinco durações. O TTL controla o tempo em cache no resolvedor local.
| Nome | Tipo | Servidor primário | Contacto | Serial | Refresh | Retry | Expire | Minimum TTL | TTL (s) |
|---|
| @ | SOA | ns1.exemplo.net. | hostmaster.exemplo.com. | 2025090301 | 7200 | 900 | 1209600 | 3600 | 3600 |
O contacto é escrito como email com ponto no lugar da arroba: hostmaster.exemplo.com. corresponde a hostmaster@exemplo.com. O serial deve aumentar a cada alteração. Refresh, retry, expire e minimum TTL são expressos em segundos.
- MNAME: host de referência da zona.
- RNAME: contacto para notificações sobre a zona.
- Serial: usado pelos secundários para detetar atualizações.
- Refresh: intervalo entre verificações do primário pelos secundários.
- Retry: tempo antes de tentar novamente após falha.
- Expire: prazo após o qual um secundário desiste se não conseguir atualizar.
- Minimum TTL: tempo de cache negativo (não é o TTL padrão dos demais registos).
Nota
Existe apenas um SOA por zona, publicado no ápice com os NS. O campo minimum TTL rege apenas caches negativas.
O TTL do SOA controla o cache desta resposta. Valor demasiado alto pode atrasar a observação de novo serial; valor equilibrado garante reatividade sem sobrecarga.
Sempre no ápice da zona. Subdomínios delegados têm SOA próprio na zona filha. O ápice não pode ser CNAME, pois precisa conter SOA e NS.
Evite
Esquecer de incrementar o serial após alterações.
Definir primário que não resolve em A/AAAA.
Trocar refresh por retry.
Usar expire demasiado curto, levando secundários a abandonar a zona.
Lookup DNS mostra MNAME, RNAME, serial e temporizações. Em seguida teste localmente.
nslookup
set q=soa
exemplo.com
nslookup
set q=soa
server 1.1.1.1
exemplo.com
dig soa exemplo.com
dig soa exemplo.com @1.1.1.1
Serial antigo num secundário indica atraso na transferência. Refresh alto atrasa propagação. Expire curto pode fazer secundário abandonar a zona. Contacto mal formatado impede comunicações.
- Preparar alterações da zona.
- Incrementar o serial.
- Recarregar a zona no primário.
- Permitir que secundários sincronizem (ou forçar transferência).
- Verificar novo serial a partir de várias redes.
Dica prática
Utilize formato de serial predictível, como AAAAMMDDXX. Ex.: 2025090301 para a primeira alteração do dia.
Configurar zona no novo serviço, validar SOA/NS e, então, atualizar delegação no registo.
Autorize transferência no primário e confirme que o secundário obtém a zona com o serial correcto.
Modificar RNAME e confirmar receção de emails de teste.
- Se SOA divergir entre autoritativos, aguarde ciclo de refresh e verifique novamente.
- Se secundário ficar preso em serial antigo, verifique conectividade e permissões de transferência.
- Se a zona “cair” num secundário, aumente expire e valide o estado do primário.
- Se o valor antigo persistir no resolutor, aguarde o TTL e limpe caches controladas.
Em resumo, o SOA define autoridade e temporizações de uma zona. Serial consistente e valores ajustados garantem sincronização fiável. Verifique com ferramentas online e com nslookup/dig para manter a operação previsível e sem stress.