一、先講個故事:網絡管理員的"左右為難" 📖
假設你是某公司的網絡管理員,剛上班就遇到兩個頭疼的問題:😫
問題1:路由器從鄰居那裏學來了一堆路由,但其中 192.168.1.1/32 是早就廢棄的測試網段,每次都要手動刪除,重複操作太麻煩!
問題2:公司出口有兩條鏈路(普通寬帶+專線),還劃分了兩個內網網段:
- 🏢 普通辦公網段(
192.168.1.0/24) - 📹 視頻會議網段(
192.168.2.0/24)
領導要求:普通辦公流量走普通寬帶,視頻會議流量走專線(保障帶寬),且所有訪問總部內網(10.0.0.0/8)的流量,無論來自哪個網段都必須走專線。但路由器“只認路由表”,不知道怎麼“區別對待”不同流量。
💡 這兩個問題,恰好對應路由策略和策略路由的典型應用場景。看完本文,你就能用對技術解決問題~
二、路由策略:"我是路由表的'編輯師',只改'地圖'不碰'車'" 🗺️
2.1 什麼是路由策略? 🤔
路由策略(Route Policy)的核心是管理“路由表”裏的路由條目。
可以把“路由表”想象成一張“網絡地圖”,記錄着“到A網段走哪條路”“到B網段走哪條路”。而路由策略,就是這張“地圖”的編輯工具——它能決定哪些“路線”該保留、哪些該刪除,或者修改“路線的優先級”(比如讓某條路變成“高速優先路”)。
🎯 簡言之:路由策略不直接管“數據包怎麼轉發”,只負責讓“路由表更合理”。
2.2 路由策略能幹啥? 💡
- ✅ 過濾無效/冗餘路由(比如刪除廢棄的測試網段路由)
- ✅ 調整路由優先級(比如讓靜態路由優先於動態路由)
- ✅ 修改路由屬性(比如修改OSPF的Cost值,影響路由選擇)
- ✅ 控制路由發佈/接收範圍(比如只向特定鄰居發佈核心網段路由)
2.3 場景拓撲圖📋
2.4 基礎配置(各設備初始化)
① R1的基礎配置(發佈路由)
sysname R1
# 配置環回口(模擬要發佈的路由,含廢棄網段192.168.1.1/32)
interface LoopBack0
ip address 1.1.1.1 255.255.255.255
interface LoopBack1
ip address 192.168.1.1 255.255.255.255
# 配置物理接口
interface GigabitEthernet0/0/0
ip address 10.1.12.1 255.255.255.0
interface GigabitEthernet0/0/1
ip address 10.1.14.1 255.255.255.0
# 配置OSPF,發佈所有直連路由
ospf 1 router-id 1.1.1.1
area 0.0.0.0
network 10.1.12.0 0.0.0.255
network 10.1.14.0 0.0.0.255
network 1.1.1.1 0.0.0.0
network 192.168.1.1 0.0.0.0
② R2的基礎配置(先建立OSPF鄰居)
sysname R2
interface GigabitEthernet0/0/0
ip address 10.1.12.2 255.255.255.0
interface GigabitEthernet0/0/1
ip address 10.1.23.1 255.255.255.0
interface LoopBack0
ip address 2.2.2.2 255.255.255.255
# 配置OSPF,暫不做策略(先保證鄰居正常)
ospf 1 router-id 2.2.2.2
area 0.0.0.0
network 10.1.12.0 0.0.0.255
network 10.1.23.0 0.0.0.255
network 2.2.2.2 0.0.0.0
③ R3的基礎配置(先建立OSPF鄰居)
sysname R3
interface GigabitEthernet0/0/0
ip address 10.1.34.1 255.255.255.0
interface GigabitEthernet0/0/1
ip address 10.1.23.2 255.255.255.0
interface LoopBack0
ip address 3.3.3.3 255.255.255.255
# 配置OSPF,暫不做策略
ospf 1 router-id 3.3.3.3
area 0.0.0.0
network 10.1.23.0 0.0.0.255
network 10.1.34.0 0.0.0.255
network 3.3.3.3 0.0.0.0
④ R4的基礎配置(先建立OSPF鄰居)
sysname R4
interface GigabitEthernet0/0/0
ip address 10.1.34.2 255.255.255.0
interface GigabitEthernet0/0/1
ip address 10.1.14.2 255.255.255.0
interface LoopBack0
ip address 4.4.4.4 255.255.255.255
# 配置OSPF,暫不做策略
ospf 1 router-id 4.4.4.4
area 0.0.0.0
network 10.1.14.0 0.0.0.255
network 10.1.34.0 0.0.0.255
network 4.4.4.4 0.0.0.0
📌 驗證:在R2上執行 display ip routing-table,會看到 192.168.1.1/32(廢棄路由)已被OSPF學習到,需通過路由策略過濾。
2.5 實驗1:用路由策略過濾OSPF廢棄路由 ⚙️
目標:在R2上過濾來自R1的 192.168.1.1/32 路由,保留其他有效路由。
配置步驟(R2上操作)
# 步驟1:用ip-prefix精準匹配要過濾的路由(只匹配192.168.1.1/32)
ip ip-prefix Filter_Abandoned_Route index 10 permit 192.168.1.1 32
# 步驟2:用route-policy定義規則:拒絕匹配的廢棄路由,允許其他所有路由
route-policy OSPF_Filter deny node 10 # 節點10:拒絕匹配的路由
if-match ip-prefix Filter_Abandoned_Route
route-policy OSPF_Filter permit node 20 # 節點20:允許未匹配的所有路由(默認規則,不可少)
# 步驟3:在OSPF進口應用策略(對從鄰居學習到的路由生效)
ospf 1
filter-policy route-policy OSPF_Filter import
🔍 驗證配置
在R2上執行 display ip routing-table,會發現 192.168.1.1/32 路由已消失,其他路由(如 1.1.1.1/32、4.4.4.4/32)仍保留,實驗成功!🎉
2.6 實驗2:用路由策略控制特定路由接收 ⚙️
目標:在R3上只接收其他設備的環回口路由(1.1.1.1/32、2.2.2.2/32、4.4.4.4/32),過濾其他網段路由(如 10.1.12.0/24)。
配置步驟(R3上操作)
# 步驟1:用ip-prefix匹配需要保留的環回口路由
ip ip-prefix Allow_Loopback index 10 permit 1.1.1.1 32
ip ip-prefix Allow_Loopback index 20 permit 2.2.2.2 32
ip ip-prefix Allow_Loopback index 30 permit 4.4.4.4 32
# 步驟2:用route-policy定義規則:只允許匹配的環迴路由
route-policy Permit_Only_Loopback permit node 10
if-match ip-prefix Allow_Loopback
# 步驟3:在OSPF進口應用策略(只接收匹配的路由)
ospf 1
filter-policy route-policy Permit_Only_Loopback import
🔍 驗證配置
在R3上執行 display ip routing-table,會看到路由表中只有 1.1.1.1/32、2.2.2.2/32、4.4.4.4/32 三條環迴路由,其他網段路由(如 10.1.12.0/24、10.1.14.0/24)已被過濾,實驗成功!🎉
三、策略路由:"我是數據包的'交警',直接指揮'車'走哪條路" 🚦
3.1 什麼是策略路由? 🤔
策略路由(Policy-Based Routing,PBR)的核心是管理"數據包的轉發路徑"。
它完全不管"路由表"這張"地圖"怎麼畫,直接對"正在傳輸的數據包"下命令:"源IP是A的包走X路""目的IP是B的包走Y路"。哪怕路由表默認"所有包都該走Z路",策略路由也能強行讓符合條件的包"改道"。
🎯 簡言之:策略路由是"交通警察",直接指揮"數據包的行駛路線",支持多維度條件精準分流。
3.2 策略路由能幹啥? 💡
- ✅ 多出口分流(普通辦公走寬帶,視頻會議走專線)
- ✅ 目的地址優先(訪問總部/核心服務器的流量走專用鏈路)
- ✅ 應用層分流(基於端口,如HTTP走鏈路1,FTP走鏈路2)
- ✅ 帶寬保障(高優先級業務走高帶寬鏈路)
3.3 實戰配置:企業多條件策略路由(華為ENSP模擬) ⚙️
🎯 場景需求
某企業內網分兩個網段,出口有兩條鏈路,需實現:
- 🏢 普通辦公網段(
192.168.1.0/24)流量走普通鏈路(訪問公網) - 📹 視頻會議網段(
192.168.2.0/24)流量走專線鏈路(訪問總部) - 🏢📹 所有訪問總部內網(
10.0.0.0/8)的流量,無論源網段,都強制走專線鏈路(優先級最高)
📋 拓撲圖
🔧 配置步驟(全設備)
① 三層交換機SW1:VLAN劃分與內網網關
sysname SW1
# 創建VLAN(10:普通辦公,20:視頻會議,100:連接AR1)
vlan batch 10 20 100
# 接入接口加入對應VLAN
interface GigabitEthernet0/0/1 # PC1接入口
port link-type access
port default vlan 10
interface GigabitEthernet0/0/2 # PC2接入口
port link-type access
port default vlan 20
interface GigabitEthernet0/0/3 # 連接AR1的接口
port link-type access
port default vlan 100
# 配置VLANIF接口(作為內網網段網關)
interface Vlanif10
ip address 192.168.1.1 255.255.255.0 # 普通辦公網關
interface Vlanif20
ip address 192.168.2.1 255.255.255.0 # 視頻會議網關
interface Vlanif100
ip address 10.0.1.2 255.255.255.0 # 連接AR1的網段網關
② 核心路由器AR1:策略路由核心配置
sysname AR1
# 步驟1:配置接口IP
interface GigabitEthernet0/0/1 # 連接SW1的VLANIF100
ip address 10.0.1.1 255.255.255.0
interface GigabitEthernet0/0/0 # 連接AR2(普通鏈路)
ip address 10.1.1.1 255.255.255.0
interface GigabitEthernet0/0/2 # 連接AR3(專線鏈路)
ip address 10.2.2.1 255.255.255.0
# 步驟2:配置基礎靜態路由(保證默認連通性)
ip route-static 202.100.1.0 255.255.255.0 10.1.1.2 # 普通鏈路到公網
ip route-static 10.0.0.0 255.0.0.0 10.2.2.2 # 專線鏈路到總部
# 步驟3:策略路由配置(流分類→流行為→流策略)
## 3.1 流分類:區分三類流量(優先級:目的總部 > 視頻網段 > 普通網段)
# 分類1:目的為總部(10.0.0.0/8)的流量(優先級最高)
traffic classifier c_To_Headquarters operator or
if-match destination-address 10.0.0.0 0.255.255.255
# 分類2:源為視頻會議網段(192.168.2.0/24)的流量
traffic classifier c_Video operator or
if-match source-address 192.168.2.0 0.0.0.255
# 分類3:源為普通辦公網段(192.168.1.0/24)的流量
traffic classifier c_Office operator or
if-match source-address 192.168.1.0 0.0.0.255
## 3.2 流行為:指定每類流量的轉發下一跳
# 行為1:目的總部流量→走專線(AR3:10.2.2.2)
traffic behavior b_To_Headquarters
redirect ip-nexthop 10.2.2.2
# 行為2:視頻流量→走專線(AR3:10.2.2.2)
traffic behavior b_Video
redirect ip-nexthop 10.2.2.2
# 行為3:普通辦公流量→走普通鏈路(AR2:10.1.1.2)
traffic behavior b_Office
redirect ip-nexthop 10.1.1.2
## 3.3 流策略:綁定分類與行為(順序=優先級)
traffic policy p_Multi_Flow
classifier c_To_Headquarters behavior b_To_Headquarters # 先匹配目的總部
classifier c_Video behavior b_Video # 再匹配視頻流量
classifier c_Office behavior b_Office # 最後匹配普通流量
## 3.4 應用策略:在流量入接口(連接SW1的GE0/0/1)調用
interface GigabitEthernet0/0/1
traffic-policy p_Multi_Flow inbound
③ 普通鏈路路由器AR2(對接公網)
sysname AR2
# 配置接口IP
interface GigabitEthernet0/0/0 # 連接AR1
ip address 10.1.1.2 255.255.255.0
interface GigabitEthernet0/0/1 # 連接公網Server1
ip address 202.100.1.1 255.255.255.0
# 配置靜態路由:到內網網段 + 公網Server1
ip route-static 192.168.1.0 255.255.255.0 10.1.1.1 # 到普通辦公網段
ip route-static 192.168.2.0 255.255.255.0 10.1.1.1 # 到視頻會議網段
ip route-static 202.100.1.10 255.255.255.255 202.100.1.10 # 到公網Server1(直連)
④ 專線鏈路路由器AR3(對接總部)
sysname AR3
# 配置接口IP
interface GigabitEthernet0/0/0 # 連接AR1
ip address 10.2.2.2 255.255.255.0
interface GigabitEthernet0/0/1 # 連接總部Server2
ip address 10.0.0.254 255.0.0.0
# 配置靜態路由:到內網網段 + 總部
ip route-static 192.168.1.0 255.255.255.0 10.2.2.1 # 到普通辦公網段
ip route-static 192.168.2.0 255.255.255.0 10.2.2.1 # 到視頻會議網段
ip route-static 10.0.0.1 255.255.255.255 10.0.0.1 # 到總部Server2(直連)
⑤ PC終端配置
|
設備 |
IP地址 |
子網掩碼 |
網關 |
用途 |
|
🖥️ PC1 |
192.168.1.10 |
255.255.255.0 |
192.168.1.1 |
普通辦公 |
|
🖥️ PC2 |
192.168.2.10 |
255.255.255.0 |
192.168.2.1 |
視頻會議 |
|
🌐 Server1 |
202.100.1.10 |
255.255.255.0 |
202.100.1.1 |
公網服務器 |
|
🏢 Server2 |
10.0.0.1 |
255.0.0.0 |
10.0.0.254 |
總部服務器 |
🔍 驗證配置(關鍵三步)
1.PC1訪問公網(202.100.1.10)🖥️ 在PC1上執行 ping 202.100.1.10 ,應能ping通, tracert 202.100.1.10,路徑如下:
✅ 驗證結果:普通辦公流量走普通鏈路
2.PC2訪問公網(10.0.0.1) 🖥️ 在PC2上執行 ping 10.0.0.1 ,應能ping通, tracert 10.0.0.1 ,路徑如下:
✅ 驗證結果:驗證"目的總部"策略優先級最高(即使來自普通辦公網段也走專線)
3.4 策略路由核心邏輯 🧠
策略路由的執行流程是 "流量入接口→匹配流分類→執行流行為→轉發數據包",關鍵注意兩點:
- 🔝 流分類順序=匹配優先級:先配置的分類先匹配,匹配成功後不再向下執行
- 目的總部(最高優先級)→ 視頻網段 → 普通網段(最低優先級)
- 📍 應用接口方向:策略需應用在"流量進入設備的接口",若應用在出口則不生效
-
正確:AR1的GE0/0/1(從SW1進入AR1的流量)
-
錯誤:AR1的GE0/0/0或GE0/0/2(出口接口)
四、核心區別:一張表秒懂路由策略 vs 策略路由 📊
|
對比項 |
路由策略(Route Policy) |
策略路由(PBR) |
|
🎯 管理對象 |
路由條目(路由表的"路線") |
數據包(實際傳輸的"數據") |
|
⏰ 作用階段 |
路由表生成/更新時("畫地圖時") |
數據包轉發時("車開起來時") |
|
❓ 依賴路由表嗎 |
依賴(目標是優化路由表) |
不依賴(可強行覆蓋路由表) |
|
🔍 決策依據 |
路由屬性(網段、Cost、協議類型) |
數據包屬性(源IP、目的IP、端口、協議) |
|
🎭 通俗比喻 |
路由表的"編輯師" |
數據包的"交警" |
|
⚙️ 配置核心 |
+ |
+ |
|
💼 典型場景 |
過濾無效路由、調整路由優先級 |
多鏈路分流、按業務/目的地址分配路徑 |
五、新手常見誤區解答 ❓
❌ 誤區1:"名字裏都有'策略',功能差不多?"
完全不同! 路由策略是控制層面技術(修改"路由表地圖"),策略路由是數據層面技術(指揮"數據包的行駛路線"),就像"編輯地圖"和"實時指揮交通"的區別。
❌ 誤區2:"策略路由更'高級',優先用它?"
不是"高級",是"場景不同"。比如"刪除廢棄路由"用路由策略更簡單,"不同業務走不同鏈路"必須用策略路由,沒有高低之分,只有"用對場景"。
❌ 誤區3:"策略路由配置後不生效,哪裏錯了?"
常見原因:
- 🚫 策略應用在"出口接口"(應應用在"入口接口")
- 🔀 流分類順序反了(優先級高的分類沒放在前面)
- 🎯 流行為沒配置
redirect ip-nexthop(沒指定轉發目標) - 🔄 路由表中有更精確的路由覆蓋了策略路由
六、總結:記住這兩句話 💎
- 路由策略:改"地圖"(讓路由表更乾淨、更合理)
- 策略路由:攔"車流"(讓數據包按業務需求走指定鏈路)