diff options
author | Lennart Poettering <lennart@poettering.net> | 2020-01-07 19:17:51 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-01-07 19:17:51 +0100 |
commit | 65ad4ad89d7892e173dc0f58c25044e46059d08f (patch) | |
tree | 610ce39a894f83419aaf4f1caa1ca12e3559bfe2 /test | |
parent | 625077264ba01a108386eeea733ee244e6b7ff14 (diff) | |
parent | 214c5bae09fb5268ea0a6272627ab4062b361200 (diff) | |
download | systemd-65ad4ad89d7892e173dc0f58c25044e46059d08f.tar.gz |
Merge pull request #14499 from yuwata/network-gateway-dhcp
network: static route via DHCP gateway
Diffstat (limited to 'test')
-rw-r--r-- | test/test-network/conf/dhcp-client-gateway-ipv4.network | 10 | ||||
-rw-r--r-- | test/test-network/conf/dhcp-client-gateway-ipv6.network | 9 | ||||
-rwxr-xr-x | test/test-network/systemd-networkd-tests.py | 26 |
3 files changed, 45 insertions, 0 deletions
diff --git a/test/test-network/conf/dhcp-client-gateway-ipv4.network b/test/test-network/conf/dhcp-client-gateway-ipv4.network new file mode 100644 index 0000000000..1b8a3751a4 --- /dev/null +++ b/test/test-network/conf/dhcp-client-gateway-ipv4.network @@ -0,0 +1,10 @@ +[Match] +Name=veth99 + +[Network] +DHCP=ipv4 +IPv6AcceptRA=no + +[Route] +Gateway=dhcp +Destination=10.0.0.0/8 diff --git a/test/test-network/conf/dhcp-client-gateway-ipv6.network b/test/test-network/conf/dhcp-client-gateway-ipv6.network new file mode 100644 index 0000000000..058cb33080 --- /dev/null +++ b/test/test-network/conf/dhcp-client-gateway-ipv6.network @@ -0,0 +1,9 @@ +[Match] +Name=veth99 + +[Network] +DHCP=ipv6 + +[Route] +Gateway=dhcp +Destination=2001:1234:5:9fff:ff:ff:ff:ff/128 diff --git a/test/test-network/systemd-networkd-tests.py b/test/test-network/systemd-networkd-tests.py index 90b1a8b140..d9b5df18df 100755 --- a/test/test-network/systemd-networkd-tests.py +++ b/test/test-network/systemd-networkd-tests.py @@ -2659,6 +2659,8 @@ class NetworkdDHCPClientTests(unittest.TestCase, Utilities): '25-vrf.network', 'dhcp-client-anonymize.network', 'dhcp-client-decline.network', + 'dhcp-client-gateway-ipv4.network', + 'dhcp-client-gateway-ipv6.network', 'dhcp-client-gateway-onlink-implicit.network', 'dhcp-client-ipv4-dhcp-settings.network', 'dhcp-client-ipv4-only-ipv6-disabled.network', @@ -3145,6 +3147,30 @@ class NetworkdDHCPClientTests(unittest.TestCase, Utilities): print(output) self.assertEqual(output, '') + def test_dhcp_client_gateway_ipv4(self): + copy_unit_to_networkd_unit_path('25-veth.netdev', 'dhcp-server-veth-peer.network', + 'dhcp-client-gateway-ipv4.network') + start_networkd() + self.wait_online(['veth-peer:carrier']) + start_dnsmasq() + self.wait_online(['veth99:routable', 'veth-peer:routable']) + + output = check_output('ip route list dev veth99 10.0.0.0/8') + print(output) + self.assertRegex(output, '10.0.0.0/8 via 192.168.5.1 proto static') + + def test_dhcp_client_gateway_ipv6(self): + copy_unit_to_networkd_unit_path('25-veth.netdev', 'dhcp-server-veth-peer.network', + 'dhcp-client-gateway-ipv6.network') + start_networkd() + self.wait_online(['veth-peer:carrier']) + start_dnsmasq() + self.wait_online(['veth99:routable', 'veth-peer:routable']) + + output = check_output('ip -6 route list dev veth99 2001:1234:5:9fff:ff:ff:ff:ff') + print(output) + self.assertRegex(output, 'via fe80::1034:56ff:fe78:9abd') + def test_dhcp_client_gateway_onlink_implicit(self): copy_unit_to_networkd_unit_path('25-veth.netdev', 'dhcp-server-veth-peer.network', 'dhcp-client-gateway-onlink-implicit.network') |