目錄
前言
一、DHCP概述
1、DHCP介紹
2、DHCP的優勢
(1)準確的IP配置
(2)減少IP地址沖突
(3)IP地址管理的自動化
(4)高效的變更管理
(5)降低客戶端的配置和維護成本
(6)集中管理
3、DHCP分配機制
(1)動態分配機制
(2)靜態分配機制
4、DHCP角色
(1)DHCP服務器
(2)DHCP客戶端
(3)DHCP中繼
5、DHCP作業原理
(1)同網段無中繼
(2)不同網段有中繼
6、DHCP客戶端更新租期
7、DHCP使用場景
二、DHCP配置
1、案例
2、配置程序
(1)AR1
(2)AR2
(3)L2-SW1
3、測驗
(1)PC1
(2)PC2
(3)PC3
(4)PC4
結語
前言
在IP網路中,每個連接Internet的設備都需要分配唯一的IP地址,DHCP使網路管理員能從中心結點監控和分配IP地址,當某臺計算機移到網路中的其它位置時,能自動收到新的IP地址,DHCP實作的自動化分配IP地址不僅降低了配置和部署設備的時間,同時也降低了發生配置錯誤的可能性,另外DHCP服務器可以管理多個網段的配置資訊,當某個網段的配置發生變化時,管理員只需要更新DHCP服務器上的相關配置即可,實作了集中化管理
一、DHCP概述
1、DHCP介紹
動態主機配置協議DHCP(Dynamic Host Configuration Protocol)是一種網路管理協議,用于集中對用戶IP地址進行動態管理和配置,DHCP于1993年10月成為標準協議,其前身是BOOTP協議,DHCP協議由RFC 2131定義,采用客戶端/服務器通信模式,由客戶端(DHCP Client)向服務器(DHCP Server)提出配置申請,DHCP Server為網路上的每個設備動態分配IP地址、子網掩碼、默認網關地址,域名服務器(DNS)地址和其他相關配置引數,以便可以與其他IP網路通信,DHCP協議采用UDP作為傳輸協議,DHCP客戶端發送請求訊息到DHCP服務器的68號埠,DHCP服務器回應應答訊息給DHCP客戶端的67號埠
2、DHCP的優勢
(1)準確的IP配置
IP地址配置引數必須準確,手工輸入時,很容易出錯,使用DHCP服務器可以最大程度地降低這種風險
(2)減少IP地址沖突
每個連接的設備都必須有一個IP地址,但是,每個地址只能使用一次,重復的地址將導致無法連接一個或兩個設備的沖突,當手動分配地址時,尤其是在存在大量僅定期連接的端點(例如移動設備)時,可能會發生這種情況,DHCP的使用可確保每個地址僅使用一次
(3)IP地址管理的自動化
如果沒有DHCP,網路管理員將需要手動分配和撤消地址,跟蹤哪個設備具有什么地址可能是徒勞的,因為幾乎無法理解設備何時需要訪問網路以及何時需要離開網路,DHCP允許將其自動化和集中化,因此網路專業人員可以從一個位置管理所有位置
(4)高效的變更管理
DHCP的使用使更改地址,范圍或端點變得非常簡單,例如,組織可能希望將其IP尋址方案從一個范圍更改為另一個范圍,DHCP服務器配置有新資訊,該資訊將傳播到新端點,同樣,如果升級并更換了網路設備,則不需要網路配置
(5)降低客戶端的配置和維護成本
DHCP易配置部署,對于非技術用戶,DHCP能夠將客戶端與配置相關的操作降至最低,并能夠降低遠程部署和維護成本
(6)集中管理
DHCP服務器可以管理多個網段的配置資訊,當某個網段的配置發生變化時,管理員只需要更新DHCP服務器上的相關配置即可
3、DHCP分配機制
(1)動態分配機制
通過DHCP為主機分配一個有使用期限(這個使用期限通常叫做租期)的IP地址,這種分配機制適用于主機需要臨時接入網路或者空閑地址數小于網路主機總數且主機不需要永久連接網路的場景
(2)靜態分配機制
網路管理員通過DHCP為指定的主機分配固定的IP地址,相比手工靜態配置IP地址,通過DHCP方式靜態分配機制避免人工配置發生錯誤,方便管理員統一維護管理
4、DHCP角色
(1)DHCP服務器
DHCP服務器負責從地址池中選擇IP地址分配至DHCP客戶端,還可以為DHCP客戶端提供其他網路引數,如默認網關地址、DNS服務器地址和WINS服務器地址,DHCP服務器可以接收處理來自本網段或跨網段由DHCP中繼轉發的DHCP請求報文
(2)DHCP客戶端
DHCP客戶端發送DHCP請求報文、通過BOOTP或DHCP協議請求獲取IP地址等網路引數的設備,例如,IP電話、PC、手機、無盤作業站等
(3)DHCP中繼
DHCP中繼負責轉發DHCP服務器和DHCP客戶端之間的DHCP報文,協助DHCP服務器向DHCP客戶端動態分配網路引數的設備
DHCP客戶端廣播發送請求報文(即目的IP地址為255.255.255.255),位于同一網段內的DHCP服務器能夠接收請求報文,如果DHCP客戶端和DHCP服務器不在同一個網段,DHCP服務器無法接收來自客戶端的請求報文,此時,需要通過DHCP中繼來轉發DHCP報文,不同于傳統的IP報文轉發,DHCP中繼接收到DHCP請求或應答報文后,會重新修改報文格式并生成一個新的DHCP報文再進行轉發
5、DHCP作業原理
只有跟DHCP客戶端在同一個網段的DHCP服務器才能收到DHCP客戶端廣播的DHCP DISCOVER報文,當DHCP客戶端與DHCP服務器不在同一個網段時,必須部署DHCP中繼來轉發DHCP客戶端和DHCP服務器之間的DHCP報文,在DHCP客戶端看來,DHCP中繼就像DHCP服務器;在DHCP服務器看來,DHCP中繼就像DHCP客戶端
(1)同網段無中繼
在沒有部署DHCP中繼的場景下,首次接入網路DHCP客戶端與DHCP服務器的報文互動程序,該程序稱為DHCP報文四步互動

第一步:發現階段
首次接入網路的DHCP客戶端不知道DHCP服務器的IP地址,為了學習到DHCP服務器的IP地址,DHCP客戶端以廣播方式發送DHCP DISCOVER報文(目的IP地址為255.255.255.255)給同一網段內的所有設備(包括DHCP服務器或中繼),DHCP DISCOVER報文中攜帶了客戶端的MAC地址(chaddr欄位)、需要請求的引數串列選項(Option55)、廣播標志位(flags欄位)等資訊
第二步:提供階段
與DHCP客戶端位于同一網段的DHCP服務器都會接收到DHCP DISCOVER報文,DHCP服務器選擇跟接收DHCP DISCOVER報文介面的IP地址處于同一網段的地址池,并且從中選擇一個可用的IP地址,然后通過DHCP OFFER報文發送給DHCP客戶端
通常,DHCP服務器的地址池中會指定IP地址的租期,如果DHCP客戶端發送的DHCP DISCOVER報文中攜帶了期望租期,服務器會將客戶端請求的期望租期與其指定的租期進行比較,選擇其中時間較短的租期分配給客戶端
DHCP服務器在地址池中為客戶端分配IP地址的順序如下:
- DHCP服務器上已配置的與客戶端MAC地址靜態系結的IP地址
- 客戶端發送的DHCP DISCOVER報文中Option50(請求IP地址選項)指定的地址
- 地址池內查找“Expired”狀態的IP地址,即曾經分配給客戶端的超過租期的IP地址
- 在地址池內隨機查找一個“Idle”狀態的IP地址
- 如果未找到可供分配的IP地址,則地址池依次自動回收超過租期的(“Expired”狀態)和處于沖突狀態(“Conflict”狀態)的IP地址,回收后如果找到可用的IP地址,則進行分配;否則,DHCP客戶端等待應答超時后,重新發送DHCP DISCOVER報文來申請IP地址
設備支持在地址池中排除某些不能通過DHCP機制進行分配的IP地址,例如,客戶端所在網段已經手工配置了地址為192.168.1.100/24的DNS服務器,DHCP服務器上配置的網段為192.168.1.0/24的地址池中需要將192.168.1.100的IP地址排除,不能通過DHCP分配此地址,否則,會造成地址沖突
為了防止分配出去的IP地址跟網路中其他客戶端的IP地址沖突,DHCP服務器在發送DHCP OFFER報文前通過發送源地址為DHCP服務器IP地址、目的地址為預分配出去IP地址的ICMP ECHO REQUEST報文對分配的IP地址進行地址沖突探測,如果在指定的時間內沒有收到應答報文,表示網路中沒有客戶端使用這個IP地址,可以分配給客戶端;如果指定時間內收到應答報文,表示網路中已經存在使用此IP地址的客戶端,則把此地址列為沖突地址,然后等待重新接收到DHCP DISCOVER報文后按照前面介紹的選擇IP地址的優先順序重新選擇可用的IP地址
此階段DHCP服務器分配給客戶端的IP地址不一定是最終確定使用的IP地址,因為DHCP OFFER報文發送給客戶端等待16秒后如果沒有收到客戶端的回應,此地址就可以繼續分配給其他客戶端,通過下面的選擇階段和確認階段后才能最終確定客戶端可以使用的IP地址
第三步:選擇階段
如果有多個DHCP服務器向DHCP客戶端回應DHCP OFFER報文,則DHCP客戶端一般只接收第一個收到的DHCP OFFER報文,然后以廣播方式發送DHCP REQUEST報文,該報文中包含客戶端想選擇的DHCP服務器識別符號(即Option54)和客戶端IP地址(即Option50,填充了接收的DHCP OFFER報文中yiaddr欄位的IP地址)
DHCP客戶端廣播發送DHCP REQUEST報文通知所有的DHCP服務器,它將選擇某個DHCP服務器提供的IP地址,其他DHCP服務器可以重新將曾經分配給客戶端的IP地址分配給其他客戶端
第四步:確認階段
當DHCP服務器收到DHCP客戶端發送的DHCP REQUEST報文后,DHCP服務器回應DHCP ACK報文,表示DHCP REQUEST報文中請求的IP地址(Option50填充的)分配給客戶端使用
DHCP客戶端收到DHCP ACK報文,會廣播發送免費ARP報文,探測本網段是否有其他終端使用服務器分配的IP地址,如果在指定時間內沒有收到回應,表示客戶端可以使用此地址,如果收到了回應,說明有其他終端使用了此地址,客戶端會向服務器發送DHCP DECLINE報文,并重新向服務器請求IP地址,同時,服務器會將此地址列為沖突地址,當服務器沒有空閑地址可分配時,再選擇沖突地址進行分配,盡量減少分配出去的地址沖突
當DHCP服務器收到DHCP客戶端發送的DHCP REQUEST報文后,如果DHCP服務器由于某些原因(例如協商出錯或者由于發送REQUEST過慢導致服務器已經把此地址分配給其他客戶端)無法分配DHCP REQUEST報文中Option50填充的IP地址,則發送DHCP NAK報文作為應答,通知DHCP客戶端無法分配此IP地址,DHCP客戶端需要重新發送DHCP DISCOVER報文來申請新的IP地址
(2)不同網段有中繼
有DHCP中繼的場景中,首次接入網路的DHCP客戶端和DHCP服務器的作業原理與無中繼場景時DHCP客戶端首次接入網路的作業原理相同,主要差異是DHCP中繼在DHCP服務器和DHCP客戶端之間轉發DHCP報文,以保證DHCP服務器和DHCP客戶端可以正常互動

第一步:發現階段
DHCP中繼接收到DHCP客戶端廣播發送的DHCP DISCOVER報文后,進行如下處理:
- 檢查DHCP報文中的hops欄位,如果大于16,則丟棄DHCP報文;否則,將hops欄位加1(表明經過一次DHCP中繼),并繼續下面的操作
- 檢查DHCP報文中的giaddr欄位,如果是0,將giaddr欄位設定為接收DHCP DISCOVER報文的介面IP地址,如果不是0,則不修改該欄位,繼續下面的操作
- 將DHCP報文的目的IP地址改為DHCP服務器或下一跳中繼的IP地址,源地址改為中繼連接客戶端的介面地址,通過路由轉發將DHCP報文單播發送到DHCP服務器或下一跳中繼
如果DHCP客戶端與DHCP服務器之間存在多個DHCP中繼,后面的中繼接收到DHCP DISCOVER報文的處理流程同前面所述
第二步:提供階段
DHCP服務器接收到DHCP DISCOVER報文后,選擇與報文中giaddr欄位為同一網段的地址池,并為客戶端分配IP地址等引數,然后向giaddr欄位標識的DHCP中繼單播發送DHCP OFFER報文
DHCP中繼收到DHCP OFFER報文后,會進行如下處理:
- 檢查報文中的giaddr欄位,如果不是介面的地址,則丟棄該報文;否則,繼續下面的操作
- DHCP中繼檢查報文的廣播標志位,如果廣播標志位為1,則將DHCP OFFER報文廣播發送給DHCP客戶端;否則將DHCP OFFER報文單播發送給DHCP客戶端
第三步:選擇階段
中繼接收到來自客戶端的DHCP REQUEST報文的處理程序同無中繼場景下的選擇階段
第四步:確認階段
中繼接收到來自服務器的DHCP ACK報文的處理程序同無中繼場景下的確認階段
6、DHCP客戶端更新租期
DHCP服務器采用動態分配機制給客戶端分配IP地址時,分配出去的IP地址有租期限制,DHCP客戶端向服務器申請地址時可以攜帶期望租期,服務器在分配租期時把客戶端期望租期和地址池中租期配置比較,分配其中一個較短的租期給客戶端,租期到期或者客戶端下線釋放地址后,服務器會識訓該IP地址,識訓的IP地址可以繼續分配給其他客戶端使用,這種機制可以提高IP地址的利用率,避免客戶端下線后IP地址繼續被占用,如果DHCP客戶端希望繼續使用該地址,需要更新IP地址的租期(如延長IP地址租期)

- 當租期達到50%(T1)時,DHCP客戶端會自動以單播的方式向DHCP服務器發送DHCP REQUEST報文,請求更新IP地址租期,如果收到DHCP服務器回應的DHCP ACK報文,則租期更新成功(即租期從0開始計算);如果收到DHCP NAK報文,則重新發送DHCP DISCOVER報文請求新的IP地址
- 當租期達到87.5%(T2)時,如果仍未收到DHCP服務器的應答,DHCP客戶端會自動以廣播的方式向DHCP服務器發送DHCP REQUEST報文,請求更新IP地址租期,如果收到DHCP服務器回應的DHCP ACK報文,則租期更新成功(即租期從0開始計算);如果收到DHCP NAK報文,則重新發送DHCP DISCOVER報文請求新的IP地址
- 如果租期時間到時都沒有收到服務器的回應,客戶端停止使用此IP地址,重新發送DHCP DISCOVER報文請求新的IP地址
客戶端在租期時間到之前,如果用戶不想使用分配的IP地址(例如客戶端網路位置需要變更),會觸發DHCP客戶端向DHCP服務器發送DHCP RELEASE報文,通知DHCP服務器釋放IP地址的租期,DHCP服務器會保留這個DHCP客戶端的配置資訊,將IP地址列為曾經分配過的IP地址中,以便后續重新分配給該客戶端或其他客戶端,客戶端可以通過發送DHCP INFORM報文向服務器請求更新配置資訊
7、DHCP使用場景
DHCP通常被應用在大型的局域網路環境中,主要作用是集中的管理、分配IP地址,使網路環境中的主機動態的獲得IP地址、Gateway地址、DNS服務器地址等資訊,并能夠提升地址的使用率
二、DHCP配置
1、案例

2、配置程序
(1)AR1



(2)AR2

(3)L2-SW1

3、測驗
(1)PC1


(2)PC2


(3)PC3


(4)PC4


結語
相比手工靜態配置IP地址,通過DHCP方式靜態分配機制避免人工配置發生錯誤,方便管理員統一維護管理,除此以外,DHCP還可以為網路主機提供除IP地址以外的網路引數,例如DNS服務器的IP地址、路由資訊、網關地址等
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/356776.html
標籤:其他
