DHCP Dynamic Host Configuration Protocol(动态主机配置协议)
使用UDP协议工作,主要有两个用途:
1.给内部网络或网络服务供应商自动分配ip地址,主机名,DNS服务器,域名
2.配和其它服务,实现集成化管理功能。
特点:C/S模式 客户端/服务端
自动分配ip地址,方便管理
DHCP不会同时租借相同的ip地址给两台主机
DHCP管理员可以约束特定的计算机使用特定的ip地址
可以为每个DHCP作用域设置很多选项
客户机在不同子网间移动时不需要重新设置ip地址。每次都自动获取ip地址就可以了
DHCP的缺点:
当网络上存在多服务器时,一个DHCP服务器不能查出已被其它服务器租出去的ip地址;dhcp服务器不能跨路由器与客户机通信,除非路由器允许bootp协议转发
在局域网中建立一个DHCP服务器可以为网络中的客户机动态分配IP地址,这样就省去了大量的人力资源成本,多的不说,我们直接开始配置吧
vi /etc/selinux/config SELINUX=enforcing
修改为
SELINUX=disabled
使配置生效
setenforce 0
关闭防火墙
systecmctl stop firewalld.service systecmctl disable firewalld.service
安装DHCP
yum install dhcp -y
修改配置
vi /etc/dhcp/dhcpd.conf #清空内如改为如下信息 default-lease-time 600; max-lease-time 7200; log-facility local7; subnet 192.168.100.0 netmask 255.255.255.0 { range 192.168.100.11 192.168.100.250; option routers 192.168.100.1; }
如果还需要将IP和MAC绑定的客户机需要增加以下配置,直接加到上面后面
host printer { hardware ethernet 00:0c:29:48:c5:a2; fixed-address 192.168.100.99; }
将dhcp服务器绑定到网卡上
vi /etc/sysconfig/dhcpd
末尾加上
DHCPDARGS="enp0s31f6"
其中enp0s31f6是我的网卡名,可以在ip addr里面查看到
最好把DHCP服务器配置一个固定的IP
vi /etc/sysconfig/network-scripts/ifcfg-enp0s31f6
参照如下修改
TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static DEFROUTE=yes IPV4_FAILURE_FATAL=no #IPV6INIT=yes #IPV6_AUTOCONF=yes #IPV6_DEFROUTE=yes #IPV6_FAILURE_FATAL=no #IPV6_ADDR_GEN_MODE=stable-privacy NAME=enp0s31f6 UUID=1d744799-4d83-4e78-b8ab-18604ba292ab DEVICE=enp0s31f6 ONBOOT=yes IPADDR=192.168.100.2 NETMASK=255.255.255.0 GATEWAY=192.168.100.1
最后我们再重启本机网络
systemctl restart network.service
再启动dhcp服务器
systemctl start dhcpd.service
我们试着用一台笔记本连接到DHCP服务器网内,如下图,获取到IP为192.168.100.11
然后我们去服务器查看客户端租约情况
tail /var/lib/dhcpd/dhcpd.leases