Proxmox Link Aggregation Using balance-alb Windows vs Linux

 

Proxmox Link Aggregation Using balance-alb Mode

Explanation

I have this nice little business switch that unfortunately doesn't support LACP for network link aggregation. One of my cables also turned out to be a little bit faulty, so to prevent any mishaps in the future I decided to configure a link bond between the proxmox box's two NICs (Network Interface Cards). Link bonding, also known as Link aggregation or NIC Teaming is where you have two network interfaces on your host working together. This can provide some redundancy, load balancing, and even increase your throughput depending on your configuration. the balance-alb setting can be used regardless of what the switch supports. It's best only used on small networks.

I ran into an interesting problem. None of the VM's could access the network after changing my proxmox box to use the balance-alb bond mode. The solution turned out to be simple.

For windows VM's
  • Install the VirtIO driver in windows, and then set the Networking Device model to VirtIO (paravirtualized)
For Linux VM's
  • Change the Network Device model from VirtIO to Realtek.

HUH? that's kinda weird, basically opposite configurations.

I figured this out because in a Windows 11 VM to save time I never installed the VirtIO drivers. With the lack of network access, I decided maybe it was a good time to install it. It worked! Since switching the device worked for Windows why not try switching devices for the Linux VMs. 

I'm a bit curious why this worked.

Steps

Here's some configuration steps if anyone else stumbles upon this post:

1) Create a Linux Bond in Proxmox. (You might need to remove Network Device from other settings you've setup) 

In the left hand side of the screen select the node you want to configure. 
Datacenter -> Node (in this case it's named myVMs) -> System -> Network
Create -> Linux Bond -> 
                                        *Name
                                        *Slaves
                                        *Mode







2) Set your bridge to use the bond.

Click "vmbr0" -> Edit -> Bridge Ports




3) Click "Apply Configuration"

==================================================================
Setting the Network Device for your VM's

Datacenter -> MyVMs (Node) -> VM (100 Windows) -> Hardware -> Network Device -> Edit




Select the Network Device Model

For Windows VM:
Installing VirtIO Drivers for Windows VM on Proxmox VE – Majornetwork
(Download and install the VirtIO Drivers)
Then change the model setting.



For Linux VM:



You might need to reboot or reload your network settings.
Network Configuration - Proxmox VE


Comments

Popular posts from this blog

Fail2ban Rules for Foundry VTT

Fail2ban Behind Reverse Proxy

Leadership Training 2