summaryrefslogtreecommitdiff
path: root/smoketest/scripts/cli/test_vrf.py
diff options
context:
space:
mode:
authorsarthurdev <965089+sarthurdev@users.noreply.github.com>2024-02-27 21:38:24 +0100
committerMergify <37929162+mergify[bot]@users.noreply.github.com>2024-02-28 19:36:10 +0000
commit88dfa47ded706ea53a7b10ed058ddd5023226896 (patch)
tree90f70d19c3c44f3671c1d77417308356fcbfd7f7 /smoketest/scripts/cli/test_vrf.py
parente1f34b0c019b9771ace1d6c723d4d84658be5cd8 (diff)
downloadvyos-1x-88dfa47ded706ea53a7b10ed058ddd5023226896.tar.gz
vyos-1x-88dfa47ded706ea53a7b10ed058ddd5023226896.zip
vrf: conntrack: T6073: Populate VRF zoning chains only while conntrack is required
(cherry picked from commit 6f7d1e15665655e37e8ca830e28d9650445c1217)
Diffstat (limited to 'smoketest/scripts/cli/test_vrf.py')
-rwxr-xr-xsmoketest/scripts/cli/test_vrf.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/smoketest/scripts/cli/test_vrf.py b/smoketest/scripts/cli/test_vrf.py
index 438387f2d..c96b8e374 100755
--- a/smoketest/scripts/cli/test_vrf.py
+++ b/smoketest/scripts/cli/test_vrf.py
@@ -529,5 +529,28 @@ class VRFTest(VyOSUnitTestSHIM.TestCase):
self.assertNotIn(f' no ip nht resolve-via-default', frrconfig)
self.assertNotIn(f' no ipv6 nht resolve-via-default', frrconfig)
+ def test_vrf_conntrack(self):
+ table = '1000'
+ nftables_rules = {
+ 'vrf_zones_ct_in': ['ct original zone set iifname map @ct_iface_map'],
+ 'vrf_zones_ct_out': ['ct original zone set oifname map @ct_iface_map']
+ }
+
+ self.cli_set(base_path + ['name', 'blue', 'table', table])
+ self.cli_commit()
+
+ # Conntrack rules should not be present
+ for chain, rule in nftables_rules.items():
+ self.verify_nftables_chain(rule, 'inet vrf_zones', chain, inverse=True)
+
+ self.cli_set(['nat'])
+ self.cli_commit()
+
+ # Conntrack rules should now be present
+ for chain, rule in nftables_rules.items():
+ self.verify_nftables_chain(rule, 'inet vrf_zones', chain, inverse=False)
+
+ self.cli_delete(['nat'])
+
if __name__ == '__main__':
unittest.main(verbosity=2)