28.10.2016 23:32, Michal Privoznik пишет:
On my host node i using system created bridge. example
brctl show br1
bridge name bridge id STP enabled interfaces
br1 8000.0025907925d3 no eth1
vnet0
vnet2
vnet3
vnetN - guest net adapter, It added to bridge at guest's node started.
bridge defined as
==
<network>
<name>internal</name>
<forward mode="bridge"/>
<bridge name="br1"/>
</network>
==
But in guest config xml vnet[0-3] nod defined
===
<interface type='network'>
<mac address='52:54:00:b3:b0:47'/>
<source network='internal'/>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x03'
function='0x0'/>
</interface>
===
> Can i assign static vnet* device for some guests?
What do you mean?
vnet* devices are created by libvirt when a domain is being started (or
on device hotplug). In general, unless all devices would be statically
allocated, it would be impossible to guarantee certain vnet name.
However, what you can do is to create the device yourself and then just
tell libvirt to use it:
<interface type='bridge'>
<source bridge='vnetX'/>
</interface>
But most likely, the problem you are trying to solve looks for a
different solution. If you need the device name in order to set up some
environment (e.g. apply some FW rules on the device), we have network
hooks and domain hooks - user defined scripts that are run by libvirt on
various events (e.g. domain startup, device hotplug, etc.). You should
consider those.
Michal