搭建 DHCP 服务
2026/7/10 3:57:05 网站建设 项目流程

搭建 DHCP 服务

1. 服务介绍

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)用于在局域网中自动给客户端分配 IP 地址、子网掩码、网关、DNS 等网络参数,适合终端数量较多或地址经常变化的办公网络和实验环境。

2. 环境要求

  • 操作系统:CentOS 7.x,本批文档默认参考 CentOS 7 实验环境。
  • 操作账号:root 或具备 sudo 权限的管理员账号。
  • 网络要求:服务端网卡已配置固定 IP,客户端与 DHCP 服务端处于同一二层网络或已配置 DHCP Relay。
  • 软件要求:系统可以使用 yum 安装dhcp软件包。
  • 操作建议:修改/etc/dhcp/dhcpd.conf前先备份原配置文件。

3. 配置步骤

1. 准备运行环境

确认系统版本、管理员权限、网络连通性和软件源可用后,再开始安装和修改配置。

[root@localhost ~]# uname -aLinux localhost.localdomain3.10.0-693.el7.x86_64#1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

2. 相关知识

  • DHCP 服务端默认使用 UDP 67 端口,客户端默认使用 UDP 68 端口。
  • DHCP 地址池不要包含网关、服务器固定地址等已占用地址,避免地址冲突。
  • range用来设置可自动分配的地址范围,option routers用来下发默认网关,option domain-name-servers用来下发 DNS。
  • default-lease-time是默认租约时间,max-lease-time是最大租约时间,单位都是秒。
  • 配置文件括号必须成对出现,少一个}会导致dhcpd启动失败。
  • 修改配置后建议先检查服务状态和日志,再让客户端重新获取地址验证。

3. 实验步骤

1. 安装 DHCP
[root@localhost ~]# yum -y install dhcp
2. 复制配置文件模板到配置文件
[root@localhost ~]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
3. 编辑配置文件
[root@localhost ~]# vi /etc/dhcp/dhcpd.conf
7option domain-name"example.org";# DNS域名8option domain-name-servers ns1.example.org, ns2.example.org;

DNS 的域服务器配置如下:

47subnet10.5.5.0 netmask255.255.255.224{# 网段和掩码48range10.5.5.2610.5.5.30;# 地址池49option domain-name-servers10.1.100.101;# DNS服务器地址50option domain-name"rj.com";# 该网段的域名51option routers10.5.5.1;# 网关52option broadcast-address10.5.5.31;# 广播地址53default-lease-time600;# 租约时间,单位秒54max-lease-time7200;# 最大租约时间55}

MAC 地址绑定固定 IP 地址:

75hostfantasia{76hardware ethernet 08:00:07:26:c0:a5;77fixed-address fantasia.fugue.com;78}
4. 重启服务

复制配置模板后如果不修改配置,服务可能启动不成功。修改完成后重启 DHCP 服务:

[root@localhost ~]# systemctl restart dhcpd
5. 测试

客户端重新获取 DHCP 地址:

# Linux 客户端释放并重新获取地址,网卡名按实际环境替换[root@client ~]# dhclient -r ens33[root@client ~]# dhclient ens33

4. 验证结果

客户端查看是否获取到 DHCP 地址、网关和 DNS:

[root@client ~]# ip addr show ens33[root@client ~]# ip route[root@client ~]# cat /etc/resolv.conf

服务端查看 DHCP 服务状态和租约记录:

[root@localhost ~]# systemctl status dhcpd[root@localhost ~]# ss -lunp | grep ':67'[root@localhost ~]# cat /var/lib/dhcpd/dhcpd.leases[root@localhost ~]# journalctl -u dhcpd -n 50 --no-pager

如果客户端能获取到地址池中的 IP,服务端租约文件能看到对应 MAC 地址和租约记录,说明 DHCP 服务配置生效。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询