如何在Ubuntu上安装DHCP服务器

1、在Ubuntu上安装DHCP服务器
可以通过Ubuntu的命令行实用程序或终端提示符进行此安装。启动它,并通过以下命令安装dhcpd。
$ sudo apt install isc-dhcp-server
安装时间应少于一分钟。安装后,应注意Ubuntu系统上的Syslog或System Logging Protocol文件。它将存储有关已安装的DHCP功能性能问题的丰富且有用的诊断消息。您可以使用以下命令字符串访问它:
$ sudo nano /var/log/syslog
并非必须使用Sudo命令前缀。但是,如果您使用的Ubuntu系统仅允许Sudoer用户执行特定操作或访问单个系统文件,则仍然需要进行身份验证。
2、Ubuntu Linux发行版上的DHCP服务器配置
DHCP对你的Ubuntu发行版的成功安装造成系统文件路径下/默认DHCP系统配置等/ DHCP / dhcpd.conf中。在查看该文件之前,需要在/ etc / default / isc- dhcp- server下考虑另一个系统文件路径。它具有设置服务自定义DHCP请求所需的DHCP接口时的关键配置。
$ sudo nano /etc/default/isc-dhcp-server

从截图中可以看到,我们有两个INTERFACES选项:一个是IPv4,另一个是IPv6。如果我们想使用IPv4 INTERFACES,并使DHCP守护进程通过eth0监听数据包请求,我们将自定义文件如下。

我们也可以同时使用多个INTERFACES选项,但我们需要用逗号来分隔每个文件的输入。例如
INTERFACESv4=”eth0, eth1”
现在我们可以重温一下之前对/etc/dhcp/dhcpd.conf系统文件的讨论。如果你想使用自定义配置,你需要编辑这个文件的配置。
$ sudo nano /etc/dhcp/dhcpd.conf
由于它是迎合所有DHCP设置的主要配置文件,所有配置的基于客户端的网络信息都应该驻留在这个文件下。这个DHCP配置文件中存放了两个真言。
第一个是DHCP配置参数。它给出了如何执行网络任务、是否执行网络任务的具体内容。同时,它还转达了DHCP服务器的网络配置选项,可以满足DHCP客户端的数据包请求。第二个是DHCP配置声明。它承认正在使用的网络拓扑结构,列出活动的网络客户端,为这些客户端分配网络地址,并可以对分组声明进行分组参数设置。


在我这边,我已经设置了上面截图中可见的全局参数。有了这些全局参数,我们就可以定义我们要使用的子网了。

以上截图是DHCP子网的简单定义。这个子网的配置设置适用于LAN网络。你可以根据这个方案,就你所要达到的网络目标进行定制和创建你的设置。
3、配置DHCP客户端机器拥有静态IP
在基于网络的DHCP环境下,静态IP意味着在整个网络会话中,分配给特定客户端计算机的网络地址是固定的或不变的。
由于Ubuntu是我们的DHCP服务器,在这种情况下,我们还是希望有一个DHCP客户端实例来更好地理解这个概念。让我们假设我们有一台Arch Linux机器作为DHCP客户端。

上面的截图描述了在活动的Arch Linux DHCP客户机上配置和分配静态IP的代码块示例。指定的参数是客户机的MAC地址和它所需要的、可定制的固定IP地址。你可以按照同样的语法规则约定,为你希望分配静态IP地址的其他客户机添加更多的代码块。
我们的DHCP配置完成后,下一步就是启动DHCP系统服务,然后授予它在每次系统启动时自动执行或运行的能力。
$ sudo systemctl start isc-dhcp-server.service
启动后,检查它是否在运行
$ sudo systemctl status isc-dhcp-server.service
如果你遇到了任何问题,请参考Syslog文件来解决这个问题。
$ sudo nano /var/log/syslog
现在我们可以赋予DHCP系统服务在系统启动时自动执行的权力。
$ sudo systemctl enable isc-dhcp-server.service
$ sudo systemctl restart isc-dhcp-server.service
记得配置服务器防火墙,允许DHCP服务获得所需的执行权限或防火墙访问权限。例如,如果DHCP守护进程的端口67/UDP被ufw防火墙屏蔽,我们可以授予它所需的访问权限,如下面的命令字符串所描述。
$ sudo ufw allow 67/udp
$ sudo ufw reload
$ sudo ufw show
您应该看到端口不再被拒绝访问。
4、DHCP客户端机器配置
这是我们文章的最后一步。首先,你需要登录到这个客户端机器,并访问以太网接口配置文件。
$ sudo nano /etc/network/interfaces
一旦你有了访问权限,你需要对这个文件进行相应的编辑。下面是一个配置示例。
auto eth0
iface eth0 inet dhcp
请保存文件修改后关闭。最后一步是重启系统或重启其网络服务。
$ sudo systemctl restart networking
DHCP服务器应该会自动为你指定的客户机分配一个IP地址。