dhcp工作原理及过程
DHCP协议采用UDP作为传输协议,客户端主机发送请求消息到DHCP服务器的67号端口,DHCP服务器回应应答消息给客户端主机的68号端口。详细的交互过程如下图(图片来源于网络):
(1)客户端:利用广播数据包发送搜索DHCP服务器
若客户端网络设置使用DHCP协议取得IP,则当客户端开机或者是重新启动网卡时,客户端主机会发送出查找DHCP服务器的UDP数据包(discover)给所有物理网段内的计算机。因为客户端还不知道自己属于哪一个网络,所以该数据包的来源地址会为0.0.0.0,而目的地址则为255.255.255.255。一般主机接收到这个数据包之后会直接丢弃,若局域网内有DHCP服务器,则会开始后续行为。
(2)服务器端:提供客户端网络相关的租约以供选择。(dhcp offer)
DHCP服务器在监听到客户端发出的dhcp discover广播后,会针对这个客户端的硬件地址( MAC)与本身的设置数据进行下列工作:
①到服务器的日志文件中查找该用户之前是否曾经租用过某个IP,若有且该IP目前无人使用,则提供此IP给客户端。
②若配置文件针对该MAC地址提供特定的固定IP时,则提供该固定的IP给客户端。
③若不符合上述两个条件,则随机选取当前没有被使用的IP参数给客户端,并记录下来。
(3)客户端: