[libvirt] VirtualBox libvirt support sample XML file

Pritesh Kothari Pritesh.Kothari at Sun.COM
Thu Apr 16 11:42:11 UTC 2009


Hi Daniel,

> > 		<!--INTERNAL NETWORK -->
> > 		<interface type='network'>
> > 			<source network='int_net'/>
> > 			<model type='am79c970a'/>
> > 		</interface>
> >
> > 		<!-- HOST ONLY NETWORK -->
> > 		<interface type='ethernet'>
> > 			<source dev='vboxnet0'/>
> > 			<mac address='78:16:3e:4d:c7:9e'/>
> > 			<model type='82543gc'/>
> > 		</interface>
>
> The Bridge & NAT  mappings you've defined here seem to make
> good sense.
>
> I'm not so sure about the INTERNAL and HOST ONLY modes
> though.
>
> With the <interface type='network'>  configuration, the
> source network is expected to refer to a network visible
> and managed via the virNetwork*  APIs.
>
> In QEMU / Xen drivers,  we have a generic network driver
> impl that uses a bridge device, dnsmasq & iptables to
> allow guests to talk to each other, optionaly talk to the
> host, and then optionally  have NAT connectivity to the
> outside world. This is the src/network_driver.c impl of
> the virNetwork* APIs.
>
> Conceptually the virNetwork APIs & their functionality ought
> to map nicely onto the both the INTERNAL and HOST ONLY
> networks modes virtual box has.
>
> The HOST ONLY mode, would map to a config without a
> <forward> tag (so guests & host can talk to each other).
> The INTERNAL mode, wouldmap toa config without an
> <ip> tag (so guests can talk to each other, but not host)
>
>
> What I'm not  clear on is where / how VirtualBox configures its
> HOST ONLY and INTERNAL  networks ?  Does it have APIs for managing
> these 2 configs as objects in their own right ? Or are they managed
> implicilty via the VM config. The RPC stub code you posted  earlier
> does not appear to have any APIs for directly configuring the
> HOST ONLY / INTERNAL network configs, independantly of the VM config
> I might be mis-reading something though..
>
> I'm inclined to suggest that virtual box driver should provide its own
> impl of the virNetwork internal driver API, in order to allow  direct
> managemnet of the HOST ONLY & INTENRAL networks. Then for VM NICs,
> both those would be done via a <interface type='network'> element.

I am not sure if "Host only" and "internal" network deserves a full 
implementation of the virNetwork internal driver API because they are not 
exposed as separate objects, instead each network card can be individually 
specified as having "Host only" or "Internal" network configuration and 
VirtualBox handles rest, so all i need is a way to specify which network type 
to use and an IPAddr if possible and thus I had map-ed them as above.
Currently the only way I can think of simplifying it is adding "Host Only" 
and "Internal" to the XML parsing and using it.

Regards,
Pritesh




More information about the libvir-list mailing list