Che cos'è il TTL del DNS? Time To Live spiegato
Il TTL (Time To Live) è un campo presente in ogni record DNS che indica ai resolver per quanto tempo possono tenerlo in cache prima di richiederne una copia aggiornata al name server autoritativo. Il TTL determina direttamente la velocità con cui le modifiche DNS si propagano in Internet.
Come funziona il TTL
Quando un resolver consulta un record DNS per la prima volta, ne mette in cache il risultato per il numero di secondi indicato dal TTL. In quel periodo, ogni query sullo stesso record viene servita dalla cache: nessuna query raggiunge il tuo name server.
example.com. 3600 IN A 203.0.113.1
^^^^
TTL = 3600 seconds = 1 hourDopo 3600 secondi il resolver scarta la copia in cache e interroga di nuovo il name server autoritativo per ottenere un record aggiornato.
Valori di TTL e loro impatto
| TTL | Duration | Use Case |
|---|---|---|
60 | 1 minute | Durante una migrazione in corso o test di failover |
300 | 5 minutes | Record che cambiano occasionalmente (utile per pianificare migrazioni) |
3600 | 1 hour | Valore predefinito comune: equilibrio tra attualità e prestazioni |
86400 | 24 hours | Record stabili come NS e MX, che cambiano raramente |
604800 | 7 days | Record SOA e altri dati molto stabili |
Il TTL prima di una migrazione DNS
La tecnica classica quando si pianifica una modifica DNS (ad esempio il passaggio a un nuovo server):
- 48+ ore prima: Abbassa il TTL a 300 secondi
- Attendi che il vecchio TTL alto scada in tutto il mondo
- Effettua la modifica DNS (ad esempio aggiorna l'IP del record A)
- Attendi 5 minuti che il nuovo TTL si propaghi
- Dopo aver verificato che tutto funzioni, riporta il TTL a 3600 o più
Questo riduce al minimo i tempi di inattività, perché le cache si aggiornano rapidamente dopo la modifica.
TTL minimo del SOA
Il record SOA (Start of Authority) contiene un TTL minimo che si applica alle risposte negative (la cache di «questo record non esiste»). Se interroghi un record inesistente, il resolver mette in cache l'esito «non trovato» per quel periodo.
Compromessi del TTL
| Low TTL | High TTL |
|---|---|
| Le modifiche si propagano rapidamente | Le modifiche richiedono più tempo per propagarsi |
| Più query DNS verso il tuo server | Meno query DNS (prestazioni migliori) |
| Failover e ripristino più rapidi | Più difficile modificare rapidamente i record |
| Latenza DNS un po' più alta per gli utenti | Cache migliore: più veloce per gli utenti |
Valori di TTL consigliati per tipo di record
| Record Type | TTL consigliato | Reason |
|---|---|---|
| A / AAAA | 3600 (1h) | Può cambiare durante le migrazioni di server |
| CNAME | 3600 (1h) | Stabile, ma può cambiare al cambio di CDN |
| MX | 3600–86400 | I server di posta cambiano raramente |
| TXT (SPF/DMARC) | 3600 | La policy può richiedere aggiornamenti occasionali |
| NS | 86400 (24h) | Molto stabile: cambia solo cambiando provider DNS |
| SOA | 86400 | Cambia raramente |
Controlla i tuoi valori di TTL attuali
Vedi la teoria in pratica: esegui Ricerca DNS sul tuo dominio.