Les packages Xen de Debian ne touche en rien la configuration réseau du système, ceci légitimement pour éviter une perte d’accès. Dans le cas d’une configuration en bridge, le script network-bridge de Xen permet de créer un pont réseau nommé eth0, ce qui n’est pas très standard. Ayant eu quelques problèmes avec ce script (erreurs de configuration au démarrage + la non prise en charge d’IPv6), la solution la plus sûre et stable consiste à le désactiver. Le bridge réseau peut dans ce cas être configuré de cette façon :

root@manjula:/etc/xen# cat /etc/network/interfaces
auto lo
iface lo inet loopback

iface eth0 inet manual

auto br0
iface br0 inet static
        address 192.168.100.5
        netmask 255.255.255.0
        network 192.168.100.0
        broadcast 192.168.100.255
        gateway 192.168.100.254
        up ip -6 addr add fdcb:9921:3552:afd6::5/64 dev br0
        up ip -6 route add default via fdcb:9921:3552:afd6::1
        down ip -6 addr del fdcb:9921:3552:afd6::5/64 dev br0
        down ip -6 route del default via fdcb:9921:3552:afd6::1
        bridge_maxwait 5
        bridge_ports noregex eth0 regex vif.*
        bridge_stp off
        bridge_fd 0

Au niveau de Xen, le script réseau se désactive de cette façon :

root@manjula:/etc/xen# cat /etc/xen/xend-config.sxp
#(network-script 'network-bridge bridge=xenbr0 antispoof=yes')
(vif-script vif-bridge)

Au niveau de chaque domU, il faut évidemment spécifier le nom du bridge à utiliser :

root@manjula:~# cat /etc/xen/sandeep

 

name = 'sandeep'
kernel = '/usr/lib/xen-4.0/boot/hvmloader'
builder = 'hvm'
device_model = '/usr/lib/xen-4.0/bin/qemu-dm'

memory = 2048
shadow_memory = 8
vcpus = 1
pae = 1
acpi = 1
apic = 1

vif = [ 'bridge=br0,type=paravirtualised' ]

disk = [ 'phy:/dev/vg/xen_sandeep,xvda,w' ]

on_poweroff = 'destroy'
on_reboot   = 'restart'
on_crash    = 'restart'

vnc = 1
usbdevice = 'tablet'

stdvga = 0
serial = 'pty'
ne2000 = "0"