summaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2026-10-17 20:55:39 +0200
committerChristian Breunig <christian@breunig.cc>2026-10-17 20:56:35 +0200
commit2b97c4feca89a6f780d7d7aa58262debdca00e05 (patch)
tree9488ebef9dbac8490a74885f8cea5ff044bfcab6 /python
parentf353f8533397249d0bcef658a4e6fcd5fffdd856 (diff)
downloadvyos-1x-2b97c4feca89a6f780d7d7aa58262debdca00e05.tar.gz
vyos-1x-2b97c4feca89a6f780d7d7aa58262debdca00e05.zip
wlb: T9472: keep marks of interfaces when others change
The routing table and mark of a WAN interface followed its position in the sorted interface list. Adding an interface which sorts before the others renumbered all of them. Existing connections still carried their old mark in conntrack and were routed into the wrong table - they broke. Every interface now keeps its table as long as it stays configured, new interfaces get the lowest free table. The assignment is dropped once WAN load-balancing is removed.
Diffstat (limited to 'python')
-rw-r--r--python/vyos/wanloadbalance.py2
1 files changed, 2 insertions, 0 deletions
diff --git a/python/vyos/wanloadbalance.py b/python/vyos/wanloadbalance.py
index faea469c2..8acaa361e 100644
--- a/python/vyos/wanloadbalance.py
+++ b/python/vyos/wanloadbalance.py
@@ -21,6 +21,8 @@ from vyos.utils.process import rc_cmd
from vyos.utils.process import run
dhclient_lease = 'dhclient_{0}.lease'
+# routing table - and mark - of every WAN interface, see vyos-load-balancer.py
+wlb_tables_file = '/run/wlb_tables.json'
def nft_rule(rule_conf, rule_id, local=False, exclude=False, limit=False, weight=None, health_state=None, action=None, restore_mark=False):
output = []