Qu'est-ce que le TTL en DNS ?

Le TTL (time to live) est le nombre de secondes pendant lesquelles une réponse DNS peut être gardée en cache avant que le résolveur ne doive réinterroger les serveurs faisant autorité.

Chaque enregistrement DNS est publié avec un TTL. Quand un résolveur récursif récupère l'enregistrement, il le garde dans son cache et répond aux requêtes suivantes à partir de là, en décomptant le TTL. Ce n'est que lorsqu'il atteint zéro que le résolveur retourne vers le serveur de noms faisant autorité. C'est le cache qui rend le DNS rapide et maintient une charge faible sur les serveurs faisant autorité.

Le compromis se joue entre maîtrise et efficacité. Un TTL long (des heures ou une journée) signifie moins de requêtes et plus de résilience si votre fournisseur DNS subit une panne, mais un changement met ce temps-là à être vu partout. Un TTL court (quelques minutes) rend les changements rapidement effectifs, au prix de davantage de requêtes.

La routine pratique pour une migration planifiée : abaissez le TTL bien à l'avance (au moins une durée d'ancien TTL avant le changement), faites le changement, confirmez que tout fonctionne, puis remontez le TTL. Abaisser le TTL au moment même du changement ne sert à rien, car les résolveurs détiennent encore l'ancienne réponse avec l'ancien TTL.

Exemple

example.com.  300  IN  A  192.0.2.10   ; cacheable for 300 seconds

Vérifier

Voyez ce que cela donne sur un vrai domaine (TTL) :

Recherche DNS