CentOS 7 搭建 DHCP 服务器
在 CentOS 7 上搭建 DHCP 服务器,可以自动为网络中的设备分配 IP 地址、子网掩码、网关和 DNS 等网络参数,以下是详细的步骤:
一、安装 DHCP 服务
1、检查是否已安装 DHCP 软件包
rpm -qa | grep dhcp
如果未安装,则进行下一步。
2、下载并安装 DHCP 软件包
切换到镜像源的软件包目录:
cd /run/media/dhp/CentOS\ 7\ x86_64//Packages/ ls | grep dhcp
安装以下两个依赖软件包:
rpm -ivh dhcp-libs-4.2.5-83.el7.centos.1.x86_64.rpm rpm -ivh dhcp-common-4.2.5-83.el7.centos.1.x86_64.rpm
安装主程序包:
rpm -ivh dhcp-4.2.5-83.el7.centos.1.x86_64.rpm
二、配置网络
1、设置静态 IP 地址
编辑网卡配置文件ifcfg-ens33
,设置为静态 IP:
vi /etc/sysconfig/network-scripts/ifcfg-ens33
修改内容如下:
BOOTPROTO=static ONBOOT=yes IPADDR=192.168.80.50 NETMASK=255.255.255.0 GATEWAY=192.168.80.1
保存并重启网卡:
systemctl restart network.service
2、激活虚拟网络适配器(如 vmnet1)
打开所有设置,找到网络和Internet,点击更改适配器选项,将vmnet1激活。
三、配置 DHCP 服务
1、编辑 DHCP 配置文件
复制模板文件到实际配置文件:
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
编辑配置文件/etc/dhcp/dhcpd.conf
:
vi /etc/dhcp/dhcpd.conf
添加以下内容:
subnet 192.168.80.0 netmask 255.255.255.0 { range dynamic-bootp 192.168.80.80 192.168.80.100; option routers 192.168.80.1; }
2、启动并启用 DHCP 服务
systemctl start dhcpd systemctl enable dhcpd
3、查看服务状态
systemctl status dhcpd
四、客户端配置
1、设置客户端为动态获取 IP
编辑客户端网卡配置文件ifcfg-ens33
:
vi /etc/sysconfig/network-scripts/ifcfg-ens33
修改内容如下:
BOOTPROTO=dhcp ONBOOT=yes
保存并重启网卡:
systemctl restart network.service
2、验证客户端获取的 IP 地址
ifconfig
五、常见问题解决与注意事项
1、防火墙配置
确保防火墙允许 DHCP 服务的端口:
firewall-cmd --permanent --add-service=dhcp firewall-cmd --reload
2、DHCP 租约文件
确认租约文件的权限正确:
chown dhcpd:dhcpd /var/lib/dhcpd/dhcpd.leases chmod 600 /var/lib/dhcpd/dhcpd.leases
六、FAQs
Q1: 如何更改 DHCP 服务器的 IP 地址池?
A1: 编辑/etc/dhcp/dhcpd.conf
文件中的range
行,调整 IP 地址范围即可。
range dynamic-bootp 192.168.80.100 192.168.80.200;
Q2: 如何解决“Failed to start dhcpd.service: No such file or directory”错误?
A2: 确保/etc/dhcp/dhcpd.conf
文件存在且配置正确,如果文件丢失或被删除,可以通过以下命令重新创建:
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
然后再次启动服务:
systemctl start dhcpd