WAN load balancing behavior

Started by OPNenthu, December 11, 2025, 09:34:17 AM

Previous topic - Next topic
December 11, 2025, 09:34:17 AM Last Edit: December 11, 2025, 09:55:23 AM by OPNenthu
I don't know exactly when it started, but I think in the last few updates (currently I'm on 25.7.9) I'm seeing that the load on two VPN gateways is not being equally distributed anymore.

I have two Wireguard devices (wg0, wg1) and respective interfaces (WAN_VPN0, WAN_VPN1).  The interfaces are enabled but not configured.  I have a corresponding IPv4 and IPv6 gateway for each interface.

I then created two LB groups: one has the IPv4 members on a common tier, and the other has the IPv6 members on a common tier.  I have a VLAN interface with policy routing to send non-local traffic out the respective IPv4 or IPv6 gateway.  Within the gateway settings, all of them have the default weight (1).  Both gateways are monitored and healthy.

There is a client VM connected to this VLAN. I started a few streams and am seeing that there is a very strong preference for one WG interface.  In the past I would see the traffic more evenly split and both interfaces would show activity.

My expectation is that the client will choose either IPv4 or IPv6 and within the respective gateway group it should balance fairly between the two upstream devices.  Is that a fair assumption or have I misunderstood?  Also, I am curious what the selection criteria is for load balancing- does it distribute by 5-tuple?

Edit: although the screenshot shows "Round Robin with Sticky Address", I wasn't using that previously.  Just changed it for testing.

Today at 06:12:40 AM #1 Last Edit: Today at 06:23:05 AM by OPNenthu
I might be asking my question the wrong way or presenting too much detail.

tldr; I have two active VPN gateways that each work on their own, but when put into a load balancing group only one seems to be in use the majority of the time.  When I first set this up (sometime before 25.7.6, I think) the load balancing was working, so I don't know if something changed in recent versions or if the "problem exists between keyboard and chair" as they say.

Appreciate any tips on what to look into.