VM VLAN Bond

Mar 15, 2022
12
2
8
Hi Experts, I am building a VM debian cluster with the following required construct:

VM running Debian OS with IPv6 static IP configured with VLAN80 >> vNIC assigned to vmbr3093 >> vmbr3093 (with static IPv6 address and VLAN aware (2-4094)) bridged to bond0 >> bond0 configured to dummy0 dummy1 slaves, active-backup mode.

This VM infra doesn't need to reach any physical interface on the PVE host, this will be a purely self contained VM to other VMs cluster on PVE. The networking objects within /etc/network/interfaces are as follows:

auto vmbr3093
iface vmbr3093 inet6 static
address ****:****:****:***::ffff/64
bridge-ports bond0
bridge-stp off
bridge-vlan-aware yes
bridge-fd 0

auto bond0
iface bond0 inet manual
bond-slaves dummy0 dummy1
bond-miimon 100
bond-mode active-backup
ip link set bond0 up

auto dummy0
iface dummy0 inet manual
pre-up ip link add dummy0 type dummy || true
ip link set dummy0 up
down ip link del dummy0 || true

auto dummy1
iface dummy1 inet manual
pre-up ip link add dummy1 type dummy || true
up ip link set dummy1 up
down ip link del dummy1 || true

I have reloaded (ifreload -a) on PVE after each change. The IFs are up on the VM and gateways are set. PVE version is v8.3.5.

The issue I have is that when ssh'd to PVE, I can ping the vmbr IP, but not the VM IP. On the VM, I cannot ping the vmbr (acting as a gateway). If I reconfigure the VM with a static IP only (no VLAN config), I can ping the PVE host, vmbr IP, and other VMs without issue. I can also ping the VM interface from PVE.

The end goal here is to be able to route VM to VM and be able to ping the VM, and have the VM be able to ping other VMs in PVE. As soon as I configure the VLAN on the VM, network connectivity fails. If there are network experts in this field that can help I would appreciate it.
 
Last edited:
what is the goal of the dummy interfaces?
Why the bond to the dummy interfaces?

I would've just used an OpenVSwitch with OVSports on the host, but if you want to connect the VMs without host interaction, I'd just drop them all on the same VLAN/bridge and configure accordingly, not need to have them pinging the hypervisor/host
 
The goal of the dummy interfaces is emulate failover of a link (active_passive). I'm trying to make this setup as close to a real-world environment as possible. I need the VMs to have host interaction as this is how multiple members of my team connect to the VMs. In addition, this is a lab environment so having ping testing between the host to VM, and VM to VMs is required. We need to simulate and diagnose downed links in this environment.
 
Do I understand correctly that the VM has VLAN Tag 80 set? Then you need to configure the IP on the host with the respective VLAN tag 80 as well:

Code:
auto vmbr3093.80
iface vmbr3093.80 inet6 static
address ****:****:****:***::ffff/64

And remove the address from vmbr3093