上一篇
Linux如何快速安装DHCP服务?,Linux安装DHCP简单步骤?,Linux如何安装DHCP服务器?
- Linux
- 2025-07-06
- 4401
在Linux上安装DHCP服务器:使用包管理器安装
isc-dhcp-server
(Debian/Ubuntu:
sudo apt install isc-dhcp-server
)或
dhcp
(CentOS/RHEL:
sudo yum install dhcp
),随后编辑
/etc/dhcp/dhcpd.conf
配置文件定义作用域,最后启用并启动服务(
sudo systemctl enable --now isc-dhcp-server
或
dhcpd
)。
在Linux系统中安装DHCP服务器可为局域网设备自动分配IP地址,简化网络管理,以下是详细安装指南(以Ubuntu/Debian和CentOS/RHEL为例),请根据系统选择对应步骤:
准备工作
-
系统要求
- Root权限或sudo权限
- 稳定的网络连接
- 确认无冲突服务(如已安装DHCP服务需卸载)
- 防火墙开放UDP端口67:
sudo ufw allow 67/udp
(Ubuntu)或sudo firewall-cmd --add-service=dhcp --permanent
(CentOS)
-
确定网卡名称
执行ip a
查看网卡(如eth0
、ens33
),后续配置需使用。
安装DHCP服务器
Ubuntu/Debian 系统
# 更新软件包列表 sudo apt update # 安装ISC DHCP服务器 sudo apt install isc-dhcp-server -y
CentOS/RHEL 系统
# 安装EPEL仓库(CentOS 7/8) sudo yum install epel-release -y # 安装DHCP服务 sudo yum install dhcp-server -y # CentOS 7/8 sudo dnf install dhcp-server -y # CentOS 9/RHEL 9
配置DHCP服务
主配置文件
编辑配置文件(路径因系统而异):
- Ubuntu/Debian:
/etc/dhcp/dhcpd.conf
- CentOS/RHEL:
/etc/dhcp/dhcpd.conf
示例配置(按需修改):
# 定义全局参数 option domain-name "example.com"; option domain-name-servers 8.8.8.8, 8.8.4.4; default-lease-time 600; max-lease-time 7200; authoritative; # 子网声明(替换为您的网络参数) subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.100 192.168.1.200; option routers 192.168.1.1; option broadcast-address 192.168.1.255; }
指定监听网卡
- Ubuntu/Debian:编辑
/etc/default/isc-dhcp-server
修改:INTERFACESv4="eth0"
(替换为实际网卡名) - CentOS/RHEL:编辑
/etc/sysconfig/dhcpd
修改:DHCPDARGS="eth0"
启动服务并验证
# 启动服务并设置开机自启 sudo systemctl start isc-dhcp-server # Ubuntu/Debian sudo systemctl start dhcpd # CentOS/RHEL sudo systemctl enable [服务名] # 检查状态 sudo systemctl status [服务名] | grep "active (running)" # 查看日志(实时监控) sudo journalctl -fu [服务名]
客户端测试
- 将客户端设为自动获取IP
- 重启网络:
sudo systemctl restart NetworkManager
- 检查IP:
ip a
或ifconfig
- 查看租约:
cat /var/lib/dhcp/dhclient.leases
(客户端)或cat /var/lib/dhcpd/dhcpd.leases
(服务端)
常见问题解决
-
服务启动失败
- 检查配置语法:
sudo dhcpd -t
- 确认网卡名拼写正确
- 查看端口占用:
sudo netstat -tulnp | grep :67
- 检查配置语法:
-
客户端未获取IP
- 关闭服务端防火墙:
sudo systemctl stop firewalld
(临时) - 检查客户端与服务端是否同网段
- 重启网络服务:
sudo systemctl restart network
- 关闭服务端防火墙:
-
地址冲突
- 在配置中添加保留IP:
host printer { hardware ethernet 00:1a:2b:3c:4d:5e; fixed-address 192.168.1.50; }
- 在配置中添加保留IP:
安全建议
- 最小化地址池范围,避免耗尽IP
- 绑定MAC地址,防止未授权设备接入
- 定期备份配置:
cp /etc/dhcp/dhcpd.conf ~/dhcp_backup.conf
- 启用日志审计:在配置中添加
log-facility local7;
,日志存于/var/log/syslog
通过上述步骤,您已成功部署Linux DHCP服务器,关键点包括:
正确配置子网范围和网关
指定服务监听网卡
通过日志和租约文件排查问题
建议先在测试环境验证配置,再应用于生产网络。
引用说明:本文参考ISC DHCP官方文档(www.isc.org/dhcp)及Linux man-pages,结合主流发行版最佳实践整理,配置示例基于ISC DHCP 4.4版本验证。