Xen, mode bridge plus Ip Failover... Comment faire ?

Bonjour

Question pour les spécialistes de Xen…

Voila, je possede une dédibox
Dessus, j’ai Xen 4 en mode bridge pour émuler un réseau local
En gros, ip de ma box : 88.190.42.XX
réseau local entre mon dom0 et mes domU : 10.1.1.1
Dom0 s’occupant du routage via iptable.

Jusque la, tout va bien.

Pour des raisons pratiques, j’aimerais faire en sorte qu’une de mes domU soit accessible a la fois via le réseau local et à la fois via une IP failover commandé chez online.

Le soucis, c’est que je ne trouve pas comment faire.
Mes différents essais restent infrutueux.

Config du Dom0 : (vif-script vif-bridge)

/etc/networf/interface :

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 88.190.42.XX
netmask 255.255.255.0
network 88.190.42.0
broadcast 88.190.42.255
gateway 88.190.42.1

auto dummy0
iface dummy0 inet manual
up ip link set $IFACE address 3a:11:9d:4d:d7:64

auto brlan
iface brlan inet static
address 10.1.1.1
netmask 255.255.255.0
network 10.1.1.0
broadcast 10.1.1.255
bridge_ports dummy0
bridge_stp off
bridge_maxwait 0

Config d’un domu :

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 10.1.1.25
netmask 255.255.255.0
gateway 10.1.1.1

Mon Ip Failover est 88.191.223.YY

D’abord je veux faire une mise au point : arrêtez de parler d’IP failover à tort et à travers ! Ce n’est pas parce que l’hébergeur ou le FAI appelle ça “failover” que c’en est. Le failover, c’est une fonctionnalité pour faire de la redondance entre deux machines ou plus. Ici comme dans la plupart des cas, cette adresse IP supplémentaire sert pour une tout autre fonction qui n’a strictement rien à voir avec le failover.

Je suppose que cette adresse IP supplémentaire est routée directement sur le réseau local sur lequel est connecté l’interface eth0 du dom0, mais c’est à vérifier. Dans ce cas, je vois trois solutions : une propre, une moins propre et une pas propre du tout.

  • La propre : un second pont entre eth0 du dom0 et une interface virtuelle du domU concerné (qui peut être en plus de l’interface connectée au pont local des autres domU)

  • La moins propre : annoncer l’adresse supplémentaire par proxy ARP sur le dom0, et la router sur le domU concerné via une paire d’interfaces virtuelles (pas besoin de pont)

  • La pas propre du tout : affecter l’adresse supplémentaire au dom0 et faire du NAT source et destination depuis et vers l’adresse privée du domU concerné.

Si au contraire l’adresse IP supplémentaire est routée via l’adresse principale de ton dom0, alors c’est simple : il suffit de la configurer sur le domU et de créer la route correspondante sur le dom0.

PS : Curiosité de ma part, à quoi sert l’interface dummy et pourquoi lui attribuer une adresse MAC particulière ?

Si Dedibox fonctionne comme chez OVH, il faut créer des mac virtuelles afin qu’elles soient autorisées à circuler dans le réseau.

Admettons, mais sauf erreur de ma part, d’après le contenu du fichier interfaces l’adresse MAC de l’interface dummy n’a pas vocation à circuler sur le réseau extérieur puisque le pont brlan dont elle fait partie ne contient pas eth0.

De ce que j’ai pu voir en galérant avec xen, le bridge avec dummy0 sert à remplacer le bridge sur eth0 dans le cas ou toute les machines n’ont pas une adresse public ou que l’hébergeur n’accepte pas les adresses mac virtuelle sur son réseau.
La dom0 fait le routage entre eth0 et dummy0 pour permettre aux DomU de dialoguer avec l’extérieur. Le bridge continue à permettre le dialogue entre les machines.

C’est ce que j’avais fait il y a quelques mois. Maintenant, je tenterai de faire des routes pour aiguiller les flux à partir de la dom0.

Edit :
En fait sans dummy0, je ne suis jamais arrivé à faire dialoguer ma dom0 avec une domU. De mémoire, j’avais besoin de dummy0 pour créer une vif liée au pont.

Je suis très intéressé par des infos sur des méthodes propres.

Tu peu t’inspirer de ça : installation-passerelle-linux-avec-virtualisation-xen-t19412.html

Par curiosité sur la domU :
route add mask 255.225.255.255
Et dans le fichier hosts de la domU

Est ce que ca a une chance de marcher ?
(Pour le moment je cherche des pistes et j’en suis à installer ma dom0)