• 產品與解決方案
  • 行業解決方案
  • 服務
  • 支持
  • 合作夥伴
  • 關於我們

12-三層技術-IP路由配置指導

目錄

12-路由策略配置

本章節下載 12-路由策略配置  (240.56 KB)

12-路由策略配置


1 路由策略

1.1  路由策略簡介

路由策略是為了改變網絡流量所經過的途徑而修改路由信息的技術,主要通過改變路由屬性(包括可達性)來實現。路由策略可以用來控製路由的發布、控製路由的接收、管理引入的路由和設置路由的屬性。

1.1.1  路由策略的實現

路由策略的實現步驟如下:

(1)     首先要定義將要實施路由策略的路由信息的特征,即定義一組匹配規則。可以靈活使用過濾器來定義各種匹配規則。

(2)     然後再將匹配規則應用於路由的發布、接收和引入等過程的路由策略中。

1.1.2  過濾器

過濾器可以看作是路由策略過濾路由的工具,單獨配置的過濾器沒有任何過濾效果,隻有在路由協議的相關命令中應用這些過濾器,才能夠達到預期的過濾效果。

1. 訪問控製列表

訪問控製列表可以指定IP地址和子網範圍,用於匹配路由信息的目的網段地址或下一跳地址。

ACL的相關內容請參見“ACL和QoS配置指導”中的“ACL”。

2. 地址前綴列表

地址前綴列表的作用類似於ACL,但比它更為靈活,且更易於用戶理解。使用地址前綴列表過濾路由信息時,其匹配對象為路由信息的目的地址。

一個地址前綴列表由前綴列表名標識。每個前綴列表可以包含多個表項,每個表項可以獨立指定一個網絡前綴形式的匹配範圍,並用一個索引號來標識,索引號指明了在地址前綴列表中進行匹配檢查的順序。

每個表項之間是“或”的關係,在匹配的過程中,路由器按升序依次檢查由索引號標識的各個表項,隻要有某一表項滿足條件,就意味著通過該地址前綴列表的過濾(不再對下一個表項進行匹配)。

3. AS路徑訪問列表(as-path)

as-path僅用於BGP路由的過濾。BGP路由的AS_PATH屬性記錄了從本地到目的地址所要經過的所有AS號。as-path就是針對AS_PATH屬性指定匹配條件。

as-path的相關內容請參見“三層技術-IP路由配置指導”中的“BGP”。

4. 團體屬性列表(community-list)

community-list僅用於BGP路由的過濾。BGP路由中包含團體(COMMUNITY)屬性,該屬性用來標識路由所屬的組。community-list就是針對團體屬性指定匹配條件。

團體屬性列表的相關內容請參見“三層技術-IP路由配置指導”中的“BGP”。

5. 擴展團體屬性列表(extcommunity-list)

extcommunity-list僅用於BGP路由的過濾。BGP擴展團體屬性有兩種,一種是用於VPN的RT(Route Target,路由目標)擴展團體,另一種則是SoO(Site of Origin,源站點)擴展團體。擴展團體屬性列表就是針對這兩種屬性指定匹配條件。

擴展團體屬性列表的相關內容請參見“MPLS配置指導”中的“MPLS L3VPN”。

6. 路由標記列表(tag-list)

tag-list僅用於IGP路由的過濾。IGP的路由信息中包含路由標記,tag-list就是針對路由標記指定匹配條件。

7. 路由策略

路由策略是一種比較複雜的過濾器,它不僅可以匹配路由信息的某些屬性,還可以在條件滿足時改變路由信息的屬性。路由策略可以使用前麵幾種過濾器定義自己的匹配規則。

一個路由策略可以由多個節點構成,每個節點是匹配檢查的一個單元。在匹配過程中,係統按節點序號升序依次檢查各個節點。不同節點間是“或”的關係,如果通過了其中一個節點,就意味著通過該路由策略,不再對其他節點進行匹配(配置了continue子句的情況除外)。

每個節點對路由信息的處理方式由匹配模式決定。匹配模式分為permitdeny兩種。

·     permit:指定節點的匹配模式為允許模式。當路由信息通過該節點的過濾後,將執行該節點的apply子句,不進入下一個節點的匹配(配置了continue子句的情況除外);如果路由信息沒有通過該節點過濾,將進入下一個節點繼續匹配。

·     deny:指定節點的匹配模式為拒絕模式(此模式下apply子句和continue子句不會被執行)。當路由信息通過該節點的過濾後,將被拒絕通過該節點,不進入下一個節點的匹配;如果路由信息沒有通過該節點的過濾,將進入下一個節點繼續匹配。

每個節點可以由一組if-matchapplycontinue子句組成。

·     if-match子句:定義匹配規則,匹配對象是路由信息的一些屬性。同一節點中的不同if-match子句是“與”的關係,隻有滿足節點內所有if-match子句指定的匹配條件,才能通過該節點的匹配。

·     apply子句:指定動作,也就是在通過節點的匹配後,對路由信息的一些屬性進行設置。

·     continue子句:用來配置下一個執行節點。當路由成功匹配當前路由策略節點(必須是permit節點)時,可以指定路由繼續匹配同一路由策略內的下一個節點,這樣可以組合路由策略各個節點的if-match子句和apply子句,增強路由策略的靈活性。

if-matchapplycontinue子句可以根據應用進行設置,都是可選的。

·     如果隻過濾路由,不設置路由的屬性,則不需要使用apply子句。

·     如果某個permit節點未配置任何if-match子句,則該節點匹配所有的路由。

·     通常在多個deny節點後設置一個不含if-match子句和apply子句的permit節點,用於允許其它的路由通過。

1.2  路由策略配置任務簡介

路由策略配置任務如下:

(1)     (可選)配置過濾器

¡     配置IPv4地址前綴列表

¡     配置IPv6地址前綴列表

¡     配置AS路徑過濾列表

¡     配置團體屬性列表

¡     配置擴展團體屬性列表

(2)     配置路由策略

a.     創建路由策略

b.     配置if-match子句

c.     配置apply子句

d.     配置continue子句

1.3  配置IPv4地址前綴列表

1. 配置限製和指導

如果所有表項都是deny模式,則任何路由都不能通過該過濾列表。要允許其它所有IPv4路由通過,需要在多條deny模式的表項後定義一條permit 0.0.0.0 0 less-equal 32表項。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置IPv4地址前綴列表。

ip prefix-list prefix-list-name [ index index-number ] { deny | permit } ip-address mask-length [ greater-equal min-mask-length ] [ less-equal max-mask-length ]

1.4  配置IPv6地址前綴列表

1. 配置限製和指導

如果所有表項都是deny模式,則任何路由都不能通過該過濾列表。要允許其它所有IPv6路由通過,需要在多條deny模式的表項後定義一條permit :: 0 less-equal 128表項。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置IPv6地址前綴列表。

ipv6 prefix-list prefix-list-name [ index index-number ] { deny | permit } ipv6-address { inverse inverse-prefix-length | prefix-length [ greater-equal min-prefix-length ] [ less-equal max-prefix-length ] }

1.5  配置AS路徑過濾列表

1. 功能簡介

一個AS路徑過濾列表可以包含多個表項。在匹配過程中,各表項之間是“或”的關係,即隻要路由信息通過該列表中的一條表項,就認為通過該AS路徑過濾列表。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置AS路徑過濾列表。

ip as-path as-path-number { deny | permit } regular-expression

1.6  配置團體屬性列表

1. 功能簡介

一個團體屬性列表可以定義多個表項。在匹配過程中,各表項之間是“或”的關係,即隻要路由信息通過該列表中的一條表項,就認為通過該團體屬性列表。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置團體屬性列表。

¡     配置基本團體屬性列表。

ip community-list { basic-comm-list-num | basic basic-comm-list-name } { deny | permit } [ community-number&<1-32> | aa:nn&<1-32> ] [ internet | no-advertise | no-export | no-export-subconfed ] *

¡     配置高級團體屬性列表。

ip community-list { adv-comm-list-num | advanced adv-comm-list-name } { deny | permit } regular-expression

1.7  配置擴展團體屬性列表

1. 功能簡介

一個擴展團體屬性列表可以定義多個表項。在匹配過程中,各表項之間是“或”的關係,即隻要路由信息通過該列表中的一條表項,就認為通過該擴展團體屬性列表。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置擴展團體屬性列表。

ip extcommunity-list ext-comm-list-number [ index index-number ] { deny | permit } { rt route-target | soo site-of-origin }&<1-32>

1.8  配置路由標記列表

1. 功能簡介

一個路由標記列表中可以定義多個表項。在匹配過程中,各表項之間是“或”的關係,即隻要路由信息通過該列表中的一條表項,就認為通過該路由標記列表。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置路由標記列表。

route tag-list tag-list-number [ index index-number ] { deny | permit } tag-value&<1-32>

1.9  配置路由策略

1.9.1  創建路由策略

1. 功能簡介

路由策略中至少應該有一個節點的匹配模式是permit。如果路由策略的所有節點都是deny模式,則沒有路由信息能通過該路由策略。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     創建路由策略,並進入該路由策略視圖。

route-policy route-policy-name { deny | permit } node node-number

1.9.2  配置if-match子句

1. 功能簡介

在一個節點中,可以沒有if-match子句,也可以有多個if-match子句。當不指定if-match子句時,如果該節點的匹配模式為允許模式,則所有路由信息都會通過該節點的過濾;如果該節點的匹配模式為拒絕模式,則所有路由信息都會被拒絕。

2. 配置限製和指導

如果配置了多條相同類型的if-match子句,設備在顯示路由策略時,會將這些if-match子句合並為一條if-match子句。如果合並後的if-match子句超過命令行最大長度,則這些相同類型的if-match子句會分成多條顯示,這些子句之間是“或”的關係,即滿足一個匹配條件,就認為匹配該if-match語句,例如出現多條if-match community子句時,各個子句的團體屬性之間是“或”的關係,即滿足其中一個團體屬性,就認為匹配if-match community子句。

如果一個節點中if-match子句隻指定了IPv6 ACL,沒有指定IPv4 ACL,所有的IPv4路由信息都會匹配這個節點。如果一個節點中if-match子句隻指定IPv4 ACL,沒有指定IPv6 ACL,所有的IPv6路由信息都會匹配這個節點。

如果if-match子句對應的ACL不存在,則默認滿足該匹配條件。如果if-match子句對應的ACL中沒有匹配的ACL規則或者ACL規則處於非激活狀態,則默認不滿足該匹配條件。

如果if-match子句對應的前綴列表、團體屬性列表或擴展團體屬性列表不存在,則默認滿足該匹配條件。如果if-match子句對應的前綴列表、團體屬性列表或擴展團體屬性列表中沒有匹配的規則,則默認不滿足該匹配條件。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入路由策略視圖。

route-policy route-policy-name { deny | permit } node node-number

(3)     配置通過ACL或IP地址前綴列表匹配路由。

(IPv4網絡)

if-match ip { address | next-hop | route-source } { acl { ipv4-acl-number | name ipv4-acl-name } | prefix-list prefix-list-name }

(IPv6網絡)

if-match ipv6 { address | next-hop | route-source } { acl { ipv6-acl-number | name ipv6-acl-name } | prefix-list prefix-list-name }

缺省情況下,未配置通過ACL或IP地址前綴列表匹配路由。

路由策略使用非VPN的ACL進行路由過濾。

(4)     配置BGP路由信息的匹配條件。

¡     配置BGP路由信息的AS路徑匹配條件。

if-match as-path as-path-number&<1-32>

¡     配置匹配BGP路由信息的團體屬性匹配條件。

if-match community { { basic-community-list-number | name comm-list-name } [ whole-match ] | adv-community-list-number }&<1-32>

¡     配置BGP路由的擴展團體屬性匹配條件。

if-match extcommunity ext-comm-list-number&<1-32>

¡     配置BGP路由信息的本地優先級匹配條件。

if-match local-preference preference

缺省情況下,未配置BGP路由信息匹配條件。

(5)     配置基於路由信息的匹配條件。

¡     配置路由信息的路由開銷匹配條件。

if-match cost cost-value

¡     配置路由信息的出接口匹配條件。

if-match interface { interface-type interface-number }&<1-16>

將路由策略應用到BGP時,BGP協議不支持配置路由信息的出接口匹配條件。

¡     配置路由信息的MPLS標簽匹配條件。

if-match mpls-label

¡     配置路由信息類型匹配條件。

if-match route-type { bgp-evpn-imet | bgp-evpn-ip-prefix | bgp-evpn-mac-ip | eigrp-external | eigrp-internal | external-type1 | external-type1or2 | external-type2 | internal | is-is-level-1 | is-is-level-2 | nssa-external-type1 | nssa-external-type1or2 | nssa-external-type2 } *

¡     配置IGP路由信息標記的匹配條件。

if-match tag tag-value

¡     配置IGP路由標記列表的匹配條件。

if-match tag-list tag-list-number

缺省情況下,未配置基於路由信息的匹配條件。

1.9.3  配置apply子句

(1)     進入係統視圖。

system-view

(2)     進入路由策略視圖。

route-policy route-policy-name { deny | permit } node node-number

(3)     配置BGP路由屬性。

¡     配置BGP路由的AS_PATH屬性。

apply as-path as-number&<1-32> [ replace ]

¡     刪除BGP路由的團體屬性。

apply comm-list { comm-list-number | comm-list-name } delete

缺省情況下,沒有刪除BGP路由的團體屬性。

¡     配置BGP路由的團體屬性。

apply community { none | additive | { community-number&<1-32> | aa:nn&<1-32> | internet | no-advertise | no-export | no-export-subconfed } * [ additive ] }

¡     配置BGP路由的擴展團體屬性。

apply extcommunity { rt route-target }&<1-32> [ additive ]

¡     配置BGP路由的本地優先級。

apply local-preference preference

¡     配置BGP路由的ORIGIN屬性。

apply origin { egp as-number | igp | incomplete }

¡     配置BGP路由的首選值。

apply preferred-value preferred-value

¡     配置BGP路由的流量索引。

apply traffic-index { value | clear }

缺省情況下,未配置BGP路由屬性。

(4)     配置路由開銷。

¡     配置路由信息的路由開銷。

apply cost [ + | - ] cost-value

缺省情況下,未配置路由信息的路由開銷。

¡     配置路由信息的開銷類型。

apply cost-type { external | internal | type-1 | type-2 }

缺省情況下,未配置路由信息的開銷類型。

(5)     配置路由信息的下一跳地址。

(IPv4網絡)

apply ip-address next-hop ip-address [ public | vpn-instance vpn-instance-name ]

(IPv6網絡)

apply ipv6 next-hop ipv6-address

缺省情況下,未配置路由信息的下一跳地址。

對於引入的路由,使用本命令設置下一跳地址無效。

(6)     配置路由優先級。

¡     配置路由的IP優先級。

apply ip-precedence { value | clear }

缺省情況下,未配置路由的IP優先級。

¡     配置路由協議的優先級。

apply preference preference

缺省情況下,未配置路由協議的優先級。

¡     配置路由收斂優先級。

apply prefix-priority { critical | high | medium }

缺省情況下,路由收斂優先級為低(Low)。

(7)     配置引入路由到IS-IS某個級別的區域。

apply isis { level-1 | level-1-2 | level-2 }

缺省情況下,未配置引入路由到IS-IS某個級別的區域。

(8)     配置MPLS標簽。

apply mpls-label

缺省情況下,未配置MPLS標簽。

(9)     配置路由的QoS本地ID值。

apply qos-local-id { local-id-value | clear }

缺省情況下,未配置路由的QoS本地ID值。

(10)     配置IGP路由信息的標記。

apply tag tag-value

缺省情況下,未配置IGP路由信息的標記。

(11)     配置快速重路由備份。

(IPv4網絡)

apply fast-reroute { backup-interface interface-type interface-number [ backup-nexthop ip-address ] | backup-nexthop ip-address }

(IPv6網絡)

apply ipv6 fast-reroute { backup-interface interface-type interface-number [ backup-nexthop ipv6-address ] | backup-nexthop ipv6-address }

缺省情況下,未配置快速重路由備份。

1.9.4  配置continue子句

1. 配置限製和指導

當配置continue子句的多個節點配置相同的apply子句(沒有疊加屬性)隻是子句的值不相同時,以最後一個節點的apply子句為準;如果配置的是有疊加屬性的apply子句(命令apply as-path不指定參數replace/命令apply cost指定參數+-/命令apply community指定參數additive/命令apply extcommunity指定參數additive),屬性會全部疊加到路由上。

當配置continue子句的多個節點配置apply community子句時,使用命令行apply comm-list delete不能刪除前麵節點中配置的團體屬性。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入路由策略視圖。

route-policy route-policy-name { deny | permit } node node-number

(3)     配置下一個執行節點。

continue [ node-number ]

缺省情況下,未配置下一個執行節點。

下一個執行節點序列號必須大於當前節點序列號。

1.10  路由策略顯示和維護

在完成上述配置後,在任意視圖下執行display命令可以顯示配置後路由策略的運行情況,通過查看顯示信息驗證配置的效果。

在用戶視圖下執行reset命令可以清除路由策略的統計信息。

表1-1 路由策略顯示和維護

操作

命令

顯示BGP AS路徑過濾列表信息

display ip as-path [ as-path-number ]

顯示BGP團體屬性列表信息

display ip community-list [ basic-community-list-number | adv-community-list-number | name comm-list-name ]

顯示BGP擴展團體屬性列表信息

display ip extcommunity-list [ ext-comm-list-number ]

顯示IPv4地址前綴列表的統計信息

display ip prefix-list [ name prefix-list-name ]

顯示IPv6地址前綴列表的統計信息

display ipv6 prefix-list [ name prefix-list-name ]

顯示IGP路由標記列表信息

display route tag-list [ tag-list-number ]

顯示路由策略信息

display route-policy [ name route-policy-name ]

清除IPv4地址前綴列表的統計信息

reset ip prefix-list [ prefix-list-name ]

清除IPv6地址前綴列表的統計信息

reset ipv6 prefix-list [ prefix-list-name ]

 

 

不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!

BOB登陆
官網
聯係我們