CH12 DHCP協定

Download Report

Transcript CH12 DHCP協定

CHAPTER
12
DHCP協定
► 12-1
DHCP簡介
► 12-2 DHCP封包格式
► 12-3 DHCP工作原理
► 12-4 DHCP擷取封包的分析
12-1 DHCP簡介
► DHCP是Dynamic
Host Configuration Protocol之縮寫,
稱 為 動 態 主 機 組 態 協 定 , 在 它 之 前 是
BOOTP(Bootstrap)協定。
電腦網路概論
12-2 DHCP封包格式
電腦網路概論
►
OP (OP Code)佔8bitz s
此值等於1時,表示這個封包是從客戶端送至伺服端;若為2,
表示此封包是由伺服端送至客戶端。
► HTYPE (Hardware Type)佔8bits
代表所使用的網路類型。例如:1代表乙太網路;16代表
ATM網路(可參考RFC 1700)。
► HLEN (Hardware Address Length)佔8bits
MAC位址的長度,以乙太網路為例,其欄位值為6(代表
48bits)。
► HOPS佔8bits
若封包在同一網路內傳送,此欄位值設定為0。若需透過
DHCP Relay Agent才能將客戶端的DHCP要求轉送至DHCP
伺服器時,則將此欄位值加1。
► TRANSACTION ID(簡寫Xid)佔32bits
客戶端送出封包時會隨機被挑選到的代碼值,一旦伺服器收
到封包,就以此代碼值回覆,客戶端也是藉由此數值分辨出
伺服器到底是回覆哪一個封包。
電腦網路概論
► SECONDS佔16bits
客戶端啟動或更新所花費的時間(秒)。
► FLAGS佔16bits
最左邊「B」位元為1時,表示伺服器以廣播方式傳
送封包給客戶端,其餘保留待使用填入0,如圖122中的「MBZ(Must Be Zero)」所示。
電腦網路概論
► ciaddr
(Client IP Address)佔32bits
目前客戶端所在的IP位址。
► yiaddr (Your IP Address)佔32bitz s
伺服端會將配置給客戶端的IP位址填到回覆訊息
( 指DHCPOFFER、DHCPACK)內。
► siaddr(Server IP Address)佔32bits
伺服端回覆DHCPDISCOVER封包時,會將自己的
IP位址填入此欄位,接下來,DHCPREQUEST在客
戶 端 送 出 之 前 , 此 位 址 會 填 入 Option 欄 位 中 的
Server identifier欄位內。
► giaddr (Relay IP Address)佔32bits
若伺服器和客戶端需透過DHCP Relay Agent來進行
跨網域封包的交換時,Relay Agent在此欄位填入自
己的IP位址,否則填入0。
電腦網路概論
► chaddr
(Client Ethernet Address)佔16bytes
客戶端的硬體位址。
► sname(Server Host Name)佔64bytes
為DHCP伺服器的名稱。
► file (Boot File Name)佔128bytes
當客戶端為一部無硬碟機器,在開機時才會用到。
此欄將指出開機程式名稱,以便讓客戶端利用檔案
傳輸工具下載此程式,完成開機。
► Options(長度可變,最大值為312bytes)
DHCP的選項非常多,請查閱RFC2131,此欄將指
出先前提過的租約期限等重要資訊,茲以表12-1及
表12-2列出DHCP伺服端及客戶端使用的Options。
電腦網路概論
►
Options相關欄位如下說明:
1. Requested IP Address : 指 出 當 客 戶 端 送 出
DHCPDISCOVER封包希望獲得特定IP位址,或更新IP租
約時所填入的IP位址(參考RFC 2132)。它的代碼(Code)是
50。
2. IP Address Lease Time:指出IP位址租約期限。它的代碼
是51。
3. Use file/sname fields : Option 欄 位 規 定 的 最 大 長 度 為
312bytes,當資料超過此值時,可以延伸去借用「sname」
和「file」這兩個欄位。欄位值為1時,代表借用「file」
欄;欄位值為2時,代表借用「sname」欄;欄位值為3時,
代表兩個欄位都借用。它的代碼是52。
4. DHCP message type:指出所使用的訊息類型,以及編號
1 至 8 所 代 表 的 訊 息 , 如 表 12-3 所 示 。 注 意 :
DHCPINFORM訊息是假設客戶端事先已透過一些方法得
到IP位址(例如手動設定),但其他相關的參數則必須使用
DHCP,如圖12-3的工作流程步驟。它的代碼是53。
電腦網路概論
電腦網路概論
5. Parameter request list:客戶端要求伺服器提供所需要的組
態參數。它的代碼是55。
6. Message:若伺服器接收到不正確的Requested IP Address,
則客戶端送出的 DHCPREQUEST訊息會使伺服器回覆
DHCPNAK訊息給客戶端的管理者,以告知有錯誤。它
的代碼是56。
7. Client identifier:為客戶端的MAC位址,伺服器利用此獨
一無二的識別資訊可以瞭解是哪一部客戶端發出租用IP
位址的要求。它的代碼是61。
8. Server identifier : 為 伺 服 器 的 IP 位 址 , 使 用 於
DHCPOFFER和DHCPREQUEST和DHCPACK訊息內。由
於客戶端在還沒有取得IP租約時,所有的封包都是以廣
播方式傳送出去,此欄位可被用來辨識哪一部DHCP伺服
器是被挑選出來的。它的代碼是54。
電腦網路概論
9. Vendor class identifier:當一部DHCP伺服器送出
DHCPOFFER訊息至客戶端時,此識別資訊包含在
DHCPOFFER訊息內,其可以協助客戶端選擇所接
受 的 DHCPOFFER , 像 客 戶 端 傳 送
DHCPDISCOVER訊息時,其隨機挑選的Xid值會送
到伺服器,一旦伺服器收到訊息,就將Xid值加至
DHCPOFFER訊息內,並且將此DHCPOFFER訊息
送給所要求的客戶端。它的代碼是60。
10. Maximum DHCP message size:客戶端應該包含此
Options欄以便讓伺服器知道它自己可以送出DHCP
封包的最大長度,當訊息長度超過Options所容忍的
最大值,如在「file/sname」欄位所述,就可以延伸
去借用「file」和「sname」這兩個欄位。它的代碼
是57。
電腦網路概論
12-3 DHCP
工作原理
電腦網路概論
12-4 DHCP擷取封包的分析
電腦網路概論
電腦網路概論
電腦網路概論
電腦網路概論
電腦網路概論
電腦網路概論
電腦網路概論
電腦網路概論
電腦網路概論
電腦網路概論
► Options擷取封包的分析
電腦網路概論
電腦網路概論
電腦網路概論
電腦網路概論
► 更新IP位址租約擷取封包的分析
電腦網路概論
電腦網路概論
電腦網路概論
電腦網路概論
電腦網路概論
► 撤銷IP位址租約擷取封包的分析
電腦網路概論
電腦網路概論
電腦網路概論
電腦網路概論