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

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

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

2018年03月06日 18:03 網(wǎng)絡(luò)整理 作者: 用戶評(píng)論(0
關(guān)鍵字:DHCP(19123)

  一、什么是DHCP?

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

  

  二、DHCP的功能

  1、保證任何IP地址在同一時(shí)刻只能由一臺(tái)DHCP客戶機(jī)所使用。

  2、DHCP應(yīng)當(dāng)可以給用戶分配永久固定的IP地址。

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

  4、DHCP服務(wù)器應(yīng)當(dāng)向現(xiàn)有的BOOTP客戶端提供服務(wù)。

  三、DHCP原理

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

  DHCP請(qǐng)求IP地址的過程如下:

  1)主機(jī)發(fā)送DHCPDISCOVER廣播包在網(wǎng)絡(luò)上尋找DHCP服務(wù)器;

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

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

  4)DHCP服務(wù)器向主機(jī)發(fā)送DHCPACK單播包,確認(rèn)主機(jī)的請(qǐng)求

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

非常好我支持^.^

(703) 87%

不好我反對(duì)

(105) 13%

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

      發(fā)表評(píng)論

      用戶評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?