isc-dhcp-服务器状态失败:失败,结果为“退出代码”

问题描述 投票:0回答:3

我使用 isc-dhcp-server 设置了一个简单的 dhcp-server,但是当我启动服务时,状态为失败,并显示消息“失败,结果为‘退出代码’”。

是的,我确实配置了文件 /etc/dhcp/dhcp.conf 和 /etc/default/dhcpd.conf

我使用命令

journalctl -ex
检查了更多信息,显示了下一个输入。但我不知道输入的内容是什么,因为我配置了接口和 dhcp 服务器。

我不知道如何解决这个问题。有人知道在这种情况下该怎么做。

ubuntu-server dhcp
3个回答
8
投票

这给了我解决方案:

$ sudo su
$ systemctl restart isc-dhcp-server.service
$ systemctl status isc-dhcp-server.service

它仍然像这里一样失败

root@wd-Latitude-E6530:/home/wd# systemctl status isc-dhcp-server.service
● isc-dhcp-server.service - ISC DHCP IPv4 server
     Loaded: loaded (/lib/systemd/system/isc-dhcp-server.service; enabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Thu 2021-06-17 11:29:47 CEST; 56s ago
       Docs: man:dhcpd(8)
    Process: 2167 ExecStart=/bin/sh -ec      CONFIG_FILE=/etc/dhcp/dhcpd.conf;      if [ -f /etc/ltsp/dhcpd.conf ]; then CONFIG_FILE=/etc/ltsp/dhcpd.conf; fi;      [ ->
   Main PID: 2167 (code=exited, status=1/FAILURE)

jun 17 11:29:47 wd-Latitude-E6530 dhcpd[2167]: 
jun 17 11:29:47 wd-Latitude-E6530 dhcpd[2167]: If you think you have received this message due to a bug rather
jun 17 11:29:47 wd-Latitude-E6530 dhcpd[2167]: than a configuration issue please read the section on submitting
jun 17 11:29:47 wd-Latitude-E6530 dhcpd[2167]: bugs on either our web page at www.isc.org or in the README file
jun 17 11:29:47 wd-Latitude-E6530 dhcpd[2167]: before submitting a bug.  These pages explain the proper
jun 17 11:29:47 wd-Latitude-E6530 dhcpd[2167]: process and the information we find helpful for debugging.
jun 17 11:29:47 wd-Latitude-E6530 dhcpd[2167]: 
jun 17 11:29:47 wd-Latitude-E6530 dhcpd[2167]: exiting.
jun 17 11:29:47 wd-Latitude-E6530 systemd[1]: isc-dhcp-server.service: Main process exited, code=exited, status=1/FAILURE
jun 17 11:29:47 wd-Latitude-E6530 systemd[1]: isc-dhcp-server.service: Failed with result 'exit-code'.

查看进程ID;像 2167 和命令:

$ journalctl _PID=2167
{你的PID应该不同}

对我来说它回馈了:

jun 17 11:30:52 wd-Latitude-E6530 sh[2193]: /etc/dhcp/dhcpd.conf line 57: subnet 10.10.10.1 netmask 255.255.255.0: bad subnet number/mask combination.
jun 17 11:30:52 wd-Latitude-E6530 sh[2193]: subnet 10.10.10.1 netmask 255.255.255.0

在 /etc/dhcp/dhcpd.conf 中我需要更改

subnet 10.10.10.1 netmask 255.255.255.0

进入

subnet 10.10.10.0 netmask 255.255.255.0

因此 10.10.10.1 变为 10.10.10.0

$ systemctl restart isc-dhcp-server.service
$ systemctl status isc-dhcp-server.service

现在我可以使用它了:

Active: active (running) since Thu 2021-06-17 11:50:51 CEST; 2s ago

您的问题可能有所不同,但journalctl _PID=####会给您一些反馈,您可以从那里进行故障排除。

您似乎缺少子网。我正在用这个

[...]
subnet 10.10.10.0 netmask 255.255.255.0 {
option subnet-mask 255.255.255.0;
option broadcast-address 10.10.10.255;
option routers 10.10.10.1;
option domain-name-servers 10.10.10.1;
range 10.10.10.3 10.10.10.250;
if exists user-class and option user-class = "iPXE" {
      filename "boot.ipxe";
  } else {
      filename "undionly.kpxe";

这是我的 iPXE 服务器的一部分。


1
投票

我正在关注一些技术博客来设置 isc-dhcp-server,我最终使用了相同的配置文件(具有相同的 ip、范围等)。

经过两天的谷歌搜索更换机器以及所有内容,我什么也没得到,我发现我需要根据我自己的网络接口(即我的情况下的“eth0”)ip来配置dhcpd.conf文件。它成功了!


0
投票

我遇到了完全相同的问题。当您显示命令

journalctl -ex
的结果时,您可以看到错误消息
No subnet declaration for...
。然后我尝试使用
ifconfig
配置网络接口,如下
sudo ifconfig enp0s3 192.168.1.1 netmask 255.255.255.0
。然后重启dhcp服务器,终于可以了。

© www.soinside.com 2019 - 2024. All rights reserved.