時間:2015/6/28來源:IT貓撲網(wǎng)作者:網(wǎng)管聯(lián)盟我要評論(0)
對于DHCP協(xié)議我們總是有很多內(nèi)容需要介紹。在之前我們已經(jīng)對概念、結(jié)構(gòu)和工作流程有了一定的了解了。這里,我們將要在流程中補充一部分知識,另外在對DHCP協(xié)議的封包格式進行重點講述。
租約確認
當 DHCP服務(wù)器接收到客戶端的 DHCPrequest 之后,會向客戶端發(fā)出一個 DHCPACK 響應(yīng),以確認IP租約的正式生效,也就結(jié)束了一個完整的 DHCP工作過程。
DHCP發(fā)放流程第一次登錄之后: 一旦 DHCP客戶端成功地從服務(wù)器哪里取得 DHCP租約之后,除非其租約已經(jīng)失效并且IP地址也重新設(shè)定回 0.0.0.0 ,否則就無需再發(fā)送 DHCPdiscover 信息了,而會直接使用已經(jīng)租用到的IP地址向之前之 DHCP服務(wù)器發(fā)出 DHCPrequest 信息,DHCP服務(wù)器會盡量讓客戶端使用原來的IP地址,如果沒問題的話,直接響應(yīng) DHCPack 來確認則可。如果該地址已經(jīng)失效或已經(jīng)被其它機器使用了,服務(wù)器則會響應(yīng)一個 DHCPNACK 封包給客戶端,要求其從新執(zhí)行 DHCPdiscover。
至于IP的租約期限卻是非?季康,并非如我們租房子那樣簡單, 以 NT 為例子:DHCP工作站除了在開機的時候發(fā)出 DHCPrequest 請求之外,在租約期限一半的時候也會發(fā)出 DHCPrequest ,如果此時得不到 DHCP服務(wù)器的確認的話,工作站還可以繼續(xù)使用該IP;當租約期過了87.5%時,如果客戶機仍然無法與當初的DHCP服務(wù)器聯(lián)系上,它將與其它DHCP服務(wù)器通信。如果網(wǎng)絡(luò)上再沒有任何DHCP協(xié)議服務(wù)器在運行時,該客戶機必須停止使用該IP地址,并從發(fā)送一個Dhcpdiscover數(shù)據(jù)包開始,再一次重復(fù)整個過程。要是您想退租,可以隨時送出 DHCPRELEASE 命令解約,就算您的租約在前一秒鐘才獲得的。
跨網(wǎng)絡(luò)的 DHCP運作 從前面描述的過程中,我們不難發(fā)現(xiàn):DHCPDISCOVER 是以廣播方式進行的,其情形只能在同一網(wǎng)絡(luò)之內(nèi)進行,因為 router 是不會將廣播傳送出去的。但如果 DHCP服務(wù)器安設(shè)在其它的網(wǎng)絡(luò)上面呢?由于 DHCP客戶端還沒有IP環(huán)境設(shè)定,所以也不知道 Router 地址,而且有些 Router 也不會將 DHCP廣播封包傳遞出去,因此這情形下 DHCPDISCOVER 是永遠沒辦法抵達 DHCP服務(wù)器那端的,當然也不會發(fā)生 OFFER 及其它動作了。要解決這個問題,我們可以用 DHCPAgent (或 DHCPProxy )主機來接管客戶的 DHCP請求,然后將此請求傳遞給真正的 DHCP服務(wù)器,然后將服務(wù)器的回復(fù)傳給客戶。這里,Proxy 主機必須自己具有路由能力,且能將雙方的封包互傳對方。
若不使用 Proxy,您也可以在每一個網(wǎng)絡(luò)之中安裝 DHCP服務(wù)器,但這樣的話,一來設(shè)備成本會增加,而且,管理上面也比較分散。當然嘍,如果在一個十分大型的網(wǎng)絡(luò)中,這樣的均衡式架構(gòu)還是可取的。端視您的實際情況而定了。
DHCP協(xié)議封包格式
以下為各字段的簡要說明:
OP 若是 client 送給 server 的封包,設(shè)為 1 ,反向為 2 。
HTYPE 硬件類別,Ethernet 為 1 。
HLEN 硬件地址長度, Ethernet 為 6 。
HOPS 若封包需經(jīng)過 router 傳送,每站加 1 ,若在同一網(wǎng)內(nèi),為 0 。
TRANSACTION ID DHCPREQUEST 時產(chǎn)生的數(shù)值,以作 DHCPREPLY 時的依據(jù)。
SECONDS Client 端啟動時間(秒)。
FLAGS 從 0 到 15 共 16 bits ,最左一 bit 為 1 時表示 server 將以廣播方式傳送封包給 client ,其余尚未使用。
ciaddr 要是 client 端想繼續(xù)使用之前取得之IP地址,則列于這里。
yiaddr 從 server 送回 client 之DHCPOFFER與 DHCPACK 封包中,此欄填寫分配給 client 的IP地址。
siaddr 若 client 需要透過網(wǎng)絡(luò)開機,從 server 送出之 DHCPOFFER、DHCPACK、DHCPNACK 封包中,此欄填寫開機程序代碼所在 server 之地址。
giaddr 若需跨網(wǎng)域進行 DHCP協(xié)議發(fā)放,此欄為 relay agent 的地址,否則為 0 。 chaddr Client 之硬件地址。 sname Server 之名稱字符串,以 0x00 結(jié)尾。 file 若 client 需要透過網(wǎng)絡(luò)開機,此欄將指出開機程序名稱,稍后以 TFTP 傳送。 options 允許廠商定議選項(Vendor-Specific Area),以提供更多的設(shè)定信息(如:Netmask、Gateway、DNS、等等)。其長度可變,同時可攜帶多個選項,每一選項之第一個 byte 為信息代碼,其后一個 byte 為該項數(shù)據(jù)長度,最后為項目內(nèi)容。 CODE LEN VALUE 此字段完全兼容 BOOTP,同時擴充了更多選項。其中,DHCP封包可利用編碼為 0x53 之選項來設(shè)定封包類別: 項值 類別 1 DHCPDISCOVER 2DHCPOFFER3 DHCPREQUEST 4 DHCPDECLIENT 5 DHCPACK 6 DHCPNACK 7 DHCPRELEASE DHCP協(xié)議的選項非常多,有空請查閱 RFC 或相關(guān)文獻,并好好理解,這里不再敘述了。
關(guān)鍵詞標簽:DHCP協(xié)議
相關(guān)閱讀
熱門文章 路由器地址大全-各品牌路由設(shè)置地址各品牌的ADSL與路由器出廠默認IP、帳號、密Nslookup命令詳解-域名DNS診斷站長裝備:十大網(wǎng)站管理員服務(wù)器工具軟件
人氣排行 各品牌的ADSL與路由器出廠默認IP、帳號、密碼路由器地址大全-各品牌路由設(shè)置地址騰達路由器怎么設(shè)置?騰達路由器設(shè)置教程ADSL雙線負載均衡設(shè)置詳細圖文教程路由表說明(詳解route print)網(wǎng)管員實際工作的一天用此方法讓2M帶寬下載速度達到250K/S左右網(wǎng)管必會!了解交換機控制端口流量