麒麟服务器操作系统部署DHCP服务实战:从零到一构建自动化网络

📅 2026/7/13 13:46:40
麒麟服务器操作系统部署DHCP服务实战:从零到一构建自动化网络
1. DHCP服务基础与麒麟系统环境准备第一次在麒麟服务器上折腾DHCP服务时我对着空荡荡的配置文件发呆了半小时。DHCP动态主机配置协议就像网络世界的房产中介自动给设备分配IP地址、子网掩码这些门牌信息。在办公网络环境中手动配置上百台设备的IP简直是噩梦而DHCP能让新设备插上网线就自动联网。先确认你的麒麟系统版本我用的是V10 SP2cat /etc/os-release uname -a重点检查三处环境网络接口用ip a查看网卡名称比如ens33记住这个名称后面配置要用防火墙状态麒麟默认开着firewalld可以先systemctl stop firewalld临时关闭测试SELinux建议用getenforce查看状态如果是Enforcing模式可以临时setenforce 0生产环境不要直接关闭防火墙建议用firewall-cmd --permanent --add-servicedhcp单独放行DHCP服务2. DHCP服务安装与配置文件详解麒麟用的是dnf包管理安装过程比我想象的简单dnf install dhcp-server -y安装完别急着启动关键在配置文件/etc/dhcp/dhcpd.conf。第一次打开这个文件你可能会懵——全是注释。我建议直接备份原文件后用示例模板覆盖cp /usr/share/doc/dhcp-server/dhcpd.conf.example /etc/dhcp/dhcpd.conf配置文件核心参数以192.168.1.0/24网段为例option domain-name yourcompany.com; option domain-name-servers 223.5.5.5, 223.6.6.6; # 阿里云DNS default-lease-time 86400; # 默认租约24小时 max-lease-time 172800; # 最大租约48小时 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; }避坑指南地址池不要包含网关IP比如上面192.168.1.1如果网络中有静态IP设备要在配置里用host声明保留IPhost printer { hardware ethernet 00:0c:29:e4:89:cb; fixed-address 192.168.1.50; }3. 服务启动与防火墙配置启动前先用dhcpd -t测试配置文件语法这个命令救过我无数次dhcpd -t -cf /etc/dhcp/dhcpd.conf没问题后再启动服务systemctl start dhcpd systemctl enable dhcpd防火墙精细控制方案firewall-cmd --permanent --add-servicedhcp firewall-cmd --permanent --add-port67/udp # DHCP客户端端口 firewall-cmd --permanent --add-port68/udp # DHCP服务端端口 firewall-cmd --reload遇到过服务启动失败的情况用journalctl -xe查看日志常见问题有配置文件语法错误比如漏了分号地址池与服务器IP不在同一网段端口被占用netstat -tulnp | grep :674. 客户端测试与租约管理在Windows客户端测试ipconfig /release ipconfig /renewLinux客户端用dhclient -r dhclient服务器端查看租约数据库cat /var/lib/dhcpd/dhcpd.leases输出示例lease 192.168.1.100 { starts 5 2024/04/12 14:30:22; ends 6 2024/04/13 14:30:22; hardware ethernet 00:0c:29:12:34:56; client-hostname PC-01; }高级技巧用dhcp-lease-list工具可视化查看租约定期备份租约文件cp /var/lib/dhcpd/dhcpd.leases /backup/清空旧租约echo /var/lib/dhcpd/dhcpd.leases重启服务生效5. 多子网与中继代理配置当需要跨网段分配地址时比如总部和分部不同网段就需要DHCP中继。在核心交换机上配置# 华为交换机示例 dhcp enable interface Vlanif10 dhcp select relay dhcp relay server-ip 192.168.1.10 # 你的DHCP服务器IP服务器端配置多子网# 总部网段 subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.100 192.168.1.150; option routers 192.168.1.1; } # 分部网段 subnet 192.168.2.0 netmask 255.255.255.0 { range 192.168.2.100 192.168.2.150; option routers 192.168.2.1; }6. 安全加固与故障排查安全建议限制非法DHCP服务器# 在交换机端口上启用DHCP Snooping dhcp snooping enable dhcp snooping trusted interface GigabitEthernet0/0/1 # 只信任连接正规DHCP服务器的端口启用地址冲突检测ping-check on; # 在dhcpd.conf中添加常见故障排查客户端获取不到IP检查防火墙、确认客户端网卡设置为DHCP模式获取到错误IP检查是否有其他DHCP服务器存在用Wireshark抓包看DHCP Offer租约不更新检查服务器时间是否准确租约文件权限是否正确有次凌晨处理故障发现DHCP服务莫名崩溃。后来发现是/var分区满了加个监控脚本很有必要#!/bin/bash if ! systemctl is-active --quiet dhcpd; then systemctl restart dhcpd echo $(date) - DHCP服务已重启 /var/log/dhcp_monitor.log fi设置cron定时任务crontab -e # 添加 */5 * * * * /usr/local/bin/dhcp_monitor.sh