La propagation DNS expliquée : pourquoi les changements prennent du temps et comment vérifier | Check Host

Vous avez modifié un enregistrement DNS et certains voient encore l'ancien ? Découvrez comment le TTL et le cache des résolveurs créent la « propagation » et comment la vérifier dans le monde entier.

Vous avez pointé votre domaine vers un nouveau serveur, et la moitié de vos utilisateurs arrivent encore sur l'ancien. Ce délai, on l'appelle la propagation DNS. En réalité rien ne se propage : d'anciennes réponses sont stockées dans des caches partout dans le monde et attendent d'expirer.

Ce qui se passe vraiment

Quand quelqu'un visite votre domaine, son appareil interroge un résolveur récursif (celui de son FAI, ou un résolveur public comme 1.1.1.1 ou 8.8.8.8). Ce résolveur interroge une fois vos serveurs de noms faisant autorité, puis met la réponse en cache aussi longtemps que le TTL de l'enregistrement le permet. Tant que le TTL n'a pas expiré, tous les utilisateurs de ce résolveur reçoivent l'ancienne réponse.

Le délai maximal d'un changement correspond donc à peu près à l'ancien TTL de l'enregistrement. Un enregistrement avec un TTL de 86400 secondes peut mettre jusqu'à un jour à se mettre à jour partout ; avec un TTL de 300, environ cinq minutes.

Comment faire des changements rapides

  1. La veille du changement, baissez le TTL de l'enregistrement à 300 secondes.
  2. Attendez que l'ancien TTL, plus long, expire.
  3. Faites le changement. Les caches se renouvellent désormais en quelques minutes.
  4. Une fois que tout est correct, remontez le TTL.

Changer de serveurs de noms prend plus de temps

Changer les serveurs de noms d'un domaine (chez votre registrar) fait intervenir les serveurs du TLD, dont les enregistrements NS ont souvent des TTL d'un ou deux jours. Prévoyez jusqu'à 48 heures.

Vérifier la propagation dans le monde entier

La requête DNS interroge votre enregistrement depuis des résolveurs dans de nombreux pays à la fois : vous voyez quels emplacements renvoient déjà la nouvelle valeur et lesquels servent encore l'ancienne. Vous pouvez interroger les enregistrements A, AAAA, CNAME, MX, TXT, NS, SOA et PTR, et choisir un résolveur précis.

Ce qu'on vérifie typiquement après un changement :

Toujours l'ancienne réponse en local ?

Votre machine et votre navigateur mettent aussi le DNS en cache. Videz-le (ipconfig /flushdns sous Windows, sudo resolvectl flush-caches sur la plupart des Linux, sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder sous macOS) ou testez avec un autre résolveur. Confirmez ensuite que le site répond depuis le nouveau serveur avec un test de site.