[libvirt] how do I stop libvirt futzing with my network configuration?
Daniel P. Berrange
berrange at redhat.com
Mon Nov 30 10:02:21 UTC 2009
On Sat, Nov 28, 2009 at 10:41:58PM +0000, Nix wrote:
> On 28 Nov 2009, Ian Woodstock verbalised:
> > I suspect that's why libvirt won't let you connect to it, since
> > libvirt is looking for a "shared physical device" and there's not a
> > device in the bridge.
> Gah. So libvirt won't let me connect a bunch of devices to a bridge
> without that bridge being bridged to something already? So you
> can't have a pile of bridges with VMs on them *routed* to the rest of
> the net?
Please distinguish between libvirt & virt-manager. libvirt allows this
find - it is happy to connect VMs to any bridge device. virt-manager is
providing a higher level UI which only presents a smaller subset of the
functionality. In this case is only supporting the libvirt managed NAT
mode, and bridging of a physical inteface.
An alternative to using virt-manager is to install your VMs using the
command line 'virt-install' tool which offers a much greater level of
functionality - in this case you'd be able to simply add
to the args when installing a VM to make it use your bridge. The
virt-install manpage has lots of examples of all the other args.
> >> There's no iptables at all on this particular box (at least not yet,
> >> although it may turn up later on when I put Windows guests on here: I'm
> >> not having *them* running around free).
> > So it sounds like the root of your issue now is that you're using
> > dummy network device.
> > Is that being done temporarily now because you don't have a network
> > plumbed in or is there some other use case?
> It was an emergency hack when I found virt-manager not noticing bridges
> that had nothing on them (it said 'not bridged'). I stuck the dummy
> device on it and it started working. However, this appears to have
> been transient.
> ... In the code, the only place where it checks if a bridge exists
> is in src/network/bridge_driver.c:networkFindActiveConfigs(), and
> it only bothers to check *that* if there's a config file in the
> NETWORK_STATE_DIR (/var/lib/libvirt/network):
Again the network driver here is libvirt's NAT based networking, not
regular physical device bridging. Yes, its a bad naming convention :-)
The physical interface management APIs are provided by the 'interface'
driver (ie the virsh iface-XXX commands).
|: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
More information about the libvir-list