summaryrefslogtreecommitdiff
path: root/test/test-network
diff options
context:
space:
mode:
authorYu Watanabe <watanabe.yu+github@gmail.com>2022-02-02 07:07:22 +0900
committerGitHub <noreply@github.com>2022-02-02 07:07:22 +0900
commit6a8ab6dd1e21db96518b1b660a58f0a65383c251 (patch)
treec0adec3bbe9afb009bc5ffdba4a4c405ab918f0d /test/test-network
parente0ec97514835163ea28786669debeb56228faf2a (diff)
parentc5f7a087396bd104381273bcc96c6d55ddef185c (diff)
downloadsystemd-6a8ab6dd1e21db96518b1b660a58f0a65383c251.tar.gz
Merge pull request #22332 from yuwata/network-dhcp-server-dns-server-address
network: dhcp-server: allow to specify server address for DNS= or friends
Diffstat (limited to 'test/test-network')
-rw-r--r--test/test-network/conf/dhcp-server-downstream.network14
-rw-r--r--test/test-network/conf/dhcp-server.network3
-rwxr-xr-xtest/test-network/systemd-networkd-tests.py15
3 files changed, 30 insertions, 2 deletions
diff --git a/test/test-network/conf/dhcp-server-downstream.network b/test/test-network/conf/dhcp-server-downstream.network
new file mode 100644
index 0000000000..3eb931f671
--- /dev/null
+++ b/test/test-network/conf/dhcp-server-downstream.network
@@ -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
diff --git a/test/test-network/conf/dhcp-server.network b/test/test-network/conf/dhcp-server.network
index 3eb931f671..d9f2aa4b8d 100644
--- a/test/test-network/conf/dhcp-server.network
+++ b/test/test-network/conf/dhcp-server.network
@@ -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
diff --git a/test/test-network/systemd-networkd-tests.py b/test/test-network/systemd-networkd-tests.py
index 4fcae28ce3..7013f73851 100755
--- a/test/test-network/systemd-networkd-tests.py
+++ b/test/test-network/systemd-networkd-tests.py
@@ -4235,6 +4235,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',
@@ -4250,7 +4251,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'])