什麽是DHCP協議,DHCP協議有什麽優勢?
DHCP簡介
随着网络规模的不断扩大和网络复杂度的提高,计算机的数量经常超过可供分配的IP地址数量。同时随着便携机及无线网络的广泛使用,计算机的位置也经常变化,相应的IP地址也必须经常更新,从而导致网络配置越来越复杂。DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)就是为解决这些问题而发展起来的。
DHCP采用客戶端/服務器通信模式,由客戶端向服務器提出配置申請,服務器返回爲客戶端分配的IP地址等相應的配置信息,以實現IP地址等信息的動態配置。
在DHCP的典型應用中,一般包含一台DHCP服務器和多台客戶端(如PC和便攜機),如下圖所示。
DHCP的IP地址分配
IP地址分配策略
針對客戶端的不同需求,DHCP提供三種IP地址分配策略:
手工分配地址:由管理員爲少數特定客戶端(如WWW服務器等)靜態綁定固定的IP地址。通過DHCP將配置的固定IP地址發給客戶端。
自動分配地址:DHCP爲客戶端分配租期爲無限長的IP地址。
動態分配地址:DHCP爲客戶端分配具有一定有效期限的IP地址,到達使用期限後,客戶端需要重新申請地址。絕大多數客戶端得到的都是這種動態分配的地址。
IP地址動態獲取過程
图2 IP地址動態獲取過程
如圖2所示,DHCP客戶端從DHCP服務器動態獲取IP地址,主要通過四個階段進行:
(1)發現階段,即DHCP客戶端尋找DHCP服務器的階段。客戶端以廣播方式發送DHCP-DISCOVER報文。
(2)提供階段,即DHCP服務器提供IP地址的階段。DHCP服務器接收到客戶端的DHCP-DISCOVER報文後,根據IP地址分配的優先次序選出一個IP地址,與其他參數一起通過DHCP-OFFER報文發送給客戶端。DHCP-OFFER報文的發送方式由DHCP-DISCOVER報文中的flag字段決定,具體請參見“DHCP報文格式”的介紹。
(3)選擇階段,即DHCP客戶端選擇IP地址的階段。如果有多台DHCP服務器向該客戶端發來DHCP-OFFER報文,客戶端只接受第一個收到的DHCP-OFFER報文,然後以廣播方式發送DHCP-REQUEST報文,該報文中包含DHCP服務器在DHCP-OFFER報文中分配的IP地址。
(4)確認階段,即DHCP服務器確認IP地址的階段。DHCP服務器收到DHCP客戶端發來的DHCP-REQUEST報文後,只有DHCP客戶端選擇的服務器會進行如下操作:如果確認將地址分配給該客戶端,則返回DHCP-ACK報文;否則返回DHCP-NAK報文,表明地址不能分配給該客戶端。
IP地址的租約更新
如果采用動態地址分配策略,則DHCP服務器分配給客戶端的IP地址有一定的租借期限,當租借期滿後服務器會收回該IP地址。如果DHCP客戶端希望繼續使用該地址,需要更新IP地址租約。
在DHCP客戶端的IP地址租約期限達到一半時間時,DHCP客戶端會向爲它分配IP地址的DHCP服務器單播發送DHCP-REQUEST報文,以進行IP租約的更新。如果客戶端可以繼續使用此IP地址,則DHCP服務器回應DHCP-ACK報文,通知DHCP客戶端已經獲得新IP租約;如果此IP地址不可以再分配給該客戶端,則DHCP服務器回應DHCP-NAK報文,通知DHCP客戶端不能獲得新的租約。
如果在租約的一半時間進行的續約操作失。珼HCP客戶端會在租約期限達到7/8時,廣播發送DHCP-REQUEST報文進行續約。DHCP服務器的處理方式同上,不再贅述。