I have a CentOS 6 Box (Kernel 2.6.32-642.6.1.el6.x86_64) where 2 KVM instances are running.
I am getting two VLANs from the datacenter. Unfortunately, they wont combine both VLANs to one VLAN. I need to use both VLANs at the same time on the same KVM guests.
The default VLAN is untagged and the second vlan is tagged on id 471.
Currently, i make it this way:
bridge name bridge id STP enabled interfaces
br0 8000.0cc47a7fed0a no eth1
kvm1100.0
br1 8000.0cc47a7fed0a no eth1.471
kvm1101.0
That is working as expected. I can use the untagged VLAN on KVM instance 1100 and VLAN 471 on KVM instance 1101.
Now i want that KVM 1101 can use IP addresses from the untagged VLAN and from VLAN 471.
So I have added eth1.471 to br0 and then added kvm1101.0 to br0 too.
bridge name bridge id STP enabled interfaces
br0 8000.0cc47a7fed0a no eth1
eth1.471
kvm1100.0
kvm1101.0
That is working and I can access both VLANs on both instances. It works as I would like it.
But when eth1.471 gets added to br0 I see packet loss on the whole network. Not only on this server, it affects everything. When I remove eth.471 from br0 the packet loss stops.
It seems that this is not the correct way. I have tried various things but I always end up with the same result.
What am I missing? As mentioned, the datacenter is not willing to combine both VLANs to one.
It is not an option to pass the VLANs to the KVM instance and configure the VLAN + IP addresses there. The KVM instance should be able to use both vlans without additional configuration.
Best Answer
When you bridge eth1 with eth1.174 you actually create a topology loop in the datacenter network on your interface, hence the packet loss and other woes.
The possible solution to your problem is introduction of a second interface to kvm1101 and add that KVM interface to br0, keeping br0 and br1 as separate bridges bound to their respective VLANs on the physical adapter.