Can't get LACP 802.3ad bond working with Proxmox bridge

user51269

New Member
May 29, 2024
3
0
1
Hi,

Until today I had the standard Linux bridge vmbr0 with eth2 as the only bridge port - that worked fine.

I now have a use case where I need an LACP 802.3ad bond between my main PVE host and my switch so I configured an active 802.3ad LAG port on the switch and added one of the spare 10GbE ports to it. I then created a Linux bond called bond0 and added the only 802.3ad member port to the bond and set an IP on it (for testing). bond0 is in LACP bond mode. That works fine i.e. I can ping the bond's IP, so I assume that means LACP 802.3ad is working. (Does it?)

So then I removed the IPV4 address from bond0 and removed eth2 from vmbr0 and added bond0 as the only bridge port and restarted networking but I immediately lost my connection to the PVE host. I checked the /etc/network/interfaces configuration and can see bridge-ports is set to bond0 so the configuration did save, but it doesn't work. I reverted back to eth2 as the only bridge port and the host came back online.

I somewhat confirmed this "looks" right based on a comment from Dunuin here: https://forum.proxmox.com/threads/proxmox-bonding-used-bond-for-containers-vms.105485/

I then created a test bridge called vmbr1 and added bond0 to it. That saved OK and I still have a connection. BUT, VMs and LXCs can't get a DHCP IP so something's not right.

What am I doing wrong? The desired end case is a 20Gbps bond but I'm happy with 10Gbps until I confirm this all works.

I'm sure I'm doing something basic wrong but I can't figure out what it is. Thanks in advance for any help.

Here's my current /etc/network/interfaces:

(eth1 is connected to the physical switch port that is also the only LAG port member)

Code:
# Please do NOT modify this file directly, unless you know what
# you're doing.
#
# If you want to manage parts of the network configuration manually,
# please utilize the 'source' or 'source-directory' directives to do
# so.
# PVE will preserve these directives, but will NOT read its network
# configuration from sourced files, so do not attempt to move any of
# the PVE managed interfaces into external files!

auto lo
iface lo inet loopback

auto eth1
iface eth1 inet manual

iface eth2 inet manual

iface eth3 inet manual

iface eth0 inet manual

auto bond0
iface bond0 inet manual
    bond-slaves eth1
    bond-miimon 100
    bond-mode 802.3ad

auto vmbr0
iface vmbr0 inet static
    address 192.168.1.85/24
    gateway 192.168.1.1
    bridge-ports eth2
    bridge-stp off
    bridge-fd 0
    bridge-vlan-aware yes
    bridge-vids 2-4094

source /etc/network/interfaces.d/*

The only line that changed when I reconfigured vmbr0 to contain bond0 and not eth2 was this line:

Code:
    bridge-ports eth2

to this:

Code:
    bridge-ports bond0
 
Last edited:

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!