目录
一、DHCP概述
1.DHCP概述
DHCP(Dynamic Host Confiquration Protocol,动态主机配置协议)是由Internet工作任务小组设计开发的,专门用于为TCP/IP网络中的计算机自动分配tcp/Ip参数的协议,是一个应用层协议,使用UDP的67和68端口。DHCP的前身是BooTp协议(BootstrapProt0co1),BOOTP被创建出来为连接到网络中的设备自动分配地址,后来被DHCP取代了,DHCP比BooTp更加复杂,功能更强大。(如果使用wire shark抓包过滤协议是用bootp而不是dhcp)
2.DHCP的优点
由于上网时间的不确定性以及使用人员的技术水平不同,为每位用户分配一个固定的IP地址,不仅造成了IP地址的浪费,也会为ISP服务商带来高额的维护成本。而使用DHCP服务有以下好处:
减少管理员的工作量
避免输入错误的可能
避免IP地址冲突
当更改IP地址段时,不需要重新配置每个用户的IP地址
提高了IP地址的利用率
方便客户端的配置
3.为什么使用DHCP
DHCP 服务避免了因手动设置IP 地址所产生的错误,同时也避免了把一个IP地址分配给多台工作站所造成的地址冲突。DHCP提供了安全、可靠且简单的 TCP/IP 网络设置,降低了配置 IP地址的负担
二、DHCP的模式及分配方式
1.DHCP 的模式(典型的C/S模式)
在网络中假设一台专用的DHCP服务器,负责集中分配各种网络地址参数(主要包括IP地址、子网掩码、默认网关地址、DNS服务器地址、广播地址),其他主机作为DHcP客户机,将网卡配置为自动获取地址,即可与DHCP服务器进行通信,完成自动配置过程
DHCP服务端和客户端需要保持通信,DHCP基于UDP协议,双方都有可能会主动向对方发起通信,因此双方都需要监听端口。
server端:DHCP Server(运行dhcp服务) UDP服务:监听端口67 ( bootps)
client端:DHCP Client(运行dhcp程序) UDP服务:监听瑞口68 ( bootpc)
2.DHCP分配方式
自动分配是当DHCP客户机第一次成功地从DHCP服务器获取到一个IP地址后,就永久地使用这 个IP地址。
手动分配是由DHCP服务器管理员专门指定IP地址。
动态分配是当DHCP客户机第一次从DHCP服务器获取地址后,并非永久地使用该地址,而是在 每次使用完后,DHCP客户机就会释放这个IP地址,供其他客户机使用。
三、DHCP工作原理
客户机从DHCP服务器获得IP地址的过程称为DHCP的租约过程
分为4个步骤
1.客户机请求IP地址
当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址
此时DHCP客户机以广播方式发送DHCP Discover发现信息来寻找DHCP服务器
2.服务器响应
DHCP服务器接收到来自客户机请求lP地址的信息时,在自己的IP地址池中查找是否有合法的IP地址提供给客户机
如果有,DHCP服务器将此IP地址做上标记,加入到DHCP Offer的消息中,然后广播一则DHCP Offer消息
3. 客户机选择lIP地址
DHCP客户机从接收到的第一个DHCP Offer消息中提取IP地址,发出IP地址的DHCP服务器将该地址保留,这样该地址就不能再分配给另一个DHCP客户机
4. 服务器确定租约
DHCP服务器接收到DHCP Request消息后,以DHCPACK消息的形式向客户机广播成功确认,该消息包含有IP地址的有效租约和其他可配置的信息
当客户机收到DHCPACK消息时,配置IP地址,完成TCP/IP的初始化
5. 重新登录
DHCP客户机每次重新登录网络时,不需要再发送DHCPDiscover信息,而是直接发送包含前一次所分配的IP地址的DHCP Request请求信息
6. 更新租约
当DHCP服务器向客户机出租的IP地址租期达到50%时,就需要更新租约
客户机直接向提供租约的服务器发送DHCP Request包,要求更新现有的地址租约
租期达到50%(T1)时,DHCP客户端会自动以单播的方式向DHCP服务器发送DHCP REQUEST报文,请求更新IP地址租期。如果收到DHCP服务器回应的DHCP ACK报文,则租期更新成功(即租期从0开始计算);如果收到DHCP NAK报文,则重新发送DHCP DISCOVER报文请求新的IP地址。
当租期达到87.5%(T2)时,如果仍未收到DHCP服务器的应答,DHCP客户端会自动以广播的方式向DHCP服务器发送DHCP REQUEST报文,请求更新IP地址租期。如果收到DHCP服务器回应的DHCP ACK报文,则租期更新成功(即租期从0开始计算);如果收到DHCP NAK报文,则重新发送DHCP DISCOVER报文请求新的IP地址。
四、手动配置DHCP服务
先安装DHCP服务 yum -y install dhcp
查看 /etc/dhcp/dhcpd.conf 配置文件
这里需要写了配置文件,可以参考 /usr/share/doc/dhcp*/dhcpd.conf.example 这个模板来写
我们直接复制模板覆盖到dhcpd.conf文件
cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf
查看文件是否覆盖过来
cat /etc/dhcp/dhcpd.conf
更改网卡配置
查看虚拟网络编辑器 ,查看net1的子网IP
编辑网卡
vim /etc/sysconfig/network-scripts/ifcfg-ens33
实验:动态分配IP地址
拓扑图:
ensp上设置云服务器主机
ensp上配置二层交换机LSW2
ensp上配置三层交换机LSW1
进入虚拟机来配置DHCP服务
vim /etc/dhcp/dhcpd.conf
重启dhcp,查看状态
ping一下ensp中的192.168.10.254和192.168.20.254是不是通的,通说明配置有效