Rappel : BGP propage, pas DNS (ni HTTP). Intéressants, les outils web pour résoudre des noms de domaine via DNS depuis divers points du globe.
On trouve souvent, sur les forums en ligne, des allusions à une « propagation » des informations stockées dans le DNS. Par exemple, une phrase comme « Les informations ont été modifiées au registre, il faut maintenant attendre 24 à 48 heures leur propagation ». Ce terme est-il correct ?
Je ne pense pas. « propagation » fait penser à un mouvement qui se déroule tout seul, une fois la source modifiée. C'est effectivement le fonctionnement de certains protocoles réseau comme BGP (RFC 4271) ou bien Usenet (RFC 5537) où, une fois injectées dans le système, les nouveautés se propagent en effet, sans autre intervention, de machine en machine, jusqu'à atteindre tout l'Internet.
Mais le DNS (RFC 1034) ne fonctionne pas comme cela. Il est pull et pas push, c'est-à-dire que l'information ne se propage pas toute seule mais est demandée par les clients, les résolveurs. Ceux-ci la gardent ensuite dans leur cache, leur mémoire, et reviennent aux serveurs faisant autorité lorsque la durée de séjour dans la mémoire arrive à son terme. Si un résolveur n'avait pas l'information dans son cache, il la demande et il aura tout de suite l'information à jour, sans « propagation ». S'il l'a dans son cache, attendre une hypothétique propagation ne changera rien, l'information nouvelle n'arrivera pas avant l'expiration des données.
Notez au passage que cette expiration est commandée par la source : celle-ci indique dans les données le TTL, c'est-à-dire la durée de vie des données. La source (le serveur faisant autorité) peut donc parfaitement commander le processus de mise à jour, contrairement à ce qui se passe pour BGP, où le routeur d'origine n'a aucune influence sur la propagation. C'est parce que la source (le domaine faisant autorité) choisit le TTL qu'il est possible (et même recommandé), lors d'un changement de données (par exemple migration d'un serveur Web vers un nouvel hébergeur, avec une nouvelle adresse IP) d'abaisser le TTL à l'avance, de manière à ce que la transition soit sans douleur, puis de le remonter après.
Donc, le terme « propagation » est mauvais, car il fait penser à un modèle de mise à jour qui n'est pas celui du DNS. Il vaut donc mieux utiliser un autre terme. Il n'en existe pas de standard alors j'adopte un terme proposé par Michel Py : « réjuvénation ». Il existe dans le dictionnaire et sonne bien. Je souhaite qu'on dise désormais des choses comme « L'AFNIC vient de modifier .fr, il faut maintenant attendre la réjuvénation des données. »
[…]
Un outil intéressant pour regarder la fraîcheur des informations DNS en demandant à des résolveurs DNS ouverts (accessibles à tous) est http://www.migrationdns.com/. Un autre, qui offre plusieurs possibilités intéressantes (demander à des résolveurs ouvertes, demander aux serveurs faisant autorité, etc) est http://www.preshweb.co.uk/cgi-bin/dns-propagation-tracker.pl. Citons enfin http://www.whatsmydns.net/.