Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 14 DHCP.

Similar presentations


Presentation on theme: "Chapter 14 DHCP."— Presentation transcript:

1 Chapter 14 DHCP

2 本章提要 14-1 DHCP 基礎 14-2 DHCP 運作流程 14-3 DHCP 封包格式 14-4 擷取 DHCP 封包

3 DHCP 在 TCP / IP 的網路中, 每一台電腦都必須有至少一個 IP 位址, 而且這個 IP 位址必須是唯一的, 不可和網路中其它電腦重複!因此, 對於網路管理員而言, 如何確保每台電腦 IP 位址的唯一性, 實在是讓人傷透腦筋。另外, 如果要變更 TCP / IP 的相關設定時, 也必須到每台電腦去修改。如果網路中只有一、二十台電腦, 這尚可接受;但若是上百台電腦的網路, 要如何維護每台電腦的 TCP / IP 設定, 絕對是個令人頭疼的問題。

4 DHCP DHCP(Dynamic Host Configuration Protocol, 動態主機設定協定)的出現, 可以有效解決這個問題。DHCP 可以動態的分配 IP 位址給每台網路上的電腦, 而且也能指定 TCP / IP 的其它參數, 大幅減少網路管理員的負擔。

5 14-1 DHCP 基礎 DHCP 原理 採用 DHCP 服務的優點

6 DHCP 原理 當 DHCP 用戶端開機時, 會透過廣播方式尋找 DHCP 伺服器並要求指派 IP 位址, 這時伺服器就會傳回一個尚未被使用的 IP 位址, 同時也可以將相關參數一併傳送給用戶端。

7 DHCP 原理

8 DHCP 原理 當 DHCP 用戶端獲得一個 IP 位址時, 並不能永久使用(除非 DHCP 伺服器有特別設定)。在正常的情況下, 每個分配給 DHCP 用戶端的 IP 位址都有使用期限, 這個期限就是 IP 位址的租約期限(Lease Time)。租約期限長短是依各家的 DHCP 伺服器而異。

9 採用 DHCP 服務的優點 DHCP 服務的用途如同本章一開始所言, 可以自動的分配 IP 位址給予 DHCP 用戶端, 但其實另一項更大的好處在於方便管理。 基於以下幾點原因, 就可以很清楚的了解在網路中佈署 DHCP 伺服器, 絕對可以讓我們在管理上有事半功倍之效果: 不易出錯 易於維護 用戶端不需要繁瑣的設定 IP 位址可重複使用

10 不易出錯 因為 DHCP 伺服器每出租一個 IP 位址時, 都會在資料庫中建立一筆相對應的租用資料, 因此幾乎不可能發生 IP 重複租用的狀況。 而且這個出租、登記作業, 不需要人力介入, 更可以避免人為的錯誤(例如:輸入錯誤)。

11 易於維護 DHCP 不但可以自動分配 IP 位址, 而且還可以指定各項 TCP / IP 參數(例如:DNS 伺服器和預設閘道的 IP 位址), 因此, 當我們要變更相關的參數時, 只要從 DHCP 伺服器上修改, 就可以讓所有 DHCP 用戶端都自動更新, 大幅節省維護成本。

12 用戶端不需要繁瑣的設定 只要 DHCP 伺服器設定妥當, 用戶端只需設定為使用 DHCP 分配 IP 位址, 即可完成 TCP / IP 的設定, 快速又方便。

13 IP 位址可重複使用 每當 DHCP 用戶端開機時, DHCP 伺服器便會分配 1 個 IP 位址給予使用, 當用戶端租約到期或取消租約後, 伺服器又可以將此 IP 位址分配給其他的 DHCP 用戶端使用, 能有效的節省 IP 位址的用量。

14 14-2 DHCP 運作流程 從 DHCP 用戶端向 DHCP 伺服器要求租用 IP 位址開始, 直到完成用戶端的 TCP / IP 設定, 簡單來說是由 4 個階段所組成:

15 DHCP 運作流程

16 DHCP 運作流程 以下將逐一說明運作流程中的 4 個步驟: 1.要求租用 IP 位址 2.提供可租用的 IP 位址 3.確認 IP 租約

17 1.要求租用 IP 位址 當我們將電腦設定成 DHCP 用戶端後, 第一次啟動電腦時即會進入此階段。首先由 DHCP 用戶端廣播一個 DHCPDiscover (尋找)封包, 要求任一部 DHCP 伺服器提供 IP 租約。

18 2.提供可租用的 IP 位址 因為 DHCPDiscover 是以廣播方式送出, 所以網路上所有的 DHCP 伺服器都會收到此封包, 而每一台 DHCP 伺服器收到此封包時, 都會從本身所管理的 IP 位址中, 找出一個可用的 IP 位址, 設定租約期限後記錄在 DHCPOffer(提議)封包, 再以廣播方式送給用戶端。

19 3.確認 IP 租約 因為每一台 DHCP 伺服器都會送出 DHCPOffer 封包, 因此 DHCP 用戶端會收到多個 DHCPOffer 封包, 用戶端預設會回應最先收到的 DHCPOffer 封包, 其他陸續收到的 DHCPOffer 封包則不予理會。

20 確認 IP 租約 用戶端接著以廣播方式送出 DHCPRequest(要求)封包, 除了向選定的伺服器申請租用 IP 位址之外, 也讓其他曾送出 DHCPOffer 封包、但未雀屏中選的伺服器知道:「你們所提供的 IP 位址落選了。不必為我保留, 可以租用給其它的用戶端啦!」

21 確認 IP 租約 不過, 如果 DHCP 用戶端不接受 DHCPOffer 封包所提供的參數, 就會廣播一個 DHCPDecline(拒絕)封包, 告知伺服器:「我不接受你建議的 IP 位址(或租用期限…等)。」然後回到第一階段, 再度廣播 DHCPDiscover 封包, 重新執行整個取得租約的流程。

22 確認 IP 租約 用戶端為何會不同意呢?最常見的原因是 IP 位址重複。
因為用戶端收到伺服器建議的 IP 位址時, 通常會以 ARP 協定檢查該位址是否已被使用, 倘若有其它粗心的使用者, 手動設定 IP 位址時也佔用了相同的位址, 用戶端當然就要拒絕租用此 IP 位址。

23 4.同意 IP 租約 當被選中的 DHCP 伺服器收到 DHCPRequest 封包時, 假如同意用戶端的租用要求, 便會廣播 DHCPAck(承認)封包給 DHCP 用戶端, 告知可以將設定值寫入 TCP / IP 中, 並開始計算租用的時間。

24 同意 IP 租約 當然, 可能也會出現伺服器不同意的狀況, 倘若 DHCP 伺服器不能給予 DHCP 用戶端所要求的資訊(例如:要求租用的 IP 已被佔用, 或者不能給予用戶端所要求的租約期限等), 則會發出 DHCPNack(拒絕承認)封包。 當用戶端收到 DHCPNack 封包時, 便直接回到第一階段, 重新執行整個流程。

25 更新 IP 位址的租約 DHCP 伺服器收到用戶端要求更新租約後, 通常以廣播方式送出 DHCPAck 封包, 同意用戶端更新租約:

26 更新租約 取得 IP 租約後, DHCP 用戶端必須定期更新(Renew)租約, 否則當租約到期, 就不能再使用此 IP 位址。
依照 RFC 2131 的敘述, 每當租用時間超過租約期限的 1 / 2 (50 %)及 7 / 8(87.5 %)時, 用戶端就必須發出 DHCPRequest 封包, 向DHCP 伺服器要求更新租約。但是各家廠商在設計產品時, 未必遵守 RFC 2131 的建議, 因此每種產品的更新租約期限可能不同。

27 更新租約 此外還要注意一點, 更新租約時是以單點傳送(Unicast)方式發出 DHCPRequest 封包, 也就是會指名那一台 DHCP 伺服器應該要處理此封包, 和前面確認 IP 租約階段中, 使用廣播方式發送 DHCPRequest 封包是不同的! 以 Windows 2000 DHCP 伺服器為例, 預設的租約期限為 8 天, 當租用時間超過 4 天時, DHCP 用戶端會向 DHCP 伺服器要求續約, 將租約期限再恢復為原本的期限(也就是 8 天)。

28 更新租約 若不幸在重試 3 次之後, 依然無法取得 DHCP 伺服器的回應(也就是無法和 DHCP 伺服器取得連繫), 則 DHCP 用戶端將會繼續使用此租約, 直到租用時間超過 7 天時, 會再度向 DHCP 伺服器要求續約, 若仍然無法取得續約的訊息(一樣會重試 3 次), 則 DHCP 用戶端改以廣播方式送出 DHCPRequest 封包, 要求 DHCP 的服務。

29 更新租約 當然, 用戶端也可以在租約期限內, 手動更新租約。在 Windows NT / 2000 / XP 中, 手動更新租約的方式是在命令提示字元模式下, 執行 ipconfig / renew 命令即可進行更新。

30 撤銷租約 以 Windows 2000 / XP 為例, 除了在重新啟動、關機均會送出 DHCPRelease 封包撤銷租約外。在命令提示字元模式下, 執行 ipconfig / release 命令, 也會送出 DHCPRelease 封包撤銷租約。 但如果我們的 Windows XP 電腦安裝了多張網路卡, 直接執行 ipconfig / release 命令時, 預設是會撤銷所有網路卡的 IP 租約。

31 撤銷租約 若只想要撤銷特定網路卡的 IP 租約, 則請執行 ipconfig / release 連線名稱命令。連線名稱指的是我們在網路連線視窗中看到的連線名稱, 例如:『區域連線』、『區域連線 2 』等名稱。

32 DHCP 與UDP DHCP 封包在傳輸層(Transport Layer) 是採用 UDP 協定, 而當用戶端傳送給封包給伺服器時, 採用的是 UDP 67 Port, 從伺服器傳送給用戶端則是使用 UDP 68 Port。

33 DHCP Relay Agent 的用途 在第 3 章介紹路由器時曾提到, 路由器會阻隔廣播封包。所以若 DHCP 用戶端和 DHCP 伺服器分別位於路由器 2 邊的區域網路時, DHCP 用戶端要尋找伺服器的廣播封包將會被路由器擋住, 導致用戶端無法取得 DHCP 伺服器的服務。 解決方法之一就是在路由器 2 邊都架設 DHCP 伺服器;若不想多架設一台 DHCP 伺服器, 則可使用 Relay Agent(轉送代理伺服器)的方式。

34 DHCP Relay Agent 的用途 Relay Agent 會記錄路由器另一端的 DHCP 伺服器的 IP 位址, 當 Relay Agent 發現區域網路中有 DHCPDiscover 或 DHCPRequest 廣播封包時, 它會收下該封包, 並將封包的目的位址改成 DHCP 伺服器的 IP 位址重新送出, 此修改過的封包將可通過路由器到達 DHCP 伺服器, 讓 DHCP 伺服器可提供其服務。

35 DHCP Relay Agent 的用途


Download ppt "Chapter 14 DHCP."

Similar presentations


Ads by Google