summaryrefslogtreecommitdiff
path: root/smoketest/scripts/cli
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@vyos.io>2025-08-05 14:39:46 +0100
committerGitHub <noreply@github.com>2025-08-05 14:39:46 +0100
commit11efbfa0eab5cc6090f6d5ff22eca5c8562a9c37 (patch)
tree7a615d617f1634c791031c7c16629cae2a3ece61 /smoketest/scripts/cli
parent35f333b26326940e5e0cf3f97eb99dbb55a77e08 (diff)
parentd54b9445672ad454edde8d56f19468b225dd87e0 (diff)
downloadvyos-1x-11efbfa0eab5cc6090f6d5ff22eca5c8562a9c37.tar.gz
vyos-1x-11efbfa0eab5cc6090f6d5ff22eca5c8562a9c37.zip
Merge pull request #4643 from MattKobayashi/T7685
T7685: load-balancing: fix rules with multiple ports
Diffstat (limited to 'smoketest/scripts/cli')
-rwxr-xr-xsmoketest/scripts/cli/test_load-balancing_wan.py28
1 files changed, 27 insertions, 1 deletions
diff --git a/smoketest/scripts/cli/test_load-balancing_wan.py b/smoketest/scripts/cli/test_load-balancing_wan.py
index 937cc3b76..904dabd04 100755
--- a/smoketest/scripts/cli/test_load-balancing_wan.py
+++ b/smoketest/scripts/cli/test_load-balancing_wan.py
@@ -306,6 +306,17 @@ echo "$ifname - $state" > {hook_output_path}
self.cli_set(base_path + ['wan', 'rule', '10', 'interface', isp1_iface])
self.cli_set(base_path + ['wan', 'rule', '10', 'interface', isp1_iface, 'weight', '10'])
self.cli_set(base_path + ['wan', 'rule', '10', 'interface', isp2_iface])
+ self.cli_set(base_path + ['wan', 'rule', '20', 'inbound-interface', lan_iface])
+ self.cli_set(base_path + ['wan', 'rule', '20', 'protocol', 'udp'])
+ self.cli_set(
+ base_path + ['wan', 'rule', '20', 'source', 'address', '198.51.100.0/24']
+ )
+ self.cli_set(base_path + ['wan', 'rule', '20', 'source', 'port', '80,443'])
+ self.cli_set(
+ base_path + ['wan', 'rule', '20', 'destination', 'address', '192.0.2.0/24']
+ )
+ self.cli_set(base_path + ['wan', 'rule', '20', 'destination', 'port', '80,443'])
+ self.cli_set(base_path + ['wan', 'rule', '20', 'interface', isp2_iface])
# commit changes
self.cli_commit()
@@ -316,7 +327,22 @@ echo "$ifname - $state" > {hook_output_path}
nftables_search = [
[f'iifname "eth*"', 'ip daddr 10.0.0.0/8', 'return'],
- [f'iifname "{lan_iface}"', 'ip saddr 198.51.100.0/24', 'udp sport 53', 'ip daddr 192.0.2.0/24', 'udp dport 53', f'jump wlb_mangle_isp_{isp1_iface}']
+ [
+ f'iifname "{lan_iface}"',
+ 'ip saddr 198.51.100.0/24',
+ 'udp sport 53',
+ 'ip daddr 192.0.2.0/24',
+ 'udp dport 53',
+ f'jump wlb_mangle_isp_{isp1_iface}',
+ ],
+ [
+ f'iifname "{lan_iface}"',
+ 'ip saddr 198.51.100.0/24',
+ 'udp sport { 80, 443 }',
+ 'ip daddr 192.0.2.0/24',
+ 'udp dport { 80, 443 }',
+ f'jump wlb_mangle_isp_{isp2_iface}',
+ ],
]
self.verify_nftables_chain(nftables_search, 'ip vyos_wanloadbalance', 'wlb_mangle_prerouting')