O que é TTL?
TTL (Time To Live - Tempo de Vida) é uma configuração de DNS que especifica, em segundos, por quanto tempo um registro DNS deve ser armazenado em cache por resolvedores, navegadores e outros sistemas antes que eles devam solicitar uma cópia nova dos servidores de nomes autoritários. Os valores de TTL equilibram entre propagação rápida de mudanças de DNS (TTL baixo) e carga reduzida de servidor com melhor desempenho (TTL alto).Como o TTL Funciona
DNS Query Flow with TTL:
1. Client queries resolver for example.com
2. Resolver checks cache - not found
3. Resolver queries authoritative server
4. Server returns: A record 192.0.2.1, TTL 3600
5. Resolver caches for 3600 seconds (1 hour)
6. Subsequent queries served from cache
7. After 3600s, cache expires, cycle repeats
Valores de TTL Comuns
| TTL (segundos) | Duração | Caso de Uso |
|---|---|---|
| 60-300 | 1-5 minutos | Durante mudanças de DNS, failover |
| 300-900 | 5-15 minutos | Serviços dinâmicos |
| 3600 | 1 hora | Websites padrão |
| 14400 | 4 horas | Registros estáveis |
| 86400 | 24 horas | Registros raramente alterados |
TTL em Registros DNS
Formato de Registro
example.com. 3600 IN A 192.0.2.1
│
└── TTL in seconds
TTLs Diferentes por Registro
; Stable nameservers - high TTL
example.com. 86400 IN NS ns1.example.com.
; Web server - moderate TTL
www.example.com. 3600 IN A 192.0.2.1
; Dynamic content - low TTL
api.example.com. 300 IN A 192.0.2.50
Estratégia de TTL
Antes de Mudanças de DNS
Baixar TTL antes de mudanças planejadas:
Timeline:
Day -2: Lower TTL from 86400 to 300
Day 0: Make DNS change
Day 0+: Change propagates within 5 minutes
Day +1: Raise TTL back to 86400
Compromissos
| TTL Baixo (60-300) | TTL Alto (3600+) |
|---|---|
| Propagação rápida | Propagação lenta |
| Mais consultas DNS | Menos consultas DNS |
| Carga de servidor mais alta | Carga de servidor mais baixa |
| Melhor para failover | Melhor para estabilidade |
| Latência mais alta | Latência mais baixa |
TTL e Propagação de DNS
O TTL afeta diretamente o tempo de propagação:
Max propagation time ≈ Highest cached TTL
If TTL = 86400 (24 hours):
- Some users see old IP for up to 24 hours
- Global propagation: up to 24-48 hours
If TTL = 300 (5 minutes):
- Most users see new IP within 5-10 minutes
- Global propagation: under 1 hour
Verificando TTL Atual
Usando dig
dig example.com A
;; ANSWER SECTION:
example.com. 3542 IN A 192.0.2.1
│
└── Remaining TTL (seconds until cache expires)
Usando nslookup
nslookup -debug example.com
Melhores Práticas
1. Usar valores apropriados: Corresponder TTL à volatilidade do registro
2. Baixar antes de mudanças: Reduzir TTL 24-48 horas antes
3. Considerar camadas de cache: CDNs, navegadores adicionam atrasos
4. Equilibrar carga vs velocidade: Não definir TTL desnecessariamente baixo
5. Monitorar após mudanças: Verificar propagação completa
6. Documentar padrões: Estabelecer políticas de TTL
O TTL é um conceito fundamental de DNS que afeta diretamente com que velocidade as mudanças de DNS entram em vigor em toda a internet e quanta carga seus servidores de nomes manipulam.