第四次作業(yè)
第4次作業(yè):以實(shí)驗(yàn)方式呈現(xiàn)并詳細(xì)講述DHCP 、DNS 的工作過(guò)程與原理 要求:獨(dú)立完成實(shí)驗(yàn),切實(shí)掌握dhcp/dns工作原理;認(rèn)真觀察dhcp/dns工作過(guò)程中數(shù)據(jù)包的轉(zhuǎn)發(fā)過(guò)程批改完成計(jì)劃:第4周
第4次作業(yè):
以實(shí)驗(yàn)方式呈現(xiàn)并詳細(xì)講述DHCP 、DNS 的工作過(guò)程與原理 要求:獨(dú)立完成實(shí)驗(yàn),切實(shí)掌握dhcp/dns工作原理;認(rèn)真觀察dhcp/dns工作過(guò)程中數(shù)據(jù)包的轉(zhuǎn)發(fā)過(guò)程
批改完成計(jì)劃:第4周布置,第5周上交并批改

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ò)。
【DHCP 的工作流程】
,發(fā)現(xiàn)階段,即DHCP 客戶機(jī)尋找DHCP 服務(wù)器的階段。DHCP 客戶機(jī)以廣播方式(因?yàn)镈HCP 服務(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 租約的信息。
【DHCP 的報(bào)文格式】
我們來(lái)介紹一下DHCP 的報(bào)文格式,如圖1,

(圖1 DHCP 的 報(bào)文格式)
OP :若是client 送給server 的封包,設(shè)為1,反向?yàn)?;
Htype :硬件類別,ethernet 為1;
Hlen :硬件長(zhǎng)度,ethernet 為6;
Hops :若數(shù)據(jù)包需經(jīng)過(guò)router 傳送,每站加1,若在同一網(wǎng)內(nèi),為0;
Transaction ID:事務(wù)ID ,是個(gè)隨機(jī)數(shù),用于客戶和服務(wù)器之間匹配請(qǐng)求和相應(yīng)消息;
Seconds :由用戶指定的時(shí)間,指開始地址獲取和更新進(jìn)行后的時(shí)間;
Flags :從0-15bits ,最左一bit 為1時(shí)表示server 將以廣播方式傳送封包給 client ,其余尚未使用;
Ciaddr :用戶IP 地址;
Yiaddr :服務(wù)器分配給客戶的IP 地址;
Siaddr :用于bootstrap 過(guò)程中的IP 地址;(服務(wù)器的IP 地址)
Giaddr :轉(zhuǎn)發(fā)代理(網(wǎng)關(guān))IP 地址;
Chaddr :client 的硬件地址;
Sname :可選server 的名稱,以0x00結(jié)尾;
File :?jiǎn)?dòng)文件名;

Options :,廠商標(biāo)識(shí),可選的參數(shù)字段
【抓包分析】
此次用的軟件是:wireshark (在宿舍內(nèi))
1. 發(fā)現(xiàn)階段:
2. 提供階段:

3. 選擇階段
4. 確認(rèn)階段:


【總結(jié)】

DNS 工作原理
