[libvirt] some questions about libvirt features and limitations

Daniel P. Berrange berrange at redhat.com
Thu Mar 5 12:09:08 UTC 2009

On Wed, Mar 04, 2009 at 04:11:54PM +0100, Florian Vichot wrote:
> >I'm not sure - it depends what you're doing with the TAP device on the
> >host side of things ?
> The project I'm working on is an information system simulator. So I need 
> virtual machines and virtual networks. I plan to use libvirt to provide 
> the virtual machines, but even though I know libvirt provides virtual 
> network facilities, the ones we developed are more adequate to what we 
> need. So I need a way to "bridge" the network frames coming from the 
> virtual machines into our "virtual networks". The way we do that using 
> our current setup is by "sniffing" all traffic from TAP interface (that 
> each corresponds to an "ethX" interface inside a guest) and injecting 
> those frames inside our "virtual networks" to have those frames routed 
> where necessary.
> So what I need is a TAP for each ethernet interface in each guest, and 
> that's it. No bridge, no NAT. Just a one-to-one correspondence of guest 
> "ethX" interfaces to host TAP interfaces.
> It seems to be what libvirt provides, but it always comes with a bridge. 
> Is there a way to get the TAP without the bridge ?

I think you'd have to rely on the generic script capability, eg

   <interface type='ethernet'>
      <script path="/some/file"/>

With that, QEMU / Xen will create the TAP device (or equivalent) and
then run the script to configure it. You'd just provide a custom script
todo whatever magic you desire with the TAP device.

This is only supported in our Xen and QEMU drivers at this time, though
it probably wouldn't be hard to implement it for OpenVZ / LXC / UML too.
|: 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 mailing list