DHCP简介
DHCP,动态主机配置协议,是一个应用层协议。简单来说,就是给主机动态分配地址的协议。
DHCP分配地址的过程
DHCP分配地址分为四个过程, discover、offer、 request、ack。
discover阶段:
未获取到地址时,客户机会通过UDP 67端口向网络上发出一个DISCOVER数据包。因为客户机还没有获取到IP,所以封包的源地址为0.0.0.0,目标地址为255.255.255.255,向网络进行广播,网络上每一台安装了TCP/IP协议的主机都会接收到这种广播信息,但只有DHCP服务器才会做出响应。
offer阶段:
DHCP服务器在接受到客户机的discover包后,如果有地址可以提供,会广播发送一个offer包给客户机。该offer包包含客户机的MAC地址、提供的IP、子网掩码、租期以及服务器IP等。
request阶段:
如果客户机收到了多格服务器的相应,一般会选择最快的那个服务器端广播发送一个request包。告诉所有服务器,客户机接受了那一个服务器提供的IP。
ack阶段:
服务器收到客户机的request包之后,会广播发送给客户机一个ack包,表明已经接受了客户机的选择。客户机收到服务器的ack包之后,会进行三次地址冲突检测。
进行完这四个阶段之后,客户机就获取到了地址。