[libvirt-users] Forward routed network bridge on system's vlan

RaSca rasca at miamammausalinux.org
Mon May 30 08:34:53 UTC 2011

Hi all,
I created a two node cluster that manages virtual machines with two 
servers connected via a cross cable on the network I want 
that machines that runs on different servers in the network can see all the others.
To make this possible I've configured a vlan on each server:

5: eth1.111 at eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc 
noqueue state UP
     link/ether 5c:d9:98:b1:4c:4d brd ff:ff:ff:ff:ff:ff
     inet brd scope global eth1.111
     inet6 fe80::5ed9:98ff:feb1:4c4d/64 scope link
        valid_lft forever preferred_lft forever

And created a "lan" network, via virsh:

   <forward dev='eth1.111' mode='route'/>
   <bridge name='virbr1' stp='on' delay='0' />
   <ip address='' netmask=''>

but with this setup "lan" never comes up because, for some reason, the 
network is locked:

# virsh net-start lan
error: Failed to start network lan
error: internal error Network is already in use 
by interface eth1.111

What is not clear to me is why, if I turn down the eth1.111 device, 
start the lan network, turn eth1.111 up and then force the brctl addif 
command, everything works:

# ifdown eth1.111
Removed VLAN -:eth1.111:-

# virsh net-start lan
Network lan started

# ifup eth1.111
Set name-type for VLAN subsystem. Should be visible in /proc/net/vlan/config
Added VLAN with VID == 111 to IF -:eth1:-

# brctl addif virbr1 eth1.111

# brctl show
bridge name	bridge id		STP enabled	interfaces
br0		8000.6c626dd7518e	no		eth0
virbr0		8000.000000000000	yes		
virbr1		8000.5cd998b14c4d	yes		eth1.111

Why manually is possible to make things work? What am I ignoring?

Thanks a lot,

Mia Mamma Usa Linux: Niente è impossibile da capire, se lo spieghi bene!
rasca at miamammausalinux.org

More information about the libvirt-users mailing list