Linux – Private network between two KVM VMs

kvm-virtualizationlinuxnetworkingproxmoxvirtualization

I'm trying to connect two KVM hosts together with a transparent ethernet link. I'm using Proxmox VE as the host and have configured 2 KVM VEs with ethernet interfaces and joined them to a single bridge (vmbr1).

I've configured static IP's on each of the hosts on the same subnet, though I'm unable to ping across the bridge (host A cant ping host B). The arp table on the VM is sporadically "Incomplete" and is yet to properly discover the other host.

If I induce the arp table with the other hosts mac and ip address the ICMP echo request is then seen on the bridge on the VM and the interface packet_in counters increase on the host I'm pinging.

I've seen a similar issue on ServerFault though following the following RedHat 'bug' didn't seem to have any effect: https://bugzilla.redhat.com/show_bug.cgi?id=512206

Any ideas here?

Best Answer

In the end I abandoned linux bridges and installed and used OpenVSwitch, manually creating flows between the hosts using ovs-ofctl. Some odd behaviour with Linux bridges I'm not too sure about.