summaryrefslogtreecommitdiff
path: root/smoketest/scripts/cli/test_service_router-advert.py
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@vyos.io>2024-03-13 11:13:48 +0100
committerGitHub <noreply@github.com>2024-03-13 11:13:48 +0100
commit7fb112d409af83185ea9635aa6c775b02bc28c43 (patch)
tree101a21de086b40bc097e17365fb5524f9e3055cd /smoketest/scripts/cli/test_service_router-advert.py
parentf2038cd6f23f0114452688a5b66145c531982249 (diff)
parentf1ead5c6a16aba00699b8a5b9c18ef6cffe8cc4d (diff)
downloadvyos-1x-7fb112d409af83185ea9635aa6c775b02bc28c43.tar.gz
vyos-1x-7fb112d409af83185ea9635aa6c775b02bc28c43.zip
Merge pull request #3125 from c-po/radvd-T6118
radvd: T6118: add nat64prefix support RFC8781
Diffstat (limited to 'smoketest/scripts/cli/test_service_router-advert.py')
-rwxr-xr-xsmoketest/scripts/cli/test_service_router-advert.py28
1 files changed, 28 insertions, 0 deletions
diff --git a/smoketest/scripts/cli/test_service_router-advert.py b/smoketest/scripts/cli/test_service_router-advert.py
index 5fc2019fd..d1ff25a58 100755
--- a/smoketest/scripts/cli/test_service_router-advert.py
+++ b/smoketest/scripts/cli/test_service_router-advert.py
@@ -195,6 +195,34 @@ class TestServiceRADVD(VyOSUnitTestSHIM.TestCase):
for src in ra_src:
self.assertIn(f' {src};', config)
+ def test_nat64prefix(self):
+ nat64prefix = '64:ff9b::/96'
+ nat64prefix_invalid = '64:ff9b::/44'
+
+ self.cli_set(base_path + ['nat64prefix', nat64prefix])
+
+ # and another invalid prefix
+ # Invalid NAT64 prefix length for "2001:db8::/34", can only be one of:
+ # /32, /40, /48, /56, /64, /96
+ self.cli_set(base_path + ['nat64prefix', nat64prefix_invalid])
+ with self.assertRaises(ConfigSessionError):
+ self.cli_commit()
+ self.cli_delete(base_path + ['nat64prefix', nat64prefix_invalid])
+
+ # NAT64 valid-lifetime must not be smaller then "interval max"
+ self.cli_set(base_path + ['nat64prefix', nat64prefix, 'valid-lifetime', '500'])
+ with self.assertRaises(ConfigSessionError):
+ self.cli_commit()
+ self.cli_delete(base_path + ['nat64prefix', nat64prefix, 'valid-lifetime'])
+
+ # commit changes
+ self.cli_commit()
+
+ config = read_file(RADVD_CONF)
+
+ tmp = f'nat64prefix {nat64prefix}' + ' {'
+ self.assertIn(tmp, config)
+ self.assertIn('AdvValidLifetime 65528;', config) # default
if __name__ == '__main__':
unittest.main(verbosity=2)