summaryrefslogtreecommitdiff
path: root/smoketest/scripts/cli
diff options
context:
space:
mode:
Diffstat (limited to 'smoketest/scripts/cli')
-rwxr-xr-xsmoketest/scripts/cli/test_load-balancing_wan.py23
1 files changed, 22 insertions, 1 deletions
diff --git a/smoketest/scripts/cli/test_load-balancing_wan.py b/smoketest/scripts/cli/test_load-balancing_wan.py
index 88a6f0ad7..937cc3b76 100755
--- a/smoketest/scripts/cli/test_load-balancing_wan.py
+++ b/smoketest/scripts/cli/test_load-balancing_wan.py
@@ -164,7 +164,7 @@ class TestLoadBalancingWan(VyOSUnitTestSHIM.TestCase):
mangle_prerouting = """table ip vyos_wanloadbalance {
chain wlb_mangle_prerouting {
type filter hook prerouting priority mangle; policy accept;
- iifname "veth3" ip saddr 198.51.100.0/24 ct state new limit rate 5/second burst 5 packets counter numgen random mod 11 vmap { 0 : jump wlb_mangle_isp_veth1, 1-10 : jump wlb_mangle_isp_veth2 }
+ iifname "veth3" ip saddr 198.51.100.0/24 ct state new counter numgen random mod 11 vmap { 0 : jump wlb_mangle_isp_veth1, 1-10 : jump wlb_mangle_isp_veth2 }
iifname "veth3" ip saddr 198.51.100.0/24 counter meta mark set ct mark
}
}"""
@@ -234,6 +234,27 @@ class TestLoadBalancingWan(VyOSUnitTestSHIM.TestCase):
tmp = cmd('sudo nft -s list chain ip vyos_wanloadbalance wlb_nat_postrouting')
self.assertEqual(tmp, nat_wanloadbalance)
+ # Set limit configuration
+ mangle_prerouting_limit = """table ip vyos_wanloadbalance {
+ chain wlb_mangle_prerouting {
+ type filter hook prerouting priority mangle; policy accept;
+ iifname "veth3" ip saddr 198.51.100.0/24 ct state new limit rate 10/second burst 10 packets counter numgen random mod 11 vmap { 0 : jump wlb_mangle_isp_veth1, 1-10 : jump wlb_mangle_isp_veth2 }
+ iifname "veth3" ip saddr 198.51.100.0/24 counter meta mark set ct mark
+ }
+}"""
+
+ self.cli_set(base_path + ['wan', 'rule', '10', 'limit', 'rate', '10'])
+ self.cli_set(base_path + ['wan', 'rule', '10', 'limit', 'burst', '10'])
+
+ # Commit changes
+ self.cli_commit()
+
+ time.sleep(5)
+
+ # Check prerouting mangle chain
+ tmp = cmd('sudo nft -s list chain ip vyos_wanloadbalance wlb_mangle_prerouting')
+ self.assertEqual(tmp, mangle_prerouting_limit)
+
# Delete veth interfaces and netns
for iface in [iface1, iface2, iface3]:
call(f'sudo ip link del dev {iface}')