电子说
DHCP的四次握手过程大白话大致如下:
客户端:刚开机,还没有IP地址,哪位佬能给个IP?
这个过程中,客户端就是一个网络小白,它也不知道自己IP是多少,就开始喊话,问有没有DHCP服务器能给它分配个网络地址。
这时候,DHCP服务器说话了:来,我这有IP地址,你来用这个吧。
这个时候,DHCP听到了客户端的喊话,从自己的IP地址池中找一个还没有被使用的IP地址,然后告诉客户端说:你来试试这个。
第三次握手,也就是客户端确认的过程。
客户端:好滴,我就用这个了。
这个过程,也就是客户端确认的时候,当客户端听到服务器的建议时,会从中选择一个,然后告诉服务器:我决定用这个了!
第四次握手,即服务器确认。
DHCP服务器:好的,那这个IP地址就归你使用了!
服务器听到客户端的确认后,会正式把IP地址分配给客户端,并告诉它:“这个IP地址现在就是你的了,你可以用它来进行网络通信了!”
通过四次握手的过程,客户端就成功获取了IP地址。
DHCP的四次握手理解进阶版如下:
第一次握手:发现阶段 dhcp discover
当DHCP客户端启动时,它还没有IP地址,因此会以广播方式发送一个DHCP Discover报文,该报文包含客户端的MAC地址和计算机名,以便DHCP服务器识别。这个报文的目的地址是255.255.255.255,即有限广播地址,表示向网络中的所有设备发送。
第二次握手:提供阶段 dhcp offer
当DHCP服务器接收到DHCP Discover报文后,它会在自己的IP地址池中查找是否有可用的IP地址。如果有,DHCP服务器会将该IP地址标记为已分配,并创建一个DHCP Offer报文,其中包含分配的IP地址、子网掩码、默认网关、DNS服务器地址等网络配置信息。然后,DHCP服务器会以广播方式发送这个DHCP Offer报文给客户端。
第三次握手:选择阶段 dhcp request
客户端可能会收到多个DHCP Offer报文(如果网络中有多个DHCP服务器)。在这种情况下,客户端会选择第一个收到的DHCP Offer报文,并发送一个DHCP Request报文给该DHCP服务器,以确认选择。这个DHCP Request报文包含客户端选择的IP地址和其他网络配置信息。
第四次握手:确认阶段 dhcp ack
被选择的DHCP服务器接收到DHCP Request报文后,会验证客户端请求的IP地址是否仍然可用。如果可用,DHCP服务器会发送一个DHCP ACK报文给客户端,正式确认IP地址的分配。这个DHCP ACK报文包含客户端的IP地址、租约期限和其他网络配置信息。
还有一点,需要说明,在DHCP客户端获得了一个IP地址以后,还可以发送一个免费ARP请求探测网络中是否还有其它主机使用相同的IP地址,以此来避免由于DHCP服务器地址池重叠而引发的IP冲突。
审核编辑 黄宇
全部0条评论
快来发表一下你的评论吧 !