(1)什么是DHCP协议?
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作。主要用于给内部网络或网络服务提供供应商自动分配IP地址。DHCP协议是一个应用层协议,能够让设备自动获取IP地址以及其他重要的网络资源。DHCP使用的客服务器模式,其中客户端使用的是UDP68端口,而服务器使用的是UDP67端口。
(2)DHCP的作用?
DHCP(动态主机配置协议)为互联网上主机提供地址和配置参数。DHCP是基于Client/Server工作模式,DHCP服务为主机分配IP地址和提供主机配置参数。DHCP主要作用如下:
a: 保证任何IP地址在同一时刻只能由一台DHCP客户机使用
b:DHCP可以给用户分配永久固定的IP地址
c: DHCP允许用其他方式获取IP地址的主机共存,如手动配置IP地址的主机
(3)DHCP的工作流程
使用DHCP时,在网络上首先必须有一台DHCP服务器,而其他的计算机则是DHCP客户端。当DHCP客户端程序发出一个信息,要求一个动态IP地址时,DHCP服务器将根据,目前配置的IP地址池,从中提供一个可供使用的IP地址和子网掩码给客户端,以下图就是DHCP的工作流程。
从上图可以看出,DHCP工作分为4个阶段。分别为发现阶段(DHCP Discover),提供阶段(DHCP Offer),选择阶段(DHCP Request)和确认阶段(DHCK ACK)
发现阶段(DHCP Discover):
上图是DHCP发现阶段,即DHCP客户端寻找DHCP服务器的阶段,DHCP客户端以广播方式发送DHCP Discover包,因为客户端不知道服务器的IP地址,在网络上每台主机都会收到此广播包,但是只有DHCP服务器才可以响应。
提供阶段(DHCP Offer)
上图是DHCP的提供阶段,即DHCP服务器提供IP地址的阶段,在网络中收到DHCP客户端发送的DHCP Discover的DHCP服务器,都会做出响应的。这些DHCP服务器从尚未出租的IP地址中挑选一个给客户端,向客户端发送一个包含IP地址和其他设置的DHCP Offer包。
选择阶段(DHCP Request)
上图是DHCP的选择阶段,也就是说DHCP客户端选择某台DHCP服务器提供IP地址阶段。当客户端收到多台DHCP发送的DHCP offer包,DHCP客户端只接受其中一台DHCP服务器的数据,然后以广播的方式回应DHCP服务器DHCP Request,通知自己选择的DHCP服务器。当局域网中所以的DHCP服务器收到客户端发送的DHCP Request信息,通过查看包,确定是否是选择了自己IP,如果选择的是自己,则会发送一个确认包。否则,不进行响应
确认阶段(DHCP ACK)
上图是DHCP的确认阶段,也就是DHCP服务器确认所提供的IP地址信息阶段。同时另外的没有被选择的DHCP服务器都将回收曾经提供的IP地址。