Ubuntu 22.04 系统上配置 DHCP 服务器

DHCP (Dynamic Host Configuration Protocol) 是动态主机配置协议的缩写,它工作在客户-服务器架构上。DHCP 服务器为网络中的客户端自动分配 IPv4 和 IPv6 地址。DHCP Server 向客户端提供 IP 地址租期,如果客户端请求 IP 地址并得到 DHCP Server 的确认,客户端将获得租期内的 IP 地址。如果租期到期,客户端想使用相同的 IP 地址,则必须重新向 DHCP 服务器请求 IP 地址。

必备条件

本文中使用两台虚拟机进行实验室设置。第一台虚拟机为 Ubuntu 22.04,配置为 DHCP 服务器。第二台虚拟机为 RHEL 9,配置为客户端,自动从 DHCP 服务器获取 IP 地址。

Ubuntu 22.04 LTS 有两个网卡 (NICs)

  • enp0s3 (192.168.1.204) – 它将用于访问管理和互联网连接
  • enp0s8 (192.168.56.4)– 它将用于 DHCP,在此接口上公开 DHCP 子网

RHEL 9 虚拟机有一块网卡 enp0s3,用于申请 DHCP IP 地址,该网卡应映射到 DHCP 子网 VLAN。

(1) 更新包索引

登录 Ubuntu 22.04 系统,运行 apt 命令更新包索引

$ sudo apt update

(2) 安装 DHCP 服务器及其依赖项

执行以下命令,安装 DHCP 服务器及其依赖包

$ sudo apt install isc-dhcp-server -y

Ubuntu 22.04 系统上配置 DHCP 服务器_第1张图片

(3) 配置 DHCP 服务器

编辑 /etc/default/isc-dhcp-server 配置文件,修改 DHCP 运行的网络接口。本文中使用 enp0s8 网络接口

$ sudo vi /etc/default/isc-dhcp-server
----
INTERFACESv4="enp0s8"
----

Ubuntu 22.04 系统上配置 DHCP 服务器_第2张图片

保存然后关闭文件

然后,编辑主 DHCP 配置文件 /etc/dhcp/dhcpd.conf,并设置以下参数

注释掉域名服务器参数,因为我们没有使用任何 DNS 服务器

#option domain-name "example.org";
#option domain-name-servers ns1.example.org, ns2.example.org;

取消 authoritative 参数注释

authoritative;

添加 DHCP 服务器使用的子网和 IP 地址范围。同时指定 enp0s8 接口的 ip 地址为路由器。

subnet 192.168.56.0 netmask 255.255.255.0 {
  range 192.168.56.20 192.168.56.120;
  option routers 192.168.56.4;
}

保存然后关闭文件

Ubuntu 22.04 系统上配置 DHCP 服务器_第3张图片

启动并启用 DHCP Server 服务,执行如下命令

$ sudo systemctl start isc-dhcp-server
$ sudo systemctl enable isc-dhcp-server

检查 DHCP Server 服务状态,执行如下命令

$ sudo systemctl status isc-dhcp-server

Ubuntu 22.04 系统上配置 DHCP 服务器_第4张图片

(4) 配置 DHCP 客户端

在本例中,我们的 DHCP 客户端是一台 RHEL 9 机器,登录并配置 enp0s3 接口 ,以便它通过网络请求 DHCP IP。

$ sudo nmtui

编辑 enp0s3 接口,将 IPv4 Configuration 设置为 Automatic

Ubuntu 22.04 系统上配置 DHCP 服务器_第5张图片

单击 OK,然后禁用并激活连接以使更改生效。

验证 IP 地址,执行如下命令

$ ip add show enp0s3

Ubuntu 22.04 系统上配置 DHCP 服务器_第6张图片

返回 DHCP 服务器,查看租用 ip 地址,执行以下命令

$ cat /var/lib/dhcp/dhcpd.leases

Ubuntu 22.04 系统上配置 DHCP 服务器_第7张图片

以上就是本指南的全部内容。我希望你能从中学到有用的东西。请在下面的评论区张贴您的查询和反馈。

我的开源项目

酷瓜云课堂-在线教育解决方案

你可能感兴趣的:(ubuntudhcp)