寫在前面:本人是一名計算機系大二的學生,會不定時的將我的學習筆記分享給大家!如果需要更多的學習資源可以通過我的GitHub自行下載!
路由控制
一、路由策略
定義:
- 通過一系列工具或方法進行控制的策略
- 影響路由的產生、發佈、選擇等,進而影響報文的選擇路勁
目的:
- 對路由進行過濾:要不要這條路由
- 修改路由屬性:將這條路由的耨個屬性值修改爲一個特定值
作用:
- 控制路由的接受、發佈、引入,提高安全性
- 修改路由屬性,合理規劃,提高性能
實現機制:路由策略的核心內容就是過濾器
過濾器 | 應用範圍 |
---|---|
訪問控制列表(ACL) | 各動態路由協議 |
地址前綴列表(filter- | 各動態路由協議 |
AS路徑過濾器(AS-PATH-filter) | bgp協議 |
團體屬性過濾器(community-filter) | bgp協議 |
擴展團體屬性過濾器(extcommunity-filter) | vpn |
RD屬性過濾器(route distinguisher-filter) | vpn |
路由策略(route-policy) | 各種路由協議 |
- route-policy可以使用前面六種過濾器定義自己的匹配規則,可以匹配路由屬性,還可以改變路由屬性
類型 | 備註 |
---|---|
條件工具 | 把需要的路由器抓取出來 |
策略工具 | 把抓取的路由器質性動作,允許、拒絕、只改屬性等 |
調用工具 | 將路由策略應用到某個具體的路由協議裏面,使其生效 |
1、ip-prefix list
-
ip-prefix list :能同時精確匹配網絡號和前綴長度
-
性能可控性比acl高(acl無法匹配掩碼\前綴掩碼)
-
前綴列表不能路由過濾
-
最後一條默認拒絕
ip ip-prefix test index 10 permit 10.0.0.0 16 greate-equnal 24 less-equal 28 //前綴長度是24-28,16的意思就是ip地址前面的16位要一樣,掩碼是24-28
地址範圍,10.0.x.x
24<=掩碼長度<=28
eg : 10.0.1.0/24,10.0.2.0/25,10.0.2.192/26
語法規則
語法規則 | |
---|---|
不配置greater-equal和less-equal | 前綴長度=16 |
只配置greater-equal | 前綴長度=24-32 |
只配置less-equal | 前綴長度=16-28 |
同時配置greater-equal和less-equal | 前綴長度=24-28 |
注意事項
- 其他允許訪問的路由要寫明允許所有,不然會影響其他的路由表
例子1
匹配所有路由
#
permit 0.0.0.0 0 less 32
#
匹配主機路由:1.1.1.1/32
#
permit 1.1.1.1 32
#
匹配缺省路由
#
permit 0.0.0.0 0
例子2
匹配下面的路由(用最精準最簡潔的方式)
192.168.4.0/24
192.168.5.0/24
192.168.6.0/24
192.168.7.0/24
方案一:
permit 192.168.4.0 24
permit 192.168.5.0 24
permit 192.168.6.0 24
permit 192.168.7.0 24
方案二:
ip ip-prefix ab index permit 192.168.4.0 22 gr 24 le 24
null
:黑洞接口,數據包丟棄
ip route-sta xxxx xxxx null 0 //數據包丟棄
2、filter -policy
- 一種常用的路由過濾工具,只能過濾路由,無法過濾lsa,不能修改路由屬性。
路由類型 | 路由傳遞原理 |
---|---|
距離矢量 | 過濾路由器的發送和接受 |
鏈路狀態 | 過濾路由器的生成,不影響lsdb的生成 |
命令
filter-policy 2000 export //在協議簇方向調用策略,acl
fiter-policy prefix-list wakin import //在協議出方向調用過濾策略,前綴列表
- 一類lsa是在路由的基上,同一區域的無法過濾
3、route-policy
- 強大而又複雜的過濾器
規則
route-policy policy_a permit node 10 //策略名稱、條件模式、節點
if-macth ip-address prefix pre_a //節點匹配規則
apply cost 100 //通過節點過濾的規則
- 有若干個節點,節點中方包含了子句
- 由若干個節點node構成,node之間的關係是‘或’
- node下可以有n個if-macth,apply
- if-macth之間的關係‘與’
匹配規則(if-match)
acl
:路由信息的目的ip地址範圍的匹配條件prefix-list
:路由信息的目的ip地址範圍的匹配條件ip next-hop
:路由表的下一跳地址的匹配條件interface
:路由信息的出接口的匹陪條件route-type
:路由信息類型的匹配條件tag
:rip、ospf、isis路由信息的標記域的匹配條件cost
:路由信息的路由開銷的匹配條件
二、策略路由
1、路由策略和策略路由的區別
路由策略
- 基於
目的地址
按路由錶轉發 - 基於
控制面板
,爲路由協議和路由表服務 - 與
路由協議
結合完成路由策略 - 應用命令:route-policy
策略路由
- 基於
策略
的轉發,失敗後再查找路由表 - 基於
轉發平面
,爲轉發策略服務 - 需要
手工逐跳配置
,以保證報文按策略轉發 - 應用命令:policy-based-route
路由策略中,拒絕的將不會被通過
策略路由中,拒絕的將做正常轉發
2、策略路由
規則
policy-bsed-route pbr_a permit node 10 //策略路由的名稱、匹配模式、節點編號
if-match acl 3000 //節點匹配規則
apply output-interface serial 2\0 //通過節點過濾後的動作
policy-based-route pbr_a deny node 20
-
prb中包含了若干個節點,節點中包含了子句
-
策略路由中拒絕的會按正常的路由流量轉發
-
節點之間的過濾關係是‘或’
-
節點if-match之間是‘與’
本地策略路由
- 僅對
本機
下發的報文進行處理。對轉發的不起作用
接口策略路由
僅對轉發
對的報文其作用,對本地轉發的報文不起作用
本地策略路由配置
- 使用
policy-based-route
工具
命令 | 備註 |
---|---|
policy-based-route wakin perMIT node 10 | 創建pbr |
if-macth acl xxxx | 配置IP地址匹配條件 |
if-macth packet -length 64 100 | |
apply output-interface g/0/0/ | |
apply ip-address next-hop 12.0.0.2 | |
ip local policy-based-route wakin |
接口策略路由配置
-
用
traffic-policy
工具實現 -
通過流策略技術實現
流策略
- 將
流分類
和流行爲
關聯,就是流策略
,形成了‘’模塊化‘’的配置方式,最大優點就是可以節省配置,支持批量修改
技術 | 備註 |
---|---|
traffic classifier,流分類 | if-macth語句設定流分類的匹配規則 |
traffic behavior ,流動作 | 執行動作,如、重標記、重定向、流量限速、統計等 |
traffic policy,流策略 | 將流量分類和流動作關聯,應用到流量的入\出接口 |
命令
命令 | 備註 |
---|---|
traffic classifier wakin | |
traffic policy Disney | 創建流策略 |
traffic -policy Disney inbound | 調用流策略 |
驗證
dis traffic-policy applied-record //查看流策略信息
三、路由引入
1、路由引入
-
技術背景:存在多種路由技術並存的現象
-
引入概述:
import
,使不同技術或進程可以相互兼容、學習的技術 -
引入原則:假設路由協議a引入b,a–>b,則會導致:
- 跟a相關的所有路由引入了b
- 從a學習到的路由會引入到b
- 啓用了a的接口所在網絡路由會進入b
- 引入的路由必須位於路由表中
- 引入是外向的,即負責引入的路由不會改變自身路由表
- 跟a相關的所有路由引入了b
2、帶來的問題
a、次優路由
解決方法
- 方法一:利用路由過濾避免次優路由
#
import-route xxx
#
acl xxx
rule x deny/permit source xxxx xxxx
isis\ospf xx
filter-policy xxx import //利用acl進行路由過濾
#
- 方法二:調整協議優先級避免次優路由
#
import-route xxx
#
isis xx
preference xxx //調整優先級
#
b、路由環路
- 方法一:利用路由過濾避
#
acl 2001
rule 0 deny source 2.0.0.0 0.255.255.255
rule 1 permit
#
ospf 1
import-route isis 1 route-policy RP1
#
route-policy RP1 permit node 10
if-match acl 2001
#
- 方法二:調整協議優先級
#
isis 1
preference 160
#
ospf 1
import-route isis 1
#
本文均屬肉肉原創!如有錯誤歡迎評論指出!