Bonjour,
j'aimerais comprendre un peu mieux DNS (j'utilise bind) et j'aimerais faire en sorte que lorsque mon serveur jabber fritalk.com est mort (ça peut être soit le soft qui ne répond plus, soit la machine elle-même est complètement inaccessible), les clients qui tentent de se connecter le fassent automatiquement sur un autre serveur.
En fait, considérons juste le problème générique suivant : j'ai deux serveurs qui sont miroirs l'un de l'autre. J'aimerais que si l'un deux ne répond pas, les gens soient automatiquement connectés au second.
qqn a une idée de comment on fait ça ?
# DNS Round Robin
Posté par Mathieu Millet (site web personnel) . Évalué à 0.
Suivant la configuration de Bind, celui-ci va renvoyer une ou plusieurs données (adresses, nom de serveur...) dans un ordre déterminé (cyclique, aléatoire, fixe...).
Ensuite, c'est à ton client d'essayer les différents serveurs
Autre possibiltié : Ne renseigner qu'une seule donnée (un seul serveur par exemple) dans ton DNS. Le serveur DNS teste la disponibilité de ton service et il met à jour l(es)' enregistrement(s) correspondants (et recharge la conf'). Inconvénients : Attention aux différents "caches" (client, serveur "forward", serveur esclave) .... et c'est réellement pas propre.
J'espère que cela pourra t'aider.
[^] # Re: DNS Round Robin
Posté par mac . Évalué à 2.
Le DNS round robin permet simplement d'envoyer le client sur un serveur au hasard... il n'a pas l'intelligence de se dire "mmm... le serveur X fonctionne-t-il réellement"... et le client n'a pas cette intelligence non plus en général.
[^] # Re: DNS Round Robin
Posté par Mathieu Millet (site web personnel) . Évalué à 1.
Quant au client, excuse-moi, mais je connais un certain nombre de soft qui savent parfaitement gérer le fait de recevoir plusieurs ressources possibles pour un nom demandé (lors du gethostbyname).
Pour le test de fonctionnement du serveur équilibré, bien sûr c'est un programme indépendant de BIND (et non par BIND lui-même !) qui met à jour les fichiers de zone et recharge BIND quand c'est nécessaire. Cela implique que les time-out (de cache négatif, notamment) doivent être assez court.
Enfin, comme préciser dans les commentaires ci-dessous, la bonne méthode est d'implémenter les RRsets de type SRV, mais cela implique que le client sache utiliser ce type d'enregistrements.
# re
Posté par LaBienPensanceMaTuer . Évalué à 2.
Tu configures tes deux ns comme ayant autorité sur le sous domaine jabber.tondomaine.com et tout deux s'annonce comme étant la machine jabber.tondomaine.com
donc en gros un dig @server1 jabber.tondomaine.com te répondra server1 et idem pour le server2.
Ensuite, tu configures tes NS pour que le temps de cache des zones DNS soit très courts (genre 5 minutes).
Et pour finir, tu configures auprès de ton registrar serveur1 en tant que ns1 et serveur2 en tant que ns2
Comme ça, si server1 est down et le cache expiré (donc + de 5minutes), alors le clients va aller résoudre jabber.tondomaine.com aurpès de server2 qui lui donnera son adresse.
Sinon, si tu ne peux pas utiliser cette solution, il te reste la possibilité de mettre plusieurs enregistrements A pour jabber.tondomaine.com mais cela n'est pas très très fiable. C'est utilisé en temps normal pour avoir une pseudo répartition de charge.
Voila en espèrant t'avoir aidé.
# RFC 2782
Posté par mac . Évalué à 2.
Tu as un joli exemple là par exemple :
http://www.zytrax.com/books/dns/ch8/srv.html(...)
Par contre, très peu de clients implémentent ce protocole à ma connaissance...
# CARP
Posté par Krunch (site web personnel) . Évalué à 2.
http://ucarp.org/(...)
pertinent adj. Approprié : qui se rapporte exactement à ce dont il est question.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.