[libvirt-users] virtual networking - virbr0-nic interface

I need some help in understanding libvirt's virtual networking. I have configured bridged networking (shared physical device) on libvirt+KVM system which is working fine. Also, I am using default NAT network on with virbr0 bridge device and virbr0-nic. I would like to get better understanding on virbr0-nic works in this virtual network configuration. I understand that traffic from virbr0 bridge is forwarded through host system's physical interface eth0 using iptables rules, but I am not following virbr0-nic's working here. I see it attached to virbr0 bridge device though. {{{ $ brctl show bridge name bridge id STP enabled interfaces br0 8000.14feb5dc4f06 no eth0 vnet1 virbr0 8000.525400f5a4ed yes virbr0-nic vnet2 }}} Any pointers on how virbr0 and virbr0-nic work would be really helpful. -- Thanks, Shantanu

On 10.09.2012 23:09, Shantanu Pavgi wrote:
I need some help in understanding libvirt's virtual networking. I have configured bridged networking (shared physical device) on libvirt+KVM system which is working fine. Also, I am using default NAT network on with virbr0 bridge device and virbr0-nic. I would like to get better understanding on virbr0-nic works in this virtual network configuration. I understand that traffic from virbr0 bridge is forwarded through host system's physical interface eth0 using iptables rules, but I am not following virbr0-nic's working here. I see it attached to virbr0 bridge device though.
{{{ $ brctl show bridge name bridge id STP enabled interfaces br0 8000.14feb5dc4f06 no eth0 vnet1
virbr0 8000.525400f5a4ed yes virbr0-nic vnet2
}}}
Any pointers on how virbr0 and virbr0-nic work would be really helpful.
It's a workaround for kernel bug/feature. The bridge's MAC is copied from the first NIC attached. So if one detach all interfaces from a bridge and then attach just one, the bridge will lost previous MAC and gain a new one - just the same as the attached interface has. So if libvirt has to ensure a MAC for virtual bridge - it creates this dummy device (no traffic is routed through though) and just attach it to the virtual bridge. Regards, Michal
-- Thanks, Shantanu
_______________________________________________ libvirt-users mailing list libvirt-users@redhat.com https://www.redhat.com/mailman/listinfo/libvirt-users

On Sep 11, 2012, at 4:12 AM, Michal Privoznik wrote:
On 10.09.2012 23:09, Shantanu Pavgi wrote:
I need some help in understanding libvirt's virtual networking. I have configured bridged networking (shared physical device) on libvirt+KVM system which is working fine. Also, I am using default NAT network on with virbr0 bridge device and virbr0-nic. I would like to get better understanding on virbr0-nic works in this virtual network configuration. I understand that traffic from virbr0 bridge is forwarded through host system's physical interface eth0 using iptables rules, but I am not following virbr0-nic's working here. I see it attached to virbr0 bridge device though.
{{{ $ brctl show bridge name bridge id STP enabled interfaces br0 8000.14feb5dc4f06 no eth0 vnet1
virbr0 8000.525400f5a4ed yes virbr0-nic vnet2
}}}
Any pointers on how virbr0 and virbr0-nic work would be really helpful.
It's a workaround for kernel bug/feature. The bridge's MAC is copied from the first NIC attached. So if one detach all interfaces from a bridge and then attach just one, the bridge will lost previous MAC and gain a new one - just the same as the attached interface has.
So if libvirt has to ensure a MAC for virtual bridge - it creates this dummy device (no traffic is routed through though) and just attach it to the virtual bridge.
Regards, Michal
Thanks Michal, that's helpful in understanding the network chain. -- Shantanu
participants (2)
-
Michal Privoznik
-
Shantanu Pavgi