发布时间:2012-06-28 作者:admin
简述:当DHCP服务器接收到客户端的DHCPrequest之后,会向客户端发出一个DHCPACK响应,以确认IP租约的正式生效,也就结束了一个完整的DHCP工作过程。DHCP发放流程第一次登录之后:一旦DH
当DHCP服务器接收到客户端的DHCP request之后,会向客户端发出一个DHCPACK 响应,以确认IP租约的正式生效,也就结束了一个完整的DHCP工作过程。
DHCP发放流程第一次登录之后:一旦DHCP客户端成功地从服务器那里取得DHCP租约之后,除非其租约已经失效并且IP地址也重新设定回0.0.0.0,否则就无需再发送DHCP discover信息了,而会直接使用已经租用到的IP地址向之前之DHCP DHCP客户端发出DHCP request信息,DHCP服务器会尽量让客户端使用原来的IP地址,如果没问题的话,直接响应DHCPack来确认则可。如果该地址已经失效或已经被其它机器使用了,服务器则会响应一个DHCPNACK封包给客户端,要求其重新执行DHCP discover。至于IP的租约期限却是非常考究的,并非如我们租房子那样简单, 以NT为例子:
DHCP客户端除了在开机的时候发出DHCP request 请求之外,在租约期限一半的时候也会发出DHCP request,如果此时得不到DHCP服务器的确认的话,客户端还可以继续使用该IP;当租约期过了87.5%时,如果客户端仍然无法与当初的DHCP服务器联系上,它将与其它DHCP服务器通信。如果网络上再没有任何DHCP服务器在运行时,该客户端必须停止使用该IP地址,并从发送一个Dhcpdiscover数据包开始,再一次重复整个过程。要是您想退租,可以随时送出DHCPRELEASE命令解约,就算您的租约在前一秒钟才获得的。
跨网络的 DHCP 运作 从前面描述的过程中,我们不难发现:DHCP DISCOVER 是以广播方式进行的,其情形只能在同一网络之内进行,因为 router 是不会将广播传送出去的。但如果 DHCP 服务器安设在其它的网络上面呢?由于 DHCP 客户端还没有 IP 环境设定,所以也不知道 Router 地址,而且有些 Router 也不会将 DHCP 广播封包传递出去,因此这情形下 DHCP DISCOVER 是永远没办法抵达 DHCP 服务器那端的,当然也不会发生 OFFER 及其它动作了。要解决这个问题,我们可以用 DHCP Agent (或 DHCP Proxy )主机来接管客户的 DHCP 请求,然后将此请求传递给真正的 DHCP 服务器,然后将服务器的回复传给客户。这里,Proxy 主机必须自己具有路由能力,且能将双方的封包互传对方。若不使用 Proxy,您也可以在每一个网络之中安装 DHCP 服务器,但这样的话,一来设备成本会增加,而且,管理上面也比较分散。当然喽,如果在一个十分大型的网络中,这样的均衡式架构还是可取的。视您的实际情况而定了。
本文由专业服务器托管——腾佑科技(http://www.tuidc.com)提供。
搜索词