]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
test-network: add tests for DNS=_server_address in [DHCPServer] 22332/head
authorYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 1 Feb 2022 07:30:45 +0000 (16:30 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 1 Feb 2022 20:01:59 +0000 (05:01 +0900)
test/test-network/conf/dhcp-server-downstream.network [new file with mode: 0644]
test/test-network/conf/dhcp-server.network
test/test-network/systemd-networkd-tests.py

diff --git a/test/test-network/conf/dhcp-server-downstream.network b/test/test-network/conf/dhcp-server-downstream.network
new file mode 100644 (file)
index 0000000..3eb931f
--- /dev/null
@@ -0,0 +1,14 @@
+# SPDX-License-Identifier: LGPL-2.1-or-later
+[Match]
+Name=veth-peer
+
+[Network]
+IPv6AcceptRA=false
+DHCPServer=yes
+
+[DHCPServer]
+ServerAddress=192.168.5.1/24
+PoolOffset=10
+PoolSize=50
+UplinkInterface=dummy98
+Router=192.168.5.3
index 3eb931f671c0ead7e9372cf140e2c413b43e66dc..d9f2aa4b8d6612a11fb91c200a882df00ed174fe 100644 (file)
@@ -10,5 +10,6 @@ DHCPServer=yes
 ServerAddress=192.168.5.1/24
 PoolOffset=10
 PoolSize=50
-UplinkInterface=dummy98
 Router=192.168.5.3
+DNS=_server_address 192.168.5.10
+NTP=_server_address 192.168.5.11
index 9a2a839b40579f038e07e511f1cbc04a081ddc84..05f3479e12898998fcc47d0863a2acdaa65e1786 100755 (executable)
@@ -4233,6 +4233,7 @@ class NetworkdDHCPServerTests(unittest.TestCase, Utilities):
         'dhcp-client-static-lease.network',
         'dhcp-client-timezone-router.network',
         'dhcp-server.network',
+        'dhcp-server-downstream.network',
         'dhcp-server-static-lease.network',
         'dhcp-server-timezone-router.network',
         'dhcp-server-uplink.network',
@@ -4248,7 +4249,19 @@ class NetworkdDHCPServerTests(unittest.TestCase, Utilities):
         stop_networkd(show_logs=True)
 
     def test_dhcp_server(self):
-        copy_unit_to_networkd_unit_path('25-veth.netdev', 'dhcp-client.network', 'dhcp-server.network',
+        copy_unit_to_networkd_unit_path('25-veth.netdev', 'dhcp-client.network', 'dhcp-server.network')
+        start_networkd()
+        self.wait_online(['veth99:routable', 'veth-peer:routable'])
+
+        output = check_output(*networkctl_cmd, '-n', '0', 'status', 'veth99', env=env)
+        print(output)
+        self.assertRegex(output, 'Address: 192.168.5.[0-9]* \(DHCP4 via 192.168.5.1\)')
+        self.assertIn('Gateway: 192.168.5.3', output)
+        self.assertRegex(output, 'DNS: 192.168.5.1\n *192.168.5.10')
+        self.assertRegex(output, 'NTP: 192.168.5.1\n *192.168.5.11')
+
+    def test_dhcp_server_with_uplink(self):
+        copy_unit_to_networkd_unit_path('25-veth.netdev', 'dhcp-client.network', 'dhcp-server-downstream.network',
                                         '12-dummy.netdev', 'dhcp-server-uplink.network')
         start_networkd()
         self.wait_online(['veth99:routable', 'veth-peer:routable'])