On Jan 23, 2008, at 5:29 PM, Cedric Tabary wrote:

On 23/01/2008 16:20, Greg VILLAIN wrote:
Je cherche des retours d'expérience sur AnyCast en cas concrêt,
quelqu'un a ca ?

C'est marrant que t'en parle maintenant parceque je me suis ammusé à
faire ca sur une paire de dns récursif qui sont sur des subnet
différents. L'idée étant dans mon cas de faire du failover.
En mettant les metric égaux sur les deux on pourrait appeler ca de
l'anycast si on veut :)

Les deux machines sont sur des subnet différents x.x.126.0/25 et
x.x.127.1/25 sur un réseau en OSPF.

Le 1er linux que je nomme rdns1 :
inet x.x.126.1/25 brd x.x.126.127 scope global eth0
inet x.x.126.254/32 scope global eth0 # 1e ip "anycast"
inet x.x.127.254/32 scope global eth0 # 2e ip "anycast"

Le 2nd linux que je nomme rdns2 :
inet x.x.127.1/25 brd x.x.127.127 scope global eth0
inet x.x.126.254/32 scope global eth0
inet x.x.127.254/32 scope global eth0

La on remarque les /32 qui sont à la fois sur les deux linux.
Je fais tourner un quagga dessus, qui annonce les IP des services à
"anycaster" ...

router ospf
ospf router-id x.x.126.1
log-adjacency-changes
redistribute connected metric 240 route-map OSPFCONNECTED
network x.x.126.0/25 area 0.0.0.51
!
access-list RDNS1 permit x.x.126.254/32
access-list RDNS2 permit x.x.127.254/32
!
route-map OSPFCONNECTED permit 10
match ip address RDNS2
set metric 500
!
route-map OSPFCONNECTED permit 100

Il en ressort que rdns1 annonce x.x.126.254/32 avec un metric de 240 et
x.x.127.254/32 avec un metric de 500.
J'ai fait l'inverse sur rdns2.

Ce que le cisco juste devant voit :
#sh ip route ospf
O E2    x.x.127.254/32
          [110/240] via x.x.127.1, 1w0d, GigabitEthernet1/0.127
O E2    x.x.126.254/32
          [110/240] via x.x.126.1, 1w0d, GigabitEthernet1/0.126

En cas de coupure d'un serveur l'ospf met un peu de temps a converger
(le temps qu'il s'apercoive que le serveur a disparu) mais ca se tune.

Ca marche plutot bien pour des services en UDP, par contre en TCP c'est
à éviter si la machine qui recoit les réponses n'est pas la meme qui a
envoyé la requete c'est moyen !
Il faut aussi que le dns récursif fasse ses propres requetes dns depuis
l'IP réelle de la machine et non l'ip en "anycast" ! sinon c'est un
autre qui risque de recevoir la réponse.

a+
Cédric Tabary


Ah bin DNS c'est un bon exemple, les roote-servers I, J, K, L, M sont en anycast - me semble-t-il.

Greg VILLAIN

---------------------------
Liste de diffusion du FRnOG
http://www.frnog.org/

Répondre à