动态主机配置协议(DHCP)
DHCP(Dynamic Host Configuration Protocol)动态主机配置协议,是一种网络协议, 是 RFC 1541(已被 RFC 2131 取代)定义的标准协议,该协议允许服务器向客户端动态分配 IP 地址和配置信息。
DHCP共有八种报文,分别为DHCP Discover、DHCP Offer、DHCP Request、DHCP ACK、DHCP NAK、DHCPRelease、DHCP Decline、DHCPInform。
DHCP Discover:
DHCP客户端请求地址时,并不知道DHCP服务器的位置,因此DHCP客户端会在本地网络内以广播方式发送请求报文,这个报文成为Discover报文,目的是发现网络中的DHCP服务器,所有收到Discover报文的DHCP服务器都会发送回应报文,DHCP客户端据此可以知道网络中存在的DHCP服务器的位置。
DHCP Offer:
DHCP服务器收到Discover报文后,就会在所配置的地址池中查找一个合适的IP地址,加上相应的租约期限和其他配置信息(如网关、DNS服务器等),构造一个Offer报文,发送给用户,告知用户本服务器可以为其提供IP地址。< 只是告诉client可以提供,是预分配,还需要client通过ARP检测该IP是否重复>
DHCP Request:
DHCP客户端可能会收到很多Offer,所以必须在这些回应中选择一个。Client通常选择第一个回应Offer报文的服务器作为自己的目标服务器,并回应一个广播Request报文,通告选择的服务器。DHCP客户端成功获取IP地址后,在地址使用租期过去1/2时,会向DHCP服务器发送单播Request报文续延租期,如果没有收到DHCP ACK报文,在租期过去3/4时,发送广播Request报文续延租期。
DHCP ACK:
DHCP服务器收到Request报文后,根据Request报文中携带的用户MAC来查找有没有相应的租约记录,如果有则发送ACK报文作为回应,通知用户可以使用分配的IP地址。
如何使用RedHat8.6 搭建一个DHCP服务器,这台服务器是最小化安装的,没有安装任何dhcp组件。
一、实验配置
(1)安装DHCP服务组件:
rpm -qa |grep dhcp
yum install dchp-servery
备注:执行yum install dchp-server后除了dhcp包之外还需要一个bind-export-libs的包,输入 “y”开始安装。
到此dhcp服务组件已经安装成功。
(2)查看DHCP文件以及配置参考
cat /etc/dhcp/dhcpd.conf //查看DHCP文件配置
提示配置参考:
/usr/share/doc/dhcp-server/dhcpd.conf.example是一个配置文件的实例,里面包含了如何定义dhcp池,DHCP生存周期等,具体参数意义如下所示:
default-lease-time [21600] #默认租期时间max-lease-time [43200] #最大租期时间option domain-name-servers [8.8.8.8] #定义DNS服务器地址option domain-name ["domain.org"] #定义DNS域名range #定义用于分配的IP地址池option subnet-mask #定义客户端的子网掩码option routers #定义客户端的网关地址broadcase-address[广播地址] #定义客户端的广播地址fixed-address[IP地址] #将某个固定的IP地址分配给指定主机Hardware[网卡物理地址] #指定网卡接口的类型与MAC地址ntp-server[IP地址] #定义客户端的网络时间服务器(NTP)nis-servers[IP地址] #定义客户端的NIS域服务器的地址server-name[主机名] #向DHCP客户端通知DHCP服务器的主机名ddns-update-style [类型] #定义DNS服务动态更新的类型,类型包括none(不支持动态更新)、interim(互动更新模式)与ad-hoc(特殊更新模式)
(3)配置DHCP文件
vim /etc/dhcp/dhcpd.confsubnet 192.168.40.0 netmask 255.255.255.0 {range 192.168.40.151 192.168.40.199; #DHCP地址池范围option subnet-mask 255.255.255.0; #子网掩码option routers 192.168.40.2; #网关option domain-name-servers 192.168.40.2; #dnsoption broadcast-address 192.168.40.255; #广播地址default-lease-time 3600; #dhcp缺省租约,单位是秒max-lease-time 9000; #dhcp最大租约,单位是秒}
(3)开启DHCP服务,查看DHCP状态,防火墙放通DHCP服务
systemctl start dhcpd #开启dhcp服务systemctl status dhcpd #查看dhcp服务运行状态firewall-cmd --add-service=dhcp --permanent #防火墙放通DHCP服务
二、结果验证
(1)查看查看主机获取的ip地址:
本文采摘于网络,不代表本站立场,转载联系作者并注明出处:https://www.5amiao.com/baike/1662.html