的工作原理根据客户端是否第一次登录网络,DHCP的工作形式会有所不同。首次登录时:1.搜索服务器。当DHCP客户端第一次登录网络时,即客户端发现本机没有IP数据设置,就会向网络发送一个DHCPDISCOVER包。因为客户端不知道自己属于哪个网络,所以包的源地址会是0.0.0.0,目的地址会是255.255.255.255,然后附上Dhcpdiscover信息向网络广播。Windows默认情况下,Dhcpdiscover的等待时间预设为1秒,即客户端发出第一个Dhcpdiscover数据包后,如果1秒内没有得到响应,就会执行第二个。Dhcpdiscover广播。如果没有回应,client一共会有4个Dhcpdiscover广播(包括第一个)。除了第一次会等待1秒外,其他3次的等待时间分别为9、13、16秒。如果没有来自DHCP服务器的响应,客户端将显示一条错误消息,声明Dhcpdiscover失败。之后,系统会根据用户的选择,在5分钟后继续重复Dhcpdiscover过程。2.提供租用IP地址。当DHCP服务器侦听客户端发送的Dhcpdiscover广播时,它会从地址范围中选择第一个未被租用的空闲IP,并用一个DHCPOFFER连同其他TCP/IP设置响应给客户端。包。由于client一开始并没有IP地址,所以它的MAC地址信息会包含在它的Dhcpdiscover包中,并且会有一个XID号来标识这个包,而DHCP服务器响应的DHCPoffer包会根据这些数据传递给请求租赁的客户。根据服务器端的设置,Dhcpoffer包中会包含租用期的信息。3.接受IP租约。如果客户端收到网络上多个DHCP服务器的响应,它只会选择其中一个DHCPoffers(通常是***到达的那个),并向网络发送一个DHCPrequest广播包,告诉所有的DHCP服务器它是这将指定接受哪个服务器的IP地址。同时客户端也会向网络发送ARP包,检查网络上是否有其他机器使用该IP地址;如果发现IP已经被占用,客户端会发送一个DHCPDECLINE报文给DHCP服务器拒绝。接受其Dhcpoffer并重新发送Dhcpdiscover消息。【编者推荐】扫盲:什么是DHCP服务器扫盲:DHCP分布形式扫盲:DHCP服务器的作用
