Le DNS round-robin est une technique d'équilibrage de charge qui implique l'utilisation de plusieurs adresses IP différentes pour un seul nom de domaine.
Cet article s'articule autour des points suivants :
Contenu associé
Abonnez-vous à theNET, le récapitulatif mensuel de Cloudflare des idées les plus populaires concernant Internet !
Copier le lien de l'article
Le DNS round-robin est une technique d'équilibrage de charge où l'équilibrage est effectué par un type de serveur DNS appelé serveur de noms faisant autorité, plutôt que d'utiliser un équipement dédié d'équilibrage de charge. Le DNS round-robin peut être utilisé lorsqu'un site web ou un service a son contenu hébergé sur plusieurs serveurs web redondants. Lorsque le serveur de noms faisant autorité DNS est interrogé pour une adresse IP, le serveur donne une adresse différente à chaque fois, en opérant sur une rotation. Cela est particulièrement utile lorsque les serveurs Web redondants sont géographiquement séparés en rendant difficile le load-balancing traditionnel. Round-robin est connu pour sa facilité de mise en œuvre, mais il présente également de solides inconvénients.
Un serveur DNS avec round-robin activé aura plusieurs enregistrements A, chacun avec le même nom de domaine, mais une adresse IP différente. Chaque fois que le serveur DNS est interrogé, il envoie l'adresse IP avec laquelle il a répondu le plus récemment à l'arrière de la file d'attente, en opérant sur une boucle. Les adresses IP dans un serveur DNS à tour de rôle sont comme des joueurs de baseball qui passent à la batte dans un ordre précis : chacun frappe à son tour puis est déplacé à l'arrière de la ligne.
La méthode round-robin ne permet pas toujours de fournir un équilibrage de charge uniformément répartie, en raison de la mise en cache DNS et de la mise en cache côté client. Si un utilisateur effectue une requête DNS à un résolveur récursif connaissant un trafic particulièrement élevé pour un site web particulier, ce résolveur mettra en cache l'adresse IP du site, en envoyant potentiellement une forte quantité de trafic à cette adresse IP.
L'autre inconvénient est que l'on ne peut pas compter sur le round-robin pour la fiabilité du site. Si l'un des serveurs tombe en panne, le serveur DNS conservera toujours l'IP de ce serveur dans la rotation du round-robin. Donc, s'il y a 6 serveurs et qu'un est déconnecté, un utilisateur sur six se verra refuser le service. De plus, le DNS round robin ne tient pas compte de la charge du serveur, du temps de la transaction, de la distance géographique et d'autres facteurs pour lesquels l'équilibrage de charge traditionnel peut être configuré.
Certains services avancés de round-robin ont des méthodes pour surmonter certains des inconvénients, tels que la possibilité de détecter les serveurs qui ne répondent pas et de les retirer de la rotation du round robin, mais il n'existe aucun moyen de contourner le problème de mise en cache. De nombreux fournisseurs DNS, comme Cloudflare DNS prennent en charge le DNS round robin.