From: Yu Watanabe Date: Mon, 18 Nov 2024 19:32:50 +0000 (+0900) Subject: test-network: add test case for IPv6 Core Conformance test v6LC.2.2.23 X-Git-Tag: v257-rc3~77^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F35212%2Fhead;p=thirdparty%2Fsystemd.git test-network: add test case for IPv6 Core Conformance test v6LC.2.2.23 --- diff --git a/test/test-network/systemd-networkd-tests.py b/test/test-network/systemd-networkd-tests.py index 7c2de4201f1..462d40d8399 100755 --- a/test/test-network/systemd-networkd-tests.py +++ b/test/test-network/systemd-networkd-tests.py @@ -6454,6 +6454,24 @@ class NetworkdRATests(unittest.TestCase, Utilities): networkctl_reload() self.check_router_preference('01', 200, 'medium', 200, 'medium') + # Use route options to configure default routes. + # The preference specified in the RA header should be ignored. See issue #33468. + with open(os.path.join(network_unit_dir, '25-veth-router-high.network'), mode='a', encoding='utf-8') as f: + f.write('\n[IPv6SendRA]\nRouterPreference=high\n[IPv6RoutePrefix]\nRoute=::/0\nLifetimeSec=1200\n') + with open(os.path.join(network_unit_dir, '25-veth-router-low.network'), mode='a', encoding='utf-8') as f: + f.write('\n[IPv6SendRA]\nRouterPreference=low\n[IPv6RoutePrefix]\nRoute=::/0\nLifetimeSec=1200\n') + networkctl_reload() + self.check_router_preference('01', 200, 'medium', 200, 'medium') + + # Set zero lifetime to the route options. + # The preference specified in the RA header should be used. + with open(os.path.join(network_unit_dir, '25-veth-router-high.network'), mode='a', encoding='utf-8') as f: + f.write('LifetimeSec=0\n') + with open(os.path.join(network_unit_dir, '25-veth-router-low.network'), mode='a', encoding='utf-8') as f: + f.write('LifetimeSec=0\n') + networkctl_reload() + self.check_router_preference('01', 100, 'high', 300, 'low') + def _test_ndisc_vs_static_route(self, manage_foreign_nexthops): if not manage_foreign_nexthops: copy_networkd_conf_dropin('networkd-manage-foreign-nexthops-no.conf')