上一篇
Linux如何开启自动分配IP?
- Linux
- 2025-07-03
- 3539
安装isc-dhcp-server包,编辑/etc/dhcp/dhcpd.conf配置子网和地址池,在/etc/default/isc-dhcp-server指定监听接口,最后启动服务并设置开机自启。
在Linux系统中开启DHCP服务器需要安装并配置相关服务,以下是详细操作指南(以广泛使用的ISC DHCP Server为例,适用于Ubuntu/CentOS等主流发行版):
准备工作
-
系统要求
- 以
root
用户或sudo
权限操作 - 确保服务器有静态IP(如
168.1.1
),避免IP冲突 - 确认网络接口名称(通过
ip a
命令查看,如eth0
或ens33
)
- 以
-
安装依赖
# Ubuntu/Debian sudo apt update && sudo apt install isc-dhcp-server -y # CentOS/RHEL sudo yum install dhcp-server -y
配置DHCP服务
-
编辑主配置文件
sudo nano /etc/dhcp/dhcpd.conf
删除原有内容,替换为以下模板(根据需求修改):
# 全局设置 default-lease-time 600; # 默认租约时间(秒) max-lease-time 7200; # 最大租约时间 authoritative; # 声明为权威服务器 log-facility local7; # 日志位置 # 子网配置示例 subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.100 192.168.1.200; # 分配的IP范围 option routers 192.168.1.1; # 网关地址 option subnet-mask 255.255.255.0; # 子网掩码 option domain-name-servers 8.8.8.8, 8.8.4.4; # DNS服务器 }
-
指定监听网卡
sudo nano /etc/default/isc-dhcp-server
修改为:
INTERFACESv4="eth0" # 替换为你的网卡名
启动服务并验证
-
启动服务 & 开机自启
sudo systemctl start isc-dhcp-server # Ubuntu/Debian sudo systemctl start dhcpd # CentOS/RHEL sudo systemctl enable isc-dhcp-server # 设置开机自启
-
检查运行状态
sudo systemctl status isc-dhcp-server | grep active # 正常显示:active (running)
-
查看租约记录
tail -f /var/lib/dhcp/dhcpd.leases # 实时监控分配的IP
防火墙放行(必需)
# Ubuntu (UFW) sudo ufw allow 67/udp # CentOS (Firewalld) sudo firewall-cmd --add-service=dhcp --permanent sudo firewall-cmd --reload
客户端测试
在另一台设备设置网络为DHCP自动获取,检查是否分配到配置范围内的IP:
# Linux客户端验证 ip a show dev eth0 | grep "inet " # Windows客户端 ipconfig /all
故障排查
-
服务启动失败
- 检查配置文件语法:
sudo dhcpd -t
- 查看日志:
journalctl -u isc-dhcp-server -n 50
- 检查配置文件语法:
-
客户端无法获取IP
- 确认防火墙已放行UDP 67端口
- 确保服务器和客户端在同一局域网段
安全建议
- MAC地址绑定(防止未授权设备接入):
host Printer { hardware ethernet 00:1A:2B:3C:4D:5E; fixed-address 192.168.1.50; }
- 定期更新软件:
sudo apt upgrade isc-dhcp-server
- 限制IP范围:避免与静态设备IP冲突
引用说明
- ISC DHCP官方文档:https://kb.isc.org/docs/isc-dhcp-44-manual-pages
- Linux网络管理指南:https://www.kernel.org/doc/html/latest/networking/
- 配置参考:Ubuntu Server 22.04 LTS / CentOS 9 实测验证
重要提示:生产环境建议配置DHCP故障转移(Failover)或使用冗余服务器保障可用性。