路由器IP指派DHCP和BOOTP不同之處
目前路由器進(jìn)行IP指派主要有DHCP和BOOTP,DHCP也就是動(dòng)態(tài)主機(jī)分配協(xié)議,它的前身是BOOTP,BOOTP原本是用于無(wú)磁盤(pán)主機(jī)連接的網(wǎng)絡(luò)上面的,以下分析這兩種方式的不同之處。
一、DHCP可以說(shuō)是BOOTP的增強(qiáng)版本,它分為兩個(gè)部份:一個(gè)是服務(wù)器端,而另一個(gè)是客戶端。所有的IP網(wǎng)絡(luò)設(shè)定數(shù)據(jù)都由DHCP服務(wù)器集中管理,并負(fù)責(zé)處理客戶端的DHCP要求;
而客戶端則會(huì)使用從服務(wù)器分配下來(lái)的IP環(huán)境數(shù)據(jù)。比較起B(yǎng)OOTP,DHCP透過(guò)"租約"的概念,有效且動(dòng)態(tài)的分配客戶端的TCP/IP設(shè)定,而且,作為兼容考慮,DHCP也完全照顧了BOOTP Client的需求。
二、必須至少有一臺(tái)DHCP工作在網(wǎng)絡(luò)上面,它會(huì)監(jiān)聽(tīng)網(wǎng)絡(luò)的DHCP請(qǐng)求,并與客戶端搓商TCP/IP的設(shè)定環(huán)境。它提供兩種IP定位方式:
1、自動(dòng)分配,其情形是:一旦DHCP客戶端第一次成功的從DHCP服務(wù)器端租用到IP地址之后,就永遠(yuǎn)使用這個(gè)地址。
2、動(dòng)態(tài)分配,當(dāng)DHCP第一次從HDCP服務(wù)器端租用到IP地址之后,并非永久的使用該地址,只要租約到期,客戶端就得釋放(release)這個(gè)IP地址,以給其它工作站使用。當(dāng)然,客戶端可以比其它主機(jī)更優(yōu)先的更新(renew)租約,或是租用其它的IP地址。
三、DHCP除了能動(dòng)態(tài)的設(shè)定IP地址之外,還可以將一些IP保留下來(lái)給一些特殊用途的機(jī)器使用,它可以按照硬件地址來(lái)固定的分配IP地址,這樣可以給您更大的設(shè)計(jì)空間。
同時(shí),DHCP還可以幫客戶端指定router、netmask、DNS Server、WINS Server、等等項(xiàng)目,您在客戶端上面,除了將DHCP選項(xiàng)打勾之外,幾乎無(wú)需做任何的IP環(huán)境設(shè)定。
四、尋找Server,當(dāng)DHCP客戶端第一次登錄網(wǎng)絡(luò)的時(shí)候,也就是客戶發(fā)現(xiàn)本機(jī)上沒(méi)有任何IP數(shù)據(jù)設(shè)定,它會(huì)向網(wǎng)絡(luò)發(fā)出一個(gè)DHCP DISCOVER封包。
因?yàn)榭蛻舳诉€不知道自己屬于哪一個(gè)網(wǎng)絡(luò),所以封包的來(lái)源地址會(huì)為0.0.0.0,而目的地址則為255.255.255.255,然后再附上DHCP discover的信息,向網(wǎng)絡(luò)進(jìn)行廣播。
五、提供IP租用地址。當(dāng)DHCP 服務(wù)器監(jiān)聽(tīng)到客戶端發(fā)出的 DHCP discover 廣播后,它會(huì)從那些還沒(méi)有租出的地址范圍內(nèi),選擇最前面的空置IP,連同其它TCP/IP設(shè)定,響應(yīng)給客戶端一個(gè)DHCP OFFER封包,由于客戶端在開(kāi)始的時(shí)候還沒(méi)有IP地址,所以在其DHCP discover封包內(nèi)會(huì)帶有其MAC地址信息。
六、接受IP租約。如果客戶端收到網(wǎng)絡(luò)上多臺(tái)DHCP服務(wù)器的響應(yīng),只會(huì)挑選其中一個(gè)DHCP offer而已,并且會(huì)向網(wǎng)絡(luò)發(fā)送一個(gè)DHCP request廣播封包,告訴所有DHCP服務(wù)器它將指定接受哪一臺(tái)服務(wù)器提供的IP地址,客戶端還會(huì)向路由器發(fā)送一個(gè)ARP封包,查詢網(wǎng)絡(luò)上面有沒(méi)有其它機(jī)器使用該IP地址;
如果發(fā)現(xiàn)該IP已經(jīng)被占用,客戶端則會(huì)送出一個(gè)DHCPDECLINE封包給DHCP服務(wù)器,拒絕接受其DHCP offer,并重新發(fā)送DHCP discover信息。
七、當(dāng)DHCP服務(wù)器接收到客戶端的DHCP request之后,會(huì)向客戶端發(fā)出一個(gè)DHCPACK響應(yīng),以確認(rèn)IP租約的正式生效,也就結(jié)束了一個(gè)完整的DHCP工作過(guò)程,一旦DHCP客戶端成功地從服務(wù)器哪里取得DHCP租約之后,除非其租約已經(jīng)失效并且IP地址也重新設(shè)定回0.0.0.0,否則就無(wú)需再發(fā)送DHCP discover信息了,而會(huì)直接使用已經(jīng)租用到的IP地址向之前之DHCP服務(wù)器發(fā)出DHCP request信息,DHCP服務(wù)器會(huì)盡量讓客戶端使用原來(lái)的IP地址,如果沒(méi)問(wèn)題的話,直接響應(yīng)DHCPack來(lái)確認(rèn)則可。
從前面描述的過(guò)程中,我們不難發(fā)現(xiàn):DHCDISCOVER是以廣播方式進(jìn)行的,其情形只能在同一網(wǎng)絡(luò)之內(nèi)進(jìn)行,因?yàn)閞outer是不會(huì)將廣播傳送出去的。但如果DHCP服務(wù)器安設(shè)在其它的網(wǎng)絡(luò)上面呢?
由于DHCP客戶端還沒(méi)有IP環(huán)境設(shè)定,所以也不知道Router地址,而且有些Router也不會(huì)將DHCP廣播封包傳遞出去,因此這情形下DHCP DISCOVER是永遠(yuǎn)沒(méi)辦法抵達(dá)DHCP服務(wù)器那端的,當(dāng)然也不會(huì)發(fā)生OFFER及其它動(dòng)作了。