Les Forums

Les Forums

Les forums sont fermés. Ils restent présent pour consultation et archivage.
Vous pouvez désormais poser vos questions directement dans les commentaires en bas de chaque page du site.
Alors n'hésitez pas à participer

DNS - Bind - Faire pointer une URL sur 2 IP

Bonjour,
J'aimerais dans un DNS Bind sous Linux faire pointer une URL vers 2 IP MAIS en allouant prioritairement une seule IP. Si cette IP n'est plus accessible laors l'URL est accessible à partir de la seconde IP.
Est-ce possible?
Merci,
Philippe
BIND peut utiliser le round robin pour sa résolution de nom DNS. Par exemple on peut avoir deux adresses IP pour un enregistrement.

www.toto.com. A 1.2.3.4
www.toto.com. A 2.3.4.5

Le serveur reverra une fois sur deux chacune des IP.
ATTENTION cependant DNS ne fait aucun test sur la connectivité des ces IP ! DNS ne fait (dans ce cas ci) que traduire un FQDN en adresse IP. A la limite, les adresses IP ne seraient pas "valides" que DNS continuerait de répondre. Exemple :

www.toto.com. A 0.0.0.0
www.toto.com. A 127.0.0.1

Le job de DNS se limite à ça. Si tu veux implémenter une tolérance de panne sur un site WEB, il faudra utiliser d'autres technologies comme par exemple le NLB (Network Load Balancing) qui peut correspondre (dans certaines conditions) à ce que tu recherches. Le concept est transparent pour les clients et même pour le DNS.

Exemple. Tu as deux serveurs HTTP qui ont les même données. web1.toto.com [IP : 1.2.3.4.5] et web2.toto.com [IP : 2.3.4.6]. Tu souhaites que les clients y accèdent en utilisant le FQDN www.toto.com. Et bien le NLB est un composant a configurer sur chacun des serveurs. Grossièrement, ils vont en plus de leur adresses IP perso, partager tous les deux une autre adresse IP, celle du NLB [IP : 6.7.8.9]. Ce qui donne au niveau DNS :

www.toto.com. A 6.7.8.9

Même pour être plus précis :

www.toto.com. A 6.7.8.9
web1.toto.com. A 1.2.3.4
web2.toto.com. A 2.3.4.5

Lorsqu'un datagramme IP arrive pour 6.7.8.9, les deux serveurs le recoivent, mais le composant NLB décide de qui va répondre. Les composants NLB des deux serveurs parlent entre eux pour se tenir au courant de leur état respectif, cette communication est appelée heartbeat. Si un noeud tombe, le NLB le sait et les clients ne voit pas la différence. Cela peut faire de la répartition de charge. Tu peux aussi fixer des préférences, tout sur un serveur et si il est indispo, tout sur l'autre, ou 60% 40% ou tout autre config. Cela se configure par port, en l'occurence là il s'agirait du port 80. Attention, selon l'implémentation du NLB le heartbeat est plus ou moins intelligent. Par exemple, certains NLB utilisent ICMP pour vérifier que les noeuds sont en ligne. Or, un noeud peut etre en ligne sans pour autant avoir le port 80 de joignable (le serveur HTTPd peut etre down). Donc bien se renseigner sur le choix du NLB. Il s'agit en fait de répartion de sessions HTTP plus que de répartition de charge. Certain switch ont cette fonctionnalité, si ce n'est pas ton cas, go to Google > NLB 🙂