[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-users] unpredictible multiple bridge behaviour.



On Wed, Mar 21, 2007 at 04:41:30PM +0100, Chris Fanning wrote:
> Hi,
> 
> I'm using two bridges.
> Since upgrading from 3.0-2 to 3.0-4 the vif's are randomly
> interchanged when passed to domU.
> 
> sometimes vif1.0 gets assigned to eth0 and vif1.1 to eth1 on domU
> sometimes vif1.1 gets assigned to eth0 and vif1.0 to eth1 on domU
> 
> I've tried two 'my-network-bridge' scripts.
> 

Hi Chris

Assuming that the output of "brctl show" (ignoring the bridge-id 
field), looks like this:

   bridge name     bridge id               STP enabled     interfaces
   xenbr0          8000.feffffffffff       no              vif0.0
                                                           peth0
   xenbr1          8000.feffffffffff       no              vif0.1
                                                           peth1
   
then you don't need to worry about the bridge building script you are
running.

I have no idea why your vif interfaces are being assigned randomly to 
eth interfaces in your domUs, but a quick test here suggests that 
you can work around the problem by specifying static mac addresses 
and using a bit of udev magic in domU. The following are instructions 
on how to acheive this.

1. In the configuration file for a domU, specify a static mac address
   and a bridge for each interface as follows:

   vif = [ 'mac=00:16:3e:00:00:11, bridge=xenbr0',
           'mac=00:16:3e:00:00:22, bridge=xenbr1' ]
   
   Make sure you put commas in all the right places.

2. Then inside the domU create a file called /etc/udev/vm-local.rules
   and put the following in it:

     SUBSYSTEM=="net", ATTRS{address}=="00:16:3e:00:00:11", NAME="eth0"
     SUBSYSTEM=="net", ATTRS{address}=="00:16:3e:00:00:22", NAME="eth1"

3. Now just add a symlink to the udev rules directory so that your 
   rules file, vm-local.rules, is processed before all the other rules 
   files. The following works on my distro:

      cd /etc/udev/rules.d
      ln -s ../vm-local.rules  010_vm-local.rules

   Make sure that your symlink ends in ".rules" or it will be ignored.

Now, every time you start this domU, udev should ensure that eth0 and
eth1 are always the same devices.

Probably not the answer you were hoping for, but hopefully it helps.

jez


_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.