[libvirt] netdev ethernet allow to specify ip address and routes

Laine Stump laine at laine.org
Wed Mar 23 17:46:30 UTC 2016


On 03/23/2016 11:35 AM, Vasiliy Tolstov wrote:
> Allow to use ip address and routes elements inside netowrk
> type='ethernet'.
> Also add ability to create point to point device addresses.
>
> Signed-off-by: Vasiliy Tolstov <v.tolstov at selfip.ru>
> ---
>   docs/schemas/interface.rng       |  6 +++++

I just mentioned elsewhere that this is the wrong file - interface.rng 
is the grammer for the XML that can be sent to netcf to configure host 
interfaces, and has nothing to do with the XML in either domain or 
libvirt network configuration.

>   include/libvirt/libvirt-domain.h |  1 +
>   src/conf/domain_conf.c           | 14 ++++++++++-
>   src/conf/domain_conf.h           |  1 +
>   src/conf/network_conf.c          | 26 ++++++++++++++++++-
>   src/conf/network_conf.h          |  1 +

Since there is no documentation included with the patch, and the wrong 
RNG file has been modified, I'm not clear on exactly why a libvirt 
virtual network would use a peer address.

Normally libvirt networks are made by creating a bridge device, adding 
in some iptables rules, and running an instance of dnsmasq to service 
dhcp and dns requests made by guests who have tap devices connected to 
that network. But if I understand correctly, your patches are intended 
to allow setting the local and peer address for guest-connected tap 
devices that aren't attached to a bridge on the host side, but instead 
rely on the host's IP stack to route appropriate traffic through the tap 
device. If so, then why is a libvirt network involved at all? Why/how 
could a bridge device be used for a point-to-point link? If this isn't 
just a misunderstanding of which parts of libvirt code affect what, then 
some examples (and patches to 
formatdomain.html.in/formatnetwork.html.in) would be very useful to help 
me understand.






More information about the libvir-list mailing list