Cos'è il TTL nel DNS?

Hai appena aggiornato un record DNS, quindi perché il tuo sito mostra ancora la versione vecchia? Quel ritardo dipende da cos'è il TTL nel DNS e da come funziona. TTL sta per time to live e controlla per quanto tempo i server di tutto il mondo tengono una…

Bozza

Immagina la scena. Hai appena cambiato fornitore di hosting e hai aggiornato il record A per puntare al nuovo server. Ricarichi il sito e non è cambiato niente. Si carica ancora il vecchio sito. Controlli il pannello DNS e il nuovo record è salvato. Cosa sta succedendo?

La risposta è il TTL. Quando imposti un record DNS, imposti anche un valore TTL che dice a ogni server DNS di internet per quanto tempo può tenere una copia in cache di quel record. Finché quel timer non scade, quei server continueranno a servire le vecchie informazioni, anche dopo che hai fatto una modifica. Capire come funziona il DNS parte dal capire il TTL, perché controlla la velocità di ogni modifica DNS che fai.

Cosa significa TTL?

TTL sta per time to live, tempo di vita. Nel contesto del DNS è un numero legato a ogni record DNS che dice ai server per quanti secondi possono tenere in cache quel record prima di dover tornare a controllare se c'è una copia nuova.

Ogni record DNS che crei ha un valore TTL. Lo usano tutti i tipi di record DNS. Record A, record CNAME, record MX, record TXT. Ognuno ha la propria impostazione TTL e ognuno può avere un valore diverso a seconda di quanto spesso ti aspetti che quel record cambi.

Come funziona il TTL in parole semplici?

Quando qualcuno scrive il tuo dominio nel browser, il suo dispositivo chiede a un server DNS l'indirizzo IP del tuo sito. Quel server DNS cerca il tuo record A e ottiene la risposta. Ma legge anche il valore TTL legato a quel record.

Se il tuo TTL è impostato su 3600, il server DNS conserva quella risposta per 3.600 secondi (un'ora). Per l'ora successiva, chiunque chieda a quello stesso server DNS il tuo dominio riceve la risposta in cache. Il server non ricontrolla finché il timer non scade.

Quando il TTL scade, la richiesta successiva fa partire una nuova ricerca. Il server DNS torna alla fonte, prende il record attuale, legge il nuovo valore TTL e fa ripartire il conto alla rovescia.

Pensalo come un post-it sul frigorifero. Qualcuno scrive il numero di telefono della pizzeria e lo attacca al frigo. Tutti in casa usano quel numero finché il biglietto non scade (viene buttato). Poi qualcuno deve cercare di nuovo il numero. Se nel frattempo la pizzeria ha cambiato numero, il nuovo numero viene recepito solo dopo che il vecchio biglietto non c'è più.

Come si misura il TTL?

Il TTL si misura sempre in secondi. Ecco i valori più comuni e a quanto tempo reale corrispondono.

  • 300 equivale a 5 minuti
  • 600 equivale a 10 minuti
  • 1800 equivale a 30 minuti
  • 3600 equivale a 1 ora
  • 14400 equivale a 4 ore
  • 43200 equivale a 12 ore
  • 86400 equivale a 24 ore

La maggior parte dei pannelli DNS mostra il campo TTL quando crei o modifichi un record. Alcuni usano un menu a tendina con opzioni predefinite come "1 ora" o "automatico". Altri ti lasciano scrivere il numero esatto di secondi.

Cosa succede quando il TTL è alto?

Un TTL alto significa che i server DNS tengono in cache il tuo record per molto tempo. Se il TTL è 86400 (24 ore), ogni server DNS che cerca il tuo record terrà quella risposta per un giorno intero prima di ricontrollare.

Il vantaggio è che ci sono meno ricerche DNS. Quando migliaia di visitatori caricano il tuo sito, i loro resolver DNS hanno già la risposta in cache. Questo significa caricamenti di pagina leggermente più rapidi e meno carico sull'infrastruttura DNS.

Lo svantaggio è che le modifiche impiegano più tempo a diffondersi. Se aggiorni il record A con un TTL di 24 ore, alcuni visitatori potrebbero vedere ancora il vecchio sito fino a 24 ore. Scambi la rapidità delle modifiche con l'efficienza delle ricerche.

Cosa succede quando il TTL è basso?

Un TTL basso significa che i server DNS aggiornano il tuo record più spesso. Se il TTL è 300 (cinque minuti), i server buttano la risposta in cache ogni cinque minuti e la cercano di nuovo.

Il vantaggio è che le modifiche si diffondono in fretta. Se aggiorni un record con un TTL di cinque minuti, la maggior parte di internet vede il nuovo valore nel giro di pochi minuti.

Lo svantaggio è che ci sono più richieste DNS. Ogni volta che la cache scade, il server deve fare una nuova ricerca. Per un sito con molto traffico, questo significa più carico sui tuoi server DNS autorevoli. Per la maggior parte dei brand piccoli e medi, la differenza non si nota. Ma tenere un TTL basso in modo permanente quando non stai facendo modifiche è inutile.

Qual è un buon TTL predefinito?

Per la maggior parte dei record DNS, 3600 (un'ora) è un valore predefinito solido. Trova un equilibrio tra due cose.

  • Le modifiche si propagano entro un'ora, abbastanza in fretta per gli aggiornamenti di routine
  • I server DNS non devono cercare il tuo record ogni pochi minuti quando non è cambiato nulla

Se i tuoi record DNS cambiano di rado (e per la maggior parte dei brand è così), puoi usare senza problemi 3600 o anche 14400 (quattro ore). L'unico momento in cui ti serve un TTL più basso è quando sai che sta per arrivare una modifica.

Quando conviene abbassare il TTL?

Abbassa il TTL prima di qualsiasi modifica DNS importante. Ecco le situazioni in cui un TTL basso ti fa risparmiare tempo e grattacapi.

  • Cambio del fornitore di hosting e aggiornamento del record A
  • Migrazione del sito a una nuova piattaforma
  • Cambio del fornitore di email e aggiornamento dei record MX
  • Puntare un dominio a un sito per la prima volta
  • Configurazione di un sistema di failover o di bilanciamento del carico

In ognuno di questi casi vuoi che la modifica abbia effetto il prima possibile. Un TTL basso lo rende possibile.

Come abbassare il TTL prima di una migrazione

C'è una strategia semplice che gli amministratori DNS esperti usano prima di qualsiasi migrazione di server. Funziona in tre passaggi.

  1. Da 24 a 48 ore prima della modifica, abbassa il TTL a 300 (cinque minuti). Così il vecchio TTL alto ha il tempo di scadere su tutti i server DNS del mondo. Quando sei pronto a fare la modifica vera e propria, la maggior parte dei server controllerà ogni cinque minuti
  2. Fai la modifica DNS. Aggiorna il record A (o il record che stai cambiando) al nuovo valore. Poiché il TTL è già basso, i server DNS di tutto il mondo recepiscono il nuovo valore nel giro di pochi minuti
  3. Dopo che la modifica è confermata e funziona, riporta il TTL a 3600 o al valore predefinito che preferisci. Così smettono le ricerche continue ora che la modifica è fatta e il nuovo record è stabile

Saltare il primo passaggio è l'errore più comune. Se il TTL è ancora impostato su 86400 quando fai la modifica, alcuni server DNS serviranno il vecchio record fino a 24 ore, perché la loro cache non è ancora scaduta. Abbassare il TTL in anticipo lo evita.

Come sono collegati TTL e propagazione DNS?

La propagazione DNS è il processo con cui i tuoi record DNS aggiornati si diffondono su tutti i server DNS del mondo. Il TTL è il fattore principale che controlla quanto dura quel processo.

Quando si dice "la propagazione DNS può richiedere fino a 48 ore", significa che alcuni server DNS potrebbero aver messo in cache il tuo vecchio record con un TTL alto e non cercheranno aggiornamenti finché il loro timer non scade.

Un TTL basso prima di una modifica significa propagazione più rapida. Un TTL alto significa propagazione più lenta. È così diretto. Il numero di 48 ore è lo scenario peggiore per i record con un TTL di 24 ore, perché alcuni server potrebbero aver messo in cache il record subito prima della tua modifica e avere ancora quasi un giorno intero sul timer.

Errori comuni con il TTL

Due errori ricorrono più di tutti gli altri quando si parla di TTL.

Dimenticare di abbassare il TTL prima di una modifica. È l'errore grosso. Aggiorni il record A per puntare a un nuovo server, ma il TTL era impostato su 86400. Ora alcuni visitatori vedono il nuovo sito e altri il vecchio, e non puoi fare altro che aspettare. Abbassa sempre il TTL da 24 a 48 ore prima di fare modifiche DNS.

Impostare un TTL troppo basso in modo permanente. Un TTL di 60 secondi significa che ogni server DNS cerca aggiornamenti ogni minuto. Se i tuoi record non cambiano, crea solo traffico DNS inutile. Può anche rendere il sito leggermente più lento per i nuovi visitatori, il cui resolver DNS deve fare una nuova ricerca più spesso. Usa un TTL basso in modo temporaneo quando le modifiche sono pianificate, poi riportalo su.

Come WEMASY gestisce il TTL

Quando colleghi un dominio personalizzato al tuo sito WEMASY, la piattaforma gestisce la configurazione DNS come parte del processo di configurazione. WEMASY imposta valori TTL predefiniti sensati per i record che ti servono, così non devi indovinare quali valori usare.

Se passi a WEMASY da un altro fornitore, la guida alla configurazione del dominio ti spiega come abbassare il TTL prima del passaggio, così la transizione avviene senza intoppi. WEMASY include hosting, SSL e gestione del dominio in un unico abbonamento. Scopri cosa include ogni piano nella pagina dei prezzi di WEMASY.

Cosa viene dopo

Ora che hai capito cos'è il TTL e come controlla la velocità delle modifiche DNS, il prossimo capitolo tratta come funziona la propagazione DNS. Scoprirai cosa succede dietro le quinte quando un record DNS si aggiorna, perché la propagazione non è istantanea e come controllare se le tue modifiche si sono diffuse. Per il quadro completo di come funziona il sistema dei nomi di dominio, rileggi il capitolo su come funziona il DNS.

Domande frequenti

Si può impostare un TTL diverso per ogni record DNS?

Sì. Ogni record DNS ha il proprio campo TTL. Puoi impostare il record A su 3600 (un'ora) e il record MX su 14400 (quattro ore) se serve. I record che cambiano più spesso possono avere un TTL più basso, mentre quelli stabili possono usarne uno più alto. Con il creatore di siti di WEMASY puoi impostarlo direttamente sul tuo sito.

Il TTL influisce sulla velocità di caricamento del sito?

Non direttamente. Il TTL controlla ogni quanto i server DNS aggiornano la loro copia in cache dei tuoi record DNS. Una volta che il dispositivo di un visitatore ha risolto il tuo dominio in un indirizzo IP, il TTL non ha alcun effetto sulla velocità di caricamento delle pagine. La differenza riguarda solo la rapidità con cui si completa la ricerca DNS, che aggiunge millisecondi, non secondi.

Che TTL usare per i record dell'email?

Per i record MX e i record TXT legati all'email (come SPF e DKIM), un TTL di 3600 (un'ora) è un valore predefinito sicuro. Se stai per cambiare fornitore di email, abbassa il TTL a 300 uno o due giorni prima della modifica, poi riportalo su quando la nuova configurazione è confermata.

Si possono costringere i server DNS a svuotare la cache prima che scada il TTL?

No. Non puoi costringere i server DNS esterni a scartare i record in cache. Ogni server rispetta il proprio timer. L'unico modo per accelerare il processo è aver impostato un TTL basso prima di fare la modifica. Alcuni fornitori DNS offrono uno strumento per svuotare la cache dei propri server, ma non riguarda ogni server di internet.

Esiste un valore minimo di TTL da usare?

Tecnicamente puoi impostare il TTL anche a 1 secondo, ma la maggior parte dei fornitori DNS impone un minimo di 60 o 300 secondi. Scendere sotto 300 è raramente utile. Anche durante le migrazioni, un TTL di cinque minuti ti dà una propagazione rapida senza sovraccaricare l'infrastruttura DNS.

Mettilo in pratica
sul tuo sito web.

Inizia gratis con WEMASY e crea il tuo sito in pochi minuti.