diff options
author | Daniil Baturin <daniil@vyos.io> | 2024-03-13 13:18:26 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-13 13:18:26 +0100 |
commit | 4dfc9b7c195e9cf3f57afbf8c84d701b73e83a8f (patch) | |
tree | ce70aa88cdd993bba7b797adef58b7ee6162aa76 /smoketest/scripts | |
parent | 729d6785686284a61504dbfb8217888a485510dd (diff) | |
parent | 306e83a66e2e580417d87e3871200cad6c09cb49 (diff) | |
download | vyos-1x-4dfc9b7c195e9cf3f57afbf8c84d701b73e83a8f.tar.gz vyos-1x-4dfc9b7c195e9cf3f57afbf8c84d701b73e83a8f.zip |
Merge pull request #3129 from vyos/mergify/bp/sagitta/pr-3125
radvd: T6118: add nat64prefix support RFC8781 (backport #3125)
Diffstat (limited to 'smoketest/scripts')
-rwxr-xr-x | smoketest/scripts/cli/test_service_router-advert.py | 28 |
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) |