您好,歡迎來電子發(fā)燒友網! ,新用戶?[免費注冊]

您的位置:電子發(fā)燒友網>電子百科>網絡>路由器>

dhcp原理及其實現(xiàn)流程

2018年03月06日 18:03 網絡整理 作者: 用戶評論(0
關鍵字:DHCP(19123)

  一、什么是DHCP?

  DHCP,動態(tài)主機配置協(xié)議,前身是BOOTP協(xié)議,是一個局域網的網絡協(xié)議,使用UDP協(xié)議工作,常用的2個端口:67(DHCP server),68(DHCP client)。DHCP通常被用于局域網環(huán)境,主要作用是集中的管理、分配IP地址,使client動態(tài)的獲得IP地址、Gateway地址、DNS服務器地址等信息,并能夠提升地址的使用率。簡單來說,DHCP就是一個不需要賬號密碼登錄的、自動給內網機器分配IP地址等信息的協(xié)議。

  

  二、DHCP的功能

  1、保證任何IP地址在同一時刻只能由一臺DHCP客戶機所使用。

  2、DHCP應當可以給用戶分配永久固定的IP地址。

  3、DHCP應當可以同用其他方法獲得IP地址的主機共存(如手工配置IP地址的主機)

  4、DHCP服務器應當向現(xiàn)有的BOOTP客戶端提供服務。

  三、DHCP原理

  dhcp原理及其實現(xiàn)流程

  DHCP請求IP地址的過程如下:

  1)主機發(fā)送DHCPDISCOVER廣播包在網絡上尋找DHCP服務器;

  2)DHCP服務器向主機發(fā)送DHCPOFFER單播數(shù)據包,包含IP地址、MAC地址、域名信息以及地址租期;

  3)主機發(fā)送DHCPREQUEST廣播包,正式向服務器請求分配已提供的IP地址;

  4)DHCP服務器向主機發(fā)送DHCPACK單播包,確認主機的請求

  需要說明的是:DHCP客戶端可以接收到多個DHCP服務器的DHCPOFFER數(shù)據包,然后可能接受任何一個DHCPOFFER數(shù)據包,但客戶端通常只接受收到的第一個DHCPOFFER數(shù)據包。另外,DHCP服務器DHCPOFFER中指定[1] 的地址不一定為最終分配的地址,通常情況下,DHCP服務器會保留該地址直到客戶端發(fā)出正式請求。

  正式請求DHCP服務器分配地址DHCPREQUEST采用廣播包,是為了讓其它所有發(fā)送DHCPOFFER數(shù)據包的DHCP服務器也能夠接收到該數(shù)據包,然后釋放已經OFFER(預分配)給客戶端的IP地址。

  如果發(fā)送給DHCP客戶端的地址已經被其他DHCP客戶端使用,客戶端會向服務器發(fā)送DHCPDECLINE信息包拒絕接受已經分配的地址信息。

  在協(xié)商過程中,如果DHCP客戶端發(fā)送的REQUEST消息中的地址信息不正確,如客戶端已經遷移到新的子網或者租約已經過期,DHCP服務器會發(fā)送DHCPNAK消息給DHCP客戶 端,讓客戶端重新發(fā)起地址請求過程。

  四、DHCP的優(yōu)缺點

  DHCP服務優(yōu)點不少:網絡管理員可以驗證IP地址和其它配置參數(shù),而不用去檢查每個主機;DHCP不會同時租借相同的IP地址給兩臺主機;DHCP管理員可以約束特定的計算機使用特定的IP地址;可以為每個DHCP作用域設置很多選項;客戶機在不同子網間移動時不需要重新設置IP地址。

  但同時也存在不少缺點:DHCP不能發(fā)現(xiàn)網絡上非DHCP客戶機已經在使用的IP地址;當網絡上存在多個DHCP服務器時,一個DHCP服務器不能查出已被其它服務器租出去的IP地址;DHCP服務器不能跨路由器與客戶機通信,除非路由器允許BOOTP轉發(fā)。

  dhcp原理及其實現(xiàn)流程

  五、dhcp實現(xiàn)流程

  1、發(fā)現(xiàn)階段,即DHCP客戶機尋找DHCP服務器的階段。DHCP客戶機以廣播方式(因為DHCP服務器的IP地址對于客戶機來說是未知的)發(fā)送DHCP discover發(fā)現(xiàn)信息來尋找DHCP服務器,即向地址255.255.255.255發(fā)送特定的廣播信息。網絡上每一臺安裝了TCP/IP協(xié)議的主機都會接收到這種廣播信息,但只有DHCP服務器才會做出響應。

  dhcp原理及其實現(xiàn)流程

  2、提供階段,即DHCP服務器提供IP地址的階段。在網絡中接收到DHCP discover發(fā)現(xiàn)信息的DHCP服務器都會做出響應,它從尚未出租的IP地址中挑選一個分配給DHCP客戶機,向DHCP客戶機發(fā)送一個包含出租的IP地址和其他設置的DHCP offer提供信息。

  dhcp原理及其實現(xiàn)流程

  3、選擇階段,即DHCP客戶機選擇某臺DHCP服務器提供的IP地址的階段。如果有多臺DHCP服務器向DHCP客戶機發(fā)來的DHCP offer提供信息,則DHCP客戶機只接受第一個收到的DHCP offer提供信息,然后它就以廣播方式回答一個DHCP request請求信息,該信息中包含向它所選定的DHCP服務器請求IP地址的內容。之所以要以廣播方式回答,是為了通知所有的DHCP服務器,他將選擇某臺DHCP服務器所提供的IP地址。

  dhcp原理及其實現(xiàn)流程

  4、確認階段,即DHCP服務器確認所提供的IP地址的階段。當DHCP服務器收到DHCP客戶機回答的DHCP request請求信息之后,它便向DHCP客戶機發(fā)送一個包含它所提供的IP地址和其他設置的DHCP ack確認信息,告訴DHCP客戶機可以使用它所提供的IP地址。然后DHCP客戶機便將其TCP/IP協(xié)議與網卡綁定,另外,除DHCP客戶機選中的服務器外,其他的DHCP服務器都將收回曾提供的IP地址。

  dhcp原理及其實現(xiàn)流程

  5、重新登錄。以后DHCP客戶機每次重新登錄網絡時,就不需要再發(fā)送DHCP discover發(fā)現(xiàn)信息了,而是直接發(fā)送包含前一次所分配的IP地址的DHCP request請求信息。當DHCP服務器收到這一信息后,它會嘗試讓DHCP客戶機繼續(xù)使用原來的IP地址,并回答一個DHCP ack確認信息。如果此IP地址已無法再分配給原來的DHCP客戶機使用時(比如此IP地址已分配給其它DHCP客戶機使用),則DHCP服務器給DHCP客戶機回答一個DHCP nack否認信息。當原來的DHCP客戶機收到此DHCP nack否認信息后,它就必須重新發(fā)送DHCP discover發(fā)現(xiàn)信息來請求新的IP地址。

  6、更新租約。DHCP服務器向DHCP客戶機出租的IP地址一般都有一個租借期限,期滿后DHCP服務器便會收回出租的IP地址。如果DHCP客戶機要延長其IP租約,則必須更新其IP租約。DHCP客戶機啟動時和IP租約期限過一半時,DHCP客戶機都會自動向DHCP服務器發(fā)送更新其IP租約的信息。

  為了便于理解,我們把DHCP客戶機比做餐館里的客人,DHCP服務器比做服務員(一個餐館里也可以有多個服務員),IP地址比做客戶需要的食物。那么可以這樣描述整個過程:客人走進餐館,問:“有沒有服務員?。俊保―HCP discover),多個服務員同時回答:“有,我這有雞翅”“有,我這有漢堡”(DHCP offer)??腿苏f:“好吧,我要一份漢堡”(DHCP request,這個客人比較死板,總是選擇第一次聽到的食物),端著漢堡的服務員回應了一聲:“來啦”(DHCP ack),并把食物端到客人面前,供其享用(將網卡和IP地址綁定)。客人下次來的時候,就直接找上次那個服務員點自己喜歡的漢堡了(DHCP request),如果還有漢堡,服務員會再次確認并上菜(DHCP ack),而如果已經賣完了,服務員則會告訴客人:“不好意思,已經賣完了”(DHCP nack)。當然,服務員隔一段時間會來收拾一次桌子,除非客人特別說明這菜還要繼續(xù)吃的,服務員會將剩菜端走。

非常好我支持^.^

(703) 87%

不好我反對

(105) 13%

( 發(fā)表人:陳翠 )

      發(fā)表評論

      用戶評論
      評價:好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關規(guī)定!

      ?