DHCP 中繼(DHCP Relay)是一種允許跨網段分配 IP 地址的技術,無需在每個子網部署 DHCP 服務器。以下是其原理和配置方法的詳細說明:
一、核心原理
1. 為什么需要 DHCP 中繼?
- 問題:DHCP 客戶端通過廣播(255.255.255.255)尋找服務器,但廣播無法跨網段傳播。
- 解決方案:在子網邊界設備(如路由器、三層交換機)上配置 DHCP 中繼,將廣播請求轉換為單播轉發給 DHCP 服務器。
2. 工作流程
- 客戶端請求:DHCP 客戶端發送廣播請求(Discover)。
- 中繼接收:中繼設備(如路由器)收到廣播后,封裝請求為單播(添加 giaddr 字段,即中繼接口 IP)。
- 服務器響應:DHCP 服務器收到單播請求,根據 giaddr 字段選擇合適的地址池,回復單播響應。
- 中繼轉發:中繼設備將響應轉發給客戶端。
?
DHCP中繼實驗
一、項目背景
Langlang需要對DHCP的客戶端進行地址分配,但DHCP服務器與DHCP客戶端不在同一個網絡范圍,Langlang不知道怎么解決這個問題,請你幫幫他。
二、項目拓撲圖
三、設備命名與IP地址規劃
設備名 | 接口編號 | IP地址規劃 |
R1 | GE0/0 | 192.168.1.1/24 |
R2 | GE0/0 | 192.168.1.2/24 |
GE0/1 | 192.168.2.254/24 | |
R3 | GE0/0 | DHCP獲取 |
?
四、項目需求
1. 按照圖示連接好線纜
2. 配置DHCP,R1為DHCP服務器,需要跨越網段為R3分配IP地址
3. 假設192.168.2.1~192.168.2.9已經被其他設備固定使用,所以需要排除該地址段
五、配置思路
第一步:按照圖示連接好線纜并配置IP地址
第二步:在R1上使用DHCP功能,配置DHCP地址池,并配置相關參數信息
第三步:在R2上使用DHCP中繼功能,使其知道服務器在網絡中的位置
第四步:需要使Server與Client之間網絡連通
第五步:設置Forbidden IP,排除192.168.2.1~192.168.2.9
六、具體實施
步驟一:首先配置好每個接口IP地址
R1:
<H3C>sys
System View: return to User View with Ctrl+Z.
[H3C]sysname R1
[R1]int g0/0
[R1-GigabitEthernet0/0]ip add 192.168.1.1
R2:
<H3C>sys
System View: return to User View with Ctrl+Z.
[r2]sysname R2
[R2]int g0/0
[R2-GigabitEthernet0/0]ip add 192.168.1.2
[R2-GigabitEthernet0/0]quit
[R2]int g0/1
[R2-GigabitEthernet0/1]ip add 192.168.2.254 24
[R2-GigabitEthernet0/1]quit
步驟二:在R1上使用DHCP功能
R1]dhcp enable
#使能DHCP功能,缺省未使能該功能
步驟三:在R1配置ip地址池
[R1]dhcp server ip-pool 1
#DHCP服務IP地址池名為1
[R1-dhcp-pool-1]network 192.168.2.0 mask 255.255.255.0
#該地址池地址范圍為192.168.2.0~192.168.2.255
[R1-dhcp-pool-1]gateway-list 192.168.2.254
#網關為192.168.2.254
[R1-dhcp-pool-1]dns-list 114.114.114.114
#DNS為114.114.114.114
[R1-dhcp-pool-1]expired day 1
#設置租期時間為1天
[R1-dhcp-pool-1]quit
#返回上一級視圖
[R1]dhcp server forbidden-ip 192.168.2.1 192.168.2.9
#DHCP服務器排除地址192.168.2.1~192.168.2.9
步驟四:在R2配置DHCP中繼
[R2]dhcp enable
#使能DHCP功能
[R2]interface GigabitEthernet 0/1
#進入GE0/1接口視圖
[R2-GigabitEthernet0/1]dhcp select relay
#設置GE0/1接口為DHCP中繼接口,后續收到DHCP報文會進行代理轉發
[R2-GigabitEthernet0/1]dhcp relay server-address 192.168.1.1
#告訴中繼接口,DHCP服務器的IP地址為192.168.1.1
步驟五:在R3上設置接口IP地址為DHCP獲取
[R3]interface GigabitEthernet 0/0
#進入GE0/0接口視圖
[R3-GigabitEthernet0/0]ip address dhcp-alloc
#設置接口IP地址為DHCP獲取
步驟六:查看DHCP客戶端IP地址獲取情況
#此時獲取了一個以169.254.X.X/16的地址,此地址代表沒有正確獲取到DHCP地址所產生的地址(配置錯誤、地址池沒有空閑的地址、網絡不通均有可能等情況)
#此環境中是因為DHCP Server與DHCP Client之間的網絡不通導致
[R3]display ip interface brief
*down: administratively down
(s): spoofing (l): loopback
Interface Physical Protocol IP address/Mask VPN instance Description
GE0/0 up up 169.254.3.0/16 -- --
………………
步驟七:在DHCP Server上配置一條去往DHCP Client的路由,使其網絡互通
R1:
R1]ip route-static 192.168.2.0 24 192.168.1.2
#手動配置IP路由目標網絡為192.168.2.0/24,下一跳為192.168.1.2
步驟八:重啟DHCP Client接口
R3
[R3]interface GigabitEthernet 0/0
#進入GE0/0接口視圖