服务器 频道

新手入门之轻松认识DHCP服务器

    DHCP协议的自动IP地址分配过程通常需要经过如下几个阶段:

    初始阶段
    当启动客户的TCP/IP组时,由于在IP网络中的每台机器都需要有一个地址,因此TCP/IP组与地址0.0.0.0绑定在一起。然后它将一个DHCP Discover信息包发送给它的本地子网。该信息包时发送给UDP端口67,也即DHCP/BOOTP服务器端口的广播信息包。

 发现阶段
    即DHCP客户机寻找DHCP服务器的阶段。DHCP客户机以广播方式(因为DHCP服务器的IP地址对于客户机来说是未知的)发送DHCP discover发现信息来寻找DHCP服务器,即向地址255.255.255.255发送特定的广播信息。网络上每一台安装了TCP/IP协议的主机都会接收到这种广播信息,但只有DHCP服务器才会做出响应。

 提供阶段
    本地子网的每一个DHCP服务器都接收DHCP Discover信息包。每个接收请求的DHCP服务器都检查它是否有给请求客户的有效空闲地址。然后它以DHCP Offer信息包作为响应,该信息包包括有效的IP地址、子网掩码、DHCP服务器的IP地址、租用期限、以及其他的有关DHCP范围的详细配置。所有发送DHCP Offer信息包的服务器将保留它们提供的一个IP地址。在该地址不再保留之前,该地址不能分配给其他的客户。DHCP Offer信息广播发送给UDP端口68,也即DHCP/BOOTP客户端口。相应必须以广播方式发送,因为客户没有能直接寻址的IP地址。

 选择阶段
    即DHCP客户机选择某台DHCP服务器提供的IP地址的阶段。如果有多台DHCP服务器向DHCP客户机发来的DHCP offer提供信息,则DHCP客户机只接受第一个收到的DHCP offer提供信息,然后它就以广播方式回答一个DHCP request请求信息,该信息中包含向它所选定的DHCP服务器请求IP地址的内容。之所以要以广播方式回答,是为了通知所有的DHCP服务器,他将选择某台DHCP服务器所提供的IP地址。

 确认阶段
    即DHCP服务器确认所提供的IP地址的阶段。客户通常对第一个提议产生响应,并以广播的方式发送DHCP Request信息包作为响应。该信息包告诉服务器“是的,我想让你给我提供服务。我接收你给我的租用期限”。而且,一旦信息包以广播方式发送以后,网络中所有的DHCP服务器都可以看到该信息包,那些提议没有被客户承认的DHCP服务器将保留的IP地址返回给它的可用地址池。客户还可利用DHCP Request询问服务器其他的配置选项,如:DNS或网关地址。

 重新登录阶段
    以后DHCP客户机每次重新登录网络时,就不需要再发送DHCP discover发现信息了,而是直接发送包含前一次所分配的IP地址的DHCP request请求信息。当DHCP服务器收到这一信息后,它会尝试让DHCP客户机继续使用原来的IP地址,并回答一个DHCP ack确认信息。如果此IP地址已无法再分配给原来的DHCP客户机使用时(比如此IP地址已分配给其它DHCP客户机使用),则DHCP服务器给DHCP客户机回答一个DHCP nack否认信息。当原来的DHCP客户机收到此DHCP nack否认信息后,它就必须重新发送DHCP discover发现信息来请求新的IP地址。

 更新租约阶段
    当客户注意到它的租用期到了50%以上时,就要更新该租用期。这时它发送一个直接UDP信息包给他获得它的原始信息的服务器。该信息包是一个DHCP Request信息包,用以询问是否能保持TCP/IP配置信息并更新它的租用期。如果服务器是可用的,则它通常发送一个DHCP Acknowledge信息包给客户,同意客户的请求。

 重新捆绑阶段
    当租用期达到期满时间的近87.5%时,客户如果在前一次请求中没能更新租用期的话,他会再次试图更新租用期。如果这次更新失败的话,客户机就会试着与任何一个DHCP服务器联系以获得一个有效的IP地址。如果另外的一个DHCP服务器能够分配一个新的IP地址,则该客户机再次进入捆绑状态。如果客户机当前的IP地址租用期满,则客户机必须放弃该IP地址,并重新进入初始化状态,然后重复整个过程。

    【说明】DHCP服务不仅可以在主机上配置,像路由器等设备中也可以提供这类服务,最常见的就是宽带路由器,通过它的DHCP服务同样可以为客户机提供自动IP地址分配,减轻服务器主机的负担。

0
相关文章