Page MenuHomeVyOS Platform

loadbalancing does not work with one pppoe connection and another connection of either dhcp or static
Open, HighPublic


when using load balancing with a pppoe connection and another static or dhcp connection load balancing will never use the pppoe connection due to the way pppoe uses the iptables vs the other connection.

static routes with a different metric does not alleviate this as it would if one connection was dhcp and another static.

issue has persisted since original pull from vyatta codebase

i believe that in edgeos this issue is the primary reason load balancing is handled completely differently.


Difficulty level
Hard (possibly days)
Why the issue appeared?
Implementation mistake
Is it a breaking change?
Unspecified (possibly destroys the router)
Issue type
Bug (incorrect behavior)

Event Timeline

in edgeos each loadbalanced interface has it's ip table set directly at the interface-health section of the loadbalancing config. ex:

load-balance {
	group <name> {
		interface <name> {
			route {
				table <name>
			weight <number>
			route-test {
				type {
					ping {
						target <host>
					script <name>
				initial-delay <number>
				interval <number>
				count {
					success <number>
					failure <number>

UBNT Loadbalancing Guide

What version have you been using?

This can be achieved in VyOS 1.2 albeit it's harder to resolve. I unfortunately lost a config example with pppoe, static and dhcp over ethernet working correctly. It requires using static interface routes for dhcp to fix weights; pppoe force-gateway option; and an adjustment of the static routes weight to match the dhcp ones (this was four years ago).

priochange: I'd like to first see where the PR stems from, before proceeding.

EwaldvanGeffen lowered the priority of this task from Unbreak Now! to Requires assessment.May 21 2017, 5:22 PM

been using the VyOS 1.2.0-beta1

i've never had this work successfully even on vyatta. back then i know they were working on a patch for this issue but it was never released.

static routes for the pppoe interface can't be done if the gateway changes (interface-routes don't work) not sure if static route x.x.x.x/x dhcp-interface would work either, i could not get either working with a pppoe tunnel.

the weights are only one issue, the other being even when the static routes were setup with the weight of 2 for both interfaces, the nat for both, and the loadbalancing configuration; only the dhcp interface was routable. it seems that the pppoe interface was not able to share the same iptable. (rather there was no way to set the weight of the pppoe interface to be the same as the dhcp one(a route of with a weight of 2 did not work))

if there was a way to configure which iptable each interface used for outbound traffic i believe this would resolve the issue.

I added a force-gateway option some time ago. Regardless it's somewhat expected on 1.2, it needs testing and review. I meant 1.1.7 in my previous post (yes, confusion).

syncer triaged this task as Normal priority.Aug 1 2017, 3:04 AM
syncer changed the edit policy from "Task Author" to "Custom Policy".
syncer removed a project: VyOS 2.0.x.
syncer set Version to -.
syncer added a subscriber: syncer.
syncer changed the task status from Open to On hold.Oct 13 2018, 7:22 PM
syncer assigned this task to masterit.

please retest on the latest rolling

Tried editing our config. Could not find a force gateway option in the load balance sections. Can you confirm where the force gateway option would be? this example shows how edgeos has dealt with this issue.

effectively binding a route table to each wan interface. probably an iptable modify in the background.

dmbaturin set Is it a breaking change? to Unspecified (possibly destroys the router).
erkin set Issue type to Bug (incorrect behavior).Sep 1 2021, 10:59 AM
masterit changed the task status from On hold to Open.May 25 2022, 10:57 PM
masterit raised the priority of this task from Normal to High.