DHCP,全稱是 Dynamic Host Configuration Protocol﹐中文名為動(dòng)態(tài)主機(jī)配置協(xié)議,它的前身是 BOOTP,它工作在OSI的應(yīng)用層,是一種幫助計(jì)算機(jī)從指定的DHCP服務(wù)器獲取它們的配置信息的自舉協(xié)議。
DHCP使用客戶端/服務(wù)器模式,請(qǐng)求配置信息的計(jì)算機(jī)叫做DHCP客戶端,而提供信息的叫做DHCP的服務(wù)器。DHCP為客戶端分配地址的方法有三種:手工配置、自動(dòng)配置、動(dòng)態(tài)配置。
DHCP最重要的功能就是動(dòng)態(tài)分配。除了IP地址,DHCP分組還為客戶端提供其他的配置信息,比如子網(wǎng)掩碼。這使得客戶端無(wú)需用戶動(dòng)手就能自動(dòng)配置連接網(wǎng)絡(luò)。
發(fā)現(xiàn)階段,即DHCP客戶機(jī)尋找DHCP服務(wù)器的階段。DHCP客戶機(jī)以廣播方式(因?yàn)?/span>DHCP服務(wù)器的IP地址對(duì)于客戶機(jī)來(lái)說(shuō)是未知的)發(fā)送DHCP discover發(fā)現(xiàn)信息來(lái)尋找DHCP服務(wù)器,即向地址255.255.255.255發(fā)送特定的廣播信息。網(wǎng)絡(luò)上每一臺(tái)安裝了TCP/IP協(xié)議的主機(jī)都會(huì)接收到這種廣播信息,但只有DHCP服務(wù)器才會(huì)做出響應(yīng)。
提供階段,即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客戶機(jī)選擇某臺(tái)DHCP服務(wù)器提供的IP地址的階段。如果有多臺(tái)DHCP服務(wù)器向DHCP客戶機(jī)發(fā)來(lái)的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地址。
確認(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客戶機(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ù)使用原來(lái)的IP地址,并回答一個(gè)DHCP ACK確認(rèn)信息。如果此IP地址已無(wú)法再分配給原來(lái)的DHCP客戶機(jī)使用時(shí)(比如此IP地址已分配給其它DHCP客戶機(jī)使用),則DHCP服務(wù)器給DHCP客戶機(jī)回答一個(gè)DHCP NACK否認(rèn)信息。當(dāng)原來(lái)的DHCP客戶機(jī)收到此DHCP NACK否認(rèn)信息后,它就必須重新發(fā)送DHCP discover發(fā)現(xiàn)信息來(lái)請(qǐng)求新的IP地址。
更新租約,DHCP服務(wù)器向DHCP客戶機(jī)出租的IP地址一般都有一個(gè)租借期限,期滿后DHCP服務(wù)器便會(huì)收回出租的IP地址。如果DHCP客戶機(jī)要延長(zhǎng)其IP租約,則必須更新其IP租約。DHCP客戶機(jī)啟動(dòng)時(shí)和IP租約期限過(guò)一半時(shí),DHCP客戶機(jī)都會(huì)自動(dòng)向DHCP服務(wù)器發(fā)送更新其IP租約的信息。
OP(1) | Htype(1) | Hlen(1) | Hops(1) |
Transaction ID(4) | |||
Seconds(2) | Flags(2) | ||
Ciaddr(4) | |||
Yiaddr(4) | |||
Siaddr(4) | |||
Giaddr(4) | |||
Chaddr(16) | |||
Sname(64) | |||
File(128) | |||
Options(variable) |
使用科來(lái)網(wǎng)絡(luò)分析系統(tǒng)捕獲DHCP DISCOVERY 數(shù)據(jù)包,如圖2,
(圖2 DHCP DISCOVERY數(shù)據(jù)包解碼)
由圖2可以看到DHCP DISCOVERY包的解碼信息,由于DHCP是BOOTP的以個(gè)擴(kuò)展,,DHCP兼容BOOTP,我們可以看到BOOTP和DHCP的解碼。
使用科來(lái)網(wǎng)絡(luò)分析系統(tǒng)捕獲DHCP OFFER數(shù)據(jù)包,如圖3,
(圖3 DHCP OFFER數(shù)據(jù)包解碼)
使用科來(lái)網(wǎng)絡(luò)分析系統(tǒng)捕獲DHCP REQUEST數(shù)據(jù)包,如圖4,
(圖4 DHCP REQUEST數(shù)據(jù)包解碼)
使用科來(lái)網(wǎng)絡(luò)分析系統(tǒng)捕獲DHCP ACK數(shù)據(jù)包,如圖5,
聯(lián)系客服