Si vous ne disposez que d'une adresse publique et que vous voulez héberger plusieurs serveurs virtuels sous Xen, vous êtes obligé de passer par du NAT et dans ce cas voici comment configurer votre hôte dom0 Xen pour que ça marche.

Tout d'abord il faut modifier le fichier /etc/xen/xend-config.sxp pour y indiquer

(network-script network-nat)
(vif-script vif-nat)

Ensuite, pour Debian, un simple script ajouté au répertoire /etc/network/if-up.d[1] et nommé iptables[2] par exemple, fournit les règles pour le pare-feu iptables pour effectuer la translation d'adresse :

#!/bin/sh

echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -j MASQUERADE

Si ensuite vous voulez faire de la redirection de ports (ou port forwarding) il faut alors rajouter à ce fichier une règle du genre

iptables -A PREROUTING -t nat -p tcp -i eth0 --dport 80 -j DNAT --to 192.168.3.2:80

en spécifiant correctement les ports et adresses qui correspondent à votre configuration.

Bien évidemment, ce morceau de script pour configurer le pare-feu ne suffit pas pour assurer la sécurité de vos machines Xen (dom0 et domU)

Notes

[1] le fait de placer ce fichier dans ce répertoire permet qu'il soit lancé à chaque fois que le réseau est lancé

[2] n'oubliez pas de le rendre exécutable avec un chmod u+x iptables