So I got XEN working but the network interfaces on my host became a mess and it is somewhat related to my naming conventions.

I like to name my interfaces with easy (at least to me) to understand names. For example, my local interface is named “lan”. The one that my PPPoE connections are running over is “inet”. A third card going to my neighbor is called “nei”. On my desktop where I was testing XEN I only have one interface — lan.

When I start xend, the default network-bridge script is trying to set up some bridges (another option I had to recompile here), and is trying to move the configuration of my physical interface to the new bridge and rename the bridge to have the name of my interface (after renaming the interface itself of course). What happened is that udev kicked in when the new interfaces showed up as it is doing its best to keep my interfaces with consistent names. That pretty much did the mess, except that the network-bridge script itself was not really comfortable handling interfaces whose last symbol is not a digit.

My solution was the following:

Add a new network script called network-null. It does nothing. It’s empty. Use that as the network-script for xend. Then I set up my system network configuration to use a bridge with a single port. And that pretty much did the trick me.

There is also what seems to be a pretty good alternative network script for XEN. It does the XEN magic a little better, it detects the default interface well, and I would recommend it as a good default choice. It also doesn’t seem to want to rename your interfaces, but only copy the configuration over to the bridge.

Next on the to-play-with list: pass some PCI devices to the guest domains.