Vérificateur de propagation DNS

Interroge les enregistrements DNS d'un domaine auprès de plusieurs résolveurs publics (Google, Cloudflare, etc.) en même temps pour voir si un changement de serveur de noms s'est déjà propagé dans le monde.

Astuces

  • Juste après avoir changé un serveur de noms ou un enregistrement A, certains résolveurs peuvent encore renvoyer l'ancienne valeur jusqu'à l'expiration de leur TTL (durée de vie en cache) — c'est normal, pas un bug.
  • Si les résolveurs ne concordent pas, vérifiez d'abord le TTL. Un TTL plus long (par exemple 24 heures) signifie que la propagation prend naturellement plus de temps à se terminer partout.
  • Cet outil ne se limite pas aux enregistrements A : utilisez-le aussi pour les MX et TXT (SPF/DKIM, etc.), surtout juste après avoir modifié des réglages liés au courrier électronique.
  • Une réponse NXDOMAIN signifie que le domaine lui-même n'existe pas. Vérifiez s'il y a une faute de frappe ou un enregistrement expiré.
  • Comme cet outil interroge aussi des résolveurs situés hors du Japon, il permet également d'évaluer l'état de propagation pour un public international.

Questions fréquentes

En général entre quelques minutes et environ 48 heures, selon le TTL configuré sur l'enregistrement et la façon dont chaque fournisseur d'accès met en cache les réponses. Définir un TTL plus court à l'avance permet aux futurs changements de se propager plus vite.

Juste après un changement, c'est parfaitement normal. La durée pendant laquelle chaque résolveur continue de servir son ancienne valeur en cache dépend du TTL ; en vérifiant à nouveau plus tard, vous devriez voir de plus en plus de résolveurs converger vers la même valeur.

Cela vient généralement d'une faute de frappe dans le nom de domaine, d'un enregistrement expiré, ou du fait que la configuration du serveur de noms elle-même n'a pas encore été appliquée. Vérifiez l'état actuel du domaine via le WHOIS ou le tableau de bord de votre registraire.

Votre ordinateur ou votre FAI peut conserver en cache une valeur DNS provenant d'un moment différent de celui des résolveurs publics interrogés par cet outil. Il est aussi utile d'essayer de vider le cache DNS de votre système d'exploitation.

Comme le TTL peut être configuré indépendamment pour chaque type d'enregistrement, un enregistrement MX ayant un TTL plus long que les autres prendra naturellement plus de temps à se propager.
ツールくん

Anecdote — personne ne « diffuse » vraiment les changements DNS

Le DNS repose sur un système de cache hiérarchique depuis sa conception en 1983. Si chaque résolveur de la planète devait remonter jusqu'aux serveurs racine à chaque requête, le système ne pourrait pas tenir la charge — c'est pourquoi chaque résolveur conserve une réponse dans son propre cache pendant la durée autorisée par le TTL (Time To Live) de l'enregistrement, répondant instantanément depuis ce cache aux questions répétées. C'est exactement ce qui rend le DNS rapide, mais cela crée aussi un effet secondaire : un délai avant qu'un changement ne soit visible partout.

Ce délai est communément appelé « propagation DNS », mais en réalité, rien n'est activement diffusé au monde entier. Ce qui se passe vraiment, c'est que l'entrée de cache obsolète de chaque résolveur expire silencieusement selon son propre calendrier de TTL, et n'est rafraîchie que lors de la prochaine requête — un renouvellement passif et progressif plutôt qu'un envoi actif. Avec un TTL de 24 heures, un résolveur quelque part pourrait en théorie continuer à renvoyer l'ancienne valeur pendant les 24 heures complètes suivant le changement.

Le protocole DoH (DNS over HTTPS) sur lequel repose cet outil a été porté à l'origine vers 2018 par Mozilla et Google, principalement pour des raisons de confidentialité — afin que les FAI et autres tiers présents sur le chemin réseau ne puissent pas voir le contenu d'une requête DNS. Chiffrer le trafic DNS à l'intérieur d'une connexion HTTPS ordinaire a aussi eu un effet secondaire utile : cela a donné naissance à une API JSON standardisée que des outils comme celui-ci peuvent utiliser pour interroger plusieurs résolveurs publics via un serveur, sans avoir besoin de sockets DNS bas niveau.