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

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

目錄

15-路由策略配置

本章節下載 15-路由策略配置  (300.19 KB)

15-路由策略配置


1 路由策略

說明

本章所介紹的路由策略包括IPv4路由策略和IPv6路由策略,二者的配置基本一致,不同的部分在各節中另行說明。

 

1.1  路由策略簡介

路由策略(Routing Policy)是為了改變網絡流量所經過的途徑而修改路由信息的技術,主要通過改變路由屬性(包括可達性)來實現。

1.1.1  路由策略的應用

路由策略的應用靈活廣泛,主要有下麵幾種方式:

·     控製路由的發布

路由協議在發布路由信息時,通過路由策略對路由信息進行過濾,隻發布滿足條件的路由信息。

·     控製路由的接收

路由協議在接收路由信息時,通過路由策略對路由信息進行過濾,隻接收滿足條件的路由信息,可以控製路由表項的數量,提高網絡的安全性。

·     管理引入的路由

路由協議在引入其它路由協議發現的路由時,通過路由策略隻引入滿足條件的路由信息,並控製所引入的路由信息的某些屬性,以使其滿足本協議的要求。

·     設置路由的屬性

對通過路由策略的路由設置相應的屬性。

1.1.2  路由策略的實現

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

(1)     首先要定義將要實施路由策略的路由信息的特征,即定義一組匹配規則。可以用路由信息中的不同屬性作為匹配依據進行設置,如目的地址、發布路由信息的路由器地址等。

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

可以靈活使用過濾器來定義各種匹配規則,過濾器的相關內容見下一節介紹。

1.1.3  過濾器

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

路由協議可以引用訪問控製列表、地址前綴列表、AS路徑訪問列表、團體屬性列表、擴展團體屬性列表、路由策略幾種過濾器。下麵對各種過濾器逐一進行介紹。

1. 訪問控製列表

訪問控製列表包括針對IPv4報文的ACL和針對IPv6報文的ACL。用戶在定義ACL時可以指定IP(v6)地址和子網範圍,用於匹配路由信息的目的網段地址或下一跳地址。

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

2. 地址前綴列表

地址前綴列表包括IPv4地址前綴列表和IPv6地址前綴列表。

地址前綴列表的作用類似於ACL,但比它更為靈活,且更易於用戶理解。使用地址前綴列表過濾路由信息時,其匹配對象為路由信息的目的地址信息域;另外,用戶可以指定gateway選項,指明隻接收某些路由器發布的路由信息。關於gateway選項的設置請參見“三層技術-IP路由命令參考”中的“RIP”和“OSPF”。

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

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

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

as-path僅用於BGP。BGP的路由信息中,包含有自治係統路徑域。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的Route-Target(路由目標)擴展團體,另一種則是Source of Origin(源節點)擴展團體。擴展團體屬性列表就是針對這兩種屬性指定匹配條件。

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

6. 路由策略

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

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

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

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

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

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

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

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

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

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

1.2  配置過濾列表

1.2.1  配置準備

在配置過濾列表之前,需要準備以下數據:

·     前綴列表名稱

·     匹配的地址範圍

·     擴展團體屬性列表序號

1.2.2  配置地址前綴列表

1. 配置IPv4地址前綴列表

IPv4地址前綴列表由列表名標識,每個前綴列表可以包含多個表項。各表項以網絡前綴的形式,獨立指定一個匹配範圍,並使用索引號標識。

在匹配過程中,係統按索引號升序依次檢查各個表項,隻要路由信息滿足一個表項,就認為通過該過濾列表,不再去匹配其他表項。

表1-1 配置IPv4地址前綴列表

操作

命令

說明

進入係統視圖

system-view

-

配置IPv4地址前綴列表

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

必選

缺省情況下,沒有配置IPv4地址前綴列表

 

說明

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

 

例如,按如下配置可以保證僅過濾掉10.1.0.0/16、10.2.0.0/16、10.3.0.0/16三個網段的路由,而其它網段的路由信息可以通過。

<Sysname> system-view

[Sysname] ip ip-prefix abc index 10 deny 10.1.0.0 16

[Sysname] ip ip-prefix abc index 20 deny 10.2.0.0 16

[Sysname] ip ip-prefix abc index 30 deny 10.3.0.0 16

[Sysname] ip ip-prefix abc index 40 permit 0.0.0.0 0 less-equal 32

2. 配置IPv6地址前綴列表

IPv6地址前綴列表由列表名標識,每個前綴列表可以包含多個表項。各表項可以獨立指定一個網絡前綴形式的匹配範圍,並使用索引號標識。

在匹配的過程中,係統按索引號升序依次檢查各個表項,隻要路由信息滿足一個表項,就認為通過該過濾列表,不再去匹配其他表項。

表1-2 配置IPv6地址前綴列表

操作

命令

說明

進入係統視圖

system-view

-

配置IPv6地址前綴列表

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

必選

缺省情況下,沒有配置IPv6地址前綴列表

 

說明

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

 

例如,按如下配置可以保證僅過濾掉2000:1::/48、2000:2::/48、2000:3::/48三個網段的路由,而其它網段的路由信息可以通過。

<Sysname> system-view

[Sysname] ip ipv6-prefix abc index 10 deny 2000:1:: 48

[Sysname] ip ipv6-prefix abc index 20 deny 2000:2:: 48

[Sysname] ip ipv6-prefix abc index 30 deny 2000:3:: 48

[Sysname] ip ipv6-prefix abc index 40 permit :: 0 less-equal 128

1.2.3  配置AS路徑過濾列表

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

表1-3 配置AS路徑過濾列表

操作

命令

說明

進入係統視圖

system-view

-

配置AS路徑過濾列表

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

必選

缺省情況下,沒有配置AS路徑過濾列表

 

1.2.4  配置團體屬性列表

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

表1-4 配置團體屬性列表

操作

命令

說明

進入係統視圖

system-view

-

配置團體屬性列表

配置基本團體屬性列表

ip community-list { basic-comm-list-num | basic comm-list-name } { deny | permit } [ community-number-list ] [ internet | no-advertise | no-export | no-export-subconfed ] *

二者必選其一

缺省情況下,沒有配置團體屬性列表

配置高級團體屬性列表

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

 

1.2.5  配置擴展團體屬性列表

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

表1-5 配置擴展團體屬性列表

操作

命令

說明

進入係統視圖

system-view

-

配置擴展團體屬性列表

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

必選

缺省情況下,沒有配置擴展團體屬性列表

 

1.3  配置路由策略

路由策略用來根據路由信息的某些屬性過濾路由信息,並改變與路由策略規則匹配的路由信息的屬性。匹配條件可以使用前麵幾種過濾列表。

一個路由策略可由多個節點構成,每個節點又分為:

·     if-match子句:定義匹配規則,即路由信息通過當前路由策略所需滿足的條件,匹配對象是路由信息的某些屬性。

·     apply子句:指定動作,也就是在滿足由if-match子句指定的過濾條件後所執行的一些配置命令,對路由的某些屬性進行修改。

·     continue子句:用來配置下一個執行節點,當路由成功匹配當前路由策略節點時,可以指定路由繼續匹配同一路由策略內的下一個節點。

1.3.1  配置準備

在配置路由策略之前,需完成以下任務:

·     配置過濾列表

·     配置路由協議

在配置之前,需要準備以下數據:

·     路由策略的名稱、節點序號

·     匹配條件

·     要修改的路由屬性值

1.3.2  創建一個路由策略

表1-6 創建一個路由策略

操作

命令

說明

進入係統視圖

system-view

-

創建路由策略並進入該路由策略視圖

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

必選

缺省情況下,沒有創建路由策略

 

說明

·     permit指定節點的匹配模式為允許模式。當路由信息通過該節點的過濾後,將執行該節點的apply子句,不進入下一個節點的測試;如果路由信息沒有通過該節點過濾,將進入下一個節點繼續測試。

·     deny指定節點的匹配模式為拒絕模式(此模式下apply子句不會被執行)。當路由項滿足該節點的所有if-match子句時,將被拒絕通過該節點,不進入下一個節點的測試;如果路由項不滿足該節點的if-match子句,將進入下一個節點繼續測試。

·     如果路由策略中定義了一個以上的節點,則各節點中至少應該有一個節點的匹配模式是permit。當路由策略用於路由信息過濾時,如果某路由信息沒有通過任一節點,則認為該路由信息沒有通過該路由策略。如果路由策略的所有節點都是deny模式,則沒有路由信息能通過該路由策略。

 

1.3.3  配置if-match子句

表1-7 配置if-match子句

操作

命令

說明

進入係統視圖

system-view

-

進入路由策略視圖

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

必選

配置IPv4的路由信息的匹配條件

配置IPv4路由信息的目的地址範圍的匹配條件

if-match acl acl-number

可選

缺省情況下,沒有配置IPv4路由信息的目的地址範圍的匹配條件

if-match ip-prefix ip-prefix-name

配置IPv4的路由信息的下一跳地址或源地址的匹配條件

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

可選

缺省情況下,沒有配置IPv4的路由信息的下一跳地址或源地址的匹配條件

配置IPv6的路由信息的匹配條件

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

可選

缺省情況下,沒有配置IPv6的路由信息的匹配條件

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

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

可選

缺省情況下,沒有配置BGP路由信息的AS路徑域的匹配條件

匹配BGP路由信息的團體屬性

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

可選

缺省情況下,不匹配BGP路由信息的團體屬性。

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

if-match cost value

可選

缺省情況下,沒有配置路由信息的路由開銷的匹配條件

配置BGP擴展團體屬性的匹配條件

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

可選

缺省情況下,沒有配置BGP擴展團體屬性的匹配條件

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

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

可選

缺省情況下,沒有配置路由信息的出接口的匹配條件

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

if-match mpls-label

可選

缺省情況下,沒有配置路由信息的MPLS標簽的匹配條件

配置路由信息的類型的匹配條件

if-match route-type { external-type1 | external-type1or2 | external-type2 | internal | is-is-level-1 | is-is-level-2 | nssa-external-type1 | nssa-external-type1or2 | nssa-external-type2 } *

可選

缺省情況下,沒有配置路由信息的類型的匹配條件

配置RIP、OSPF、IS-IS路由信息的標記域的匹配條件

if-match tag value

可選

缺省情況下,沒有配置RIP、OSPF、IS-IS路由信息的標記域的匹配條件

 

說明

·     對於同一個節點,在匹配的過程中,不同if-match子句間是“與”的關係,即路由信息必須同時滿足所有匹配條件,才可以執行apply子句。如果有if-match子句因超過命令行最大長度而出現多條相同的if-match子句時,這幾條子句之間是“或”的關係,即滿足一個匹配條件,就認為匹配該if-match語句,例如出現多條if-match community子句時,各個子句的團體屬性之間是“或”的關係,即滿足其中一個團體屬性,就認為匹配if-match community子句。

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

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

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

·     IPv4路由策略和IPv6路由策略在配置if-match子句時,不同之處在於匹配路由信息的目的地址、下一跳和源地址的命令不同。

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

 

1.3.4  配置apply子句

表1-8 配置apply子句

操作

命令

說明

進入係統視圖

system-view

-

創建路由策略並進入該路由策略視圖

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

必選

缺省情況下,不創建路由策略

配置BGP路由信息的AS_PATH屬性

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

可選

缺省情況下,沒有配置BGP路由信息的AS_PATH屬性

刪除指定的BGP團體屬性

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

可選

缺省情況下,不刪除路由團體屬性

配置BGP路由信息的團體屬性

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

可選

缺省情況下,沒有配置BGP路由信息的團體屬性

配置路由信息的路由開銷

apply cost [ + | - ] value

可選

缺省情況下,沒有配置路由信息的路由開銷

配置路由信息的開銷類型

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

可選

缺省情況下,沒有配置路由開銷類型

配置BGP擴展團體屬性

apply extcommunity { { rt route-target }&<1-16> [ additive ] | soo site-of-origin additive }

可選

缺省情況下,沒有配置BGP擴展團體屬性

配置路由信息的下一跳地址

配置IPv4路由信息的下一跳地址及下一跳所在實例名稱

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

可選

缺省情況下,沒有配置IPv4路由信息的下一跳地址

配置IPv6路由信息的下一跳地址

apply ipv6 next-hop ipv6-address

可選

缺省情況下,沒有配置IPv6路由信息的下一跳地址

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

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

可選

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

配置BGP路由信息的本地優先級

apply local-preference preference

可選

缺省情況下,沒有配置BGP路由信息的本地優先級

配置MPLS標簽

apply mpls-label

可選

缺省情況下,沒有配置MPLS標簽

配置BGP路由信息的ORIGIN屬性

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

可選

缺省情況下,沒有配置BGP路由信息的ORIGIN屬性

配置路由協議的優先級

apply preference preference

可選

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

配置BGP路由信息的首選值

apply preferred-value preferred-value

可選

缺省情況下,沒有配置BGP路由信息的首選值

配置RIP、OSPF、IS-IS路由信息的標記域

apply tag value

可選

缺省情況下,沒有配置RIP、OSPF、IS-IS路由信息的標記域

配置快速重路由

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

可選

缺省情況下,沒有配置快速重路由備份出接口與備份下一跳地址

 

說明

·     IPv4路由策略和IPv6路由策略在配置apply子句時,不同之處在於設置路由信息的下一跳地址的命令不同。

·     對於引入的IPv4路由,使用apply ip-address next-hop命令設置下一跳地址及下一跳所在實例名稱無效;對於引入的IPv6路由,使用apply ipv6 next-hop命令設置下一跳地址無效。

 

1.3.5  配置continue子句

表1-9 配置continue子句

操作

命令

說明

進入係統視圖

system-view

-

創建路由策略並進入該路由策略視圖

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

必選

缺省情況下,不創建路由策略

配置下一個執行節點

continue [ node-number ]

可選

缺省情況下,沒有配置下一個執行節點

需要注意的是,下一個執行節點序列號必須大於當前節點序列號

 

說明

·     當配置continue子句的多個節點配置相同的apply子句隻是子句的值不相同時,以最後一個apply子句為準,包括有疊加屬性的apply子句,當多個節點都配置了這樣的子句,屬性不會全部疊加到路由上,而是以最後一個子句為準。

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

 

1.4  路由策略的顯示和維護

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

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

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

操作

命令

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

display ip as-path [ as-path-number ] [ | { begin | exclude | include } regular-expression ]

顯示BGP團體屬性列表信息

display ip community-list [ basic-community-list-number | adv-community-list-number | comm-list-name ] [ | { begin | exclude | include } regular-expression ]

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

display ip extcommunity-list [ ext-comm-list-number ] [ | { begin | exclude | include } regular-expression ]

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

display ip ip-prefix [ ip-prefix-name ] [ | { begin | exclude | include } regular-expression ]

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

display ip ipv6-prefix [ ipv6-prefix-name ] [ | { begin | exclude | include } regular-expression ]

顯示路由策略信息

display route-policy [ route-policy-name ] [ | { begin | exclude | include } regular-expression ]

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

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

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

reset ip ipv6-prefix [ ipv6-prefix-name ]

 

1.5  路由策略典型配置舉例

說明

缺省情況下,以太網接口、VLAN接口及聚合接口處於DOWN狀態。如果要對這些接口進行配置,請先使用undo shutdown命令使這些接口處於UP

 

1.5.1  在IPv4路由引入中應用路由策略

1. 組網需求

如下圖所示,Switch B與Switch A之間通過OSPF協議交換路由信息,與Switch C之間通過IS-IS協議交換路由信息。

要求在Switch B上配置路由引入,將IS-IS路由引入到OSPF中去,並同時使用路由策略設置路由的屬性。其中,設置172.17.1.0/24的路由的開銷為100,設置172.17.2.0/24的路由的Tag屬性為20。

2. 組網圖

圖1-1 在IPv4路由引入中應用路由策略組網圖

 

3. 配置步驟

(1)     配置各接口的IP地址(略)

(2)     配置IS-IS路由協議

# 配置Switch C。

<SwitchC> system-view

[SwitchC] isis

[SwitchC-isis-1] is-level level-2

[SwitchC-isis-1] network-entity 10.0000.0000.0001.00

[SwitchC-isis-1] quit

[SwitchC] interface vlan-interface 200

[SwitchC-Vlan-interface200] isis enable

[SwitchC-Vlan-interface200] quit

[SwitchC] interface vlan-interface 201

[SwitchC-Vlan-interface201] isis enable

[SwitchC-Vlan-interface201] quit

[SwitchC] interface vlan-interface 202

[SwitchC-Vlan-interface202] isis enable

[SwitchC-Vlan-interface202] quit

[SwitchC] interface vlan-interface 203

[SwitchC-Vlan-interface203] isis enable

[SwitchC-Vlan-interface203] quit

# 配置Switch B。

<SwitchB> system-view

[SwitchB] isis

[SwitchB-isis-1] is-level level-2

[SwitchB-isis-1] network-entity 10.0000.0000.0002.00

[SwitchB-isis-1] quit

[SwitchB] interface vlan-interface 200

[SwitchB-Vlan-interface200] isis enable

[SwitchB-Vlan-interface200] quit

(3)     配置OSPF路由協議及路由引入

# 配置Switch A,啟動OSPF。

<SwitchA> system-view

[SwitchA] ospf

[SwitchA-ospf-1] area 0

[SwitchA-ospf-1-area-0.0.0.0] network 192.168.1.0 0.0.0.255

[SwitchA-ospf-1-area-0.0.0.0] quit

[SwitchA-ospf-1] quit

# 配置Switch B,啟動OSPF,並引入IS-IS路由。

[SwitchB] ospf

[SwitchB-ospf-1] area 0

[SwitchB-ospf-1-area-0.0.0.0] network 192.168.1.0 0.0.0.255

[SwitchB-ospf-1-area-0.0.0.0] quit

[SwitchB-ospf-1] import-route isis 1

[SwitchB-ospf-1] quit

# 查看SwitchA的OSPF路由表,可以看到引入的路由。

[SwitchA] display ospf routing

 

          OSPF Process 1 with Router ID 192.168.1.1

                   Routing Tables

 

 Routing for Network

 Destination        Cost     Type    NextHop        AdvRouter     Area

 192.168.1.0/24     1562     Stub    192.168.1.1    192.168.1.1   0.0.0.0

 

 Routing for ASEs

 Destination        Cost     Type    Tag        NextHop        AdvRouter

 172.17.1.0/24      1        Type2   1          192.168.1.2    192.168.2.2

 172.17.2.0/24      1        Type2   1          192.168.1.2    192.168.2.2

 172.17.3.0/24      1        Type2   1          192.168.1.2    192.168.2.2

 192.168.2.0/24     1        Type2   1          192.168.1.2    192.168.2.2

 

 Total Nets: 5

 Intra Area: 1  Inter Area: 0  ASE: 4  NSSA: 0

(4)     配置過濾列表

# 配置編號為2002的ACL,允許172.17.2.0/24的路由通過。

[SwitchB] acl number 2002

[SwitchB-acl-basic-2002] rule permit source 172.17.2.0 0.0.0.255

[SwitchB-acl-basic-2002] quit

# 配置名為prefix-a的地址前綴列表,允許172.17.1.0/24的路由通過。

[SwitchB] ip ip-prefix prefix-a index 10 permit 172.17.1.0 24

(5)     配置路由策略

[SwitchB] route-policy isis2ospf permit node 10

[SwitchB-route-policy] if-match ip-prefix prefix-a

[SwitchB-route-policy] apply cost 100

[SwitchB-route-policy] quit

[SwitchB] route-policy isis2ospf permit node 20

[SwitchB-route-policy] if-match acl 2002

[SwitchB-route-policy] apply tag 20

[SwitchB-route-policy] quit

[SwitchB] route-policy isis2ospf permit node 30

[SwitchB-route-policy] quit

(6)     在路由引入時應用路由策略

# 配置Switch B,設置在路由引入時應用路由策略。

[SwitchB] ospf

[SwitchB-ospf-1] import-route isis 1 route-policy isis2ospf

[SwitchB-ospf-1] quit

# 查看Switch A的OSPF路由表,可以看到目的地址為172.17.1.0/24的路由的開銷為100,目的地址為172.17.2.0/24的路由的標記域(Tag)為20,而其他外部路由沒有變化。

[SwitchA] display ospf routing

 

          OSPF Process 1 with Router ID 192.168.1.1

                   Routing Tables

 

 Routing for Network

 Destination        Cost     Type    NextHop         AdvRouter     Area

 192.168.1.0/24     1        Transit 192.168.1.1     192.168.1.1   0.0.0.0

 

 Routing for ASEs

 Destination        Cost     Type    Tag         NextHop       AdvRouter

 172.17.1.0/24      100      Type2   1           192.168.1.2   192.168.2.2

 172.17.2.0/24      1        Type2   20          192.168.1.2   192.168.2.2

 172.17.3.0/24      1        Type2   1           192.168.1.2   192.168.2.2

 192.168.2.0/24     1        Type2   1           192.168.1.2   192.168.2.2

 

 Total Nets: 5

 Intra Area: 1  Inter Area: 0  ASE: 4  NSSA: 0

1.5.2  在IPv6路由引入中應用路由策略

1. 組網需求

·     在Switch A和Switch B上使能RIPng。

·     在Switch A上配置三條靜態路由,並設置在引入靜態路由時應用路由策略,使三條靜態路由部分引入、部分被屏蔽掉——20::/32和40::/32網段的路由是可見的,30::/32網段的路由則被屏蔽。

·     通過在Switch B上查看RIPng路由表,驗證路由策略是否生效。

2. 組網圖

圖1-2 在IPv6路由引入中應用路由策略組網圖

 

3. 配置步驟

(1)     配置Switch A

# 配置接口Vlan-interface100和Vlan-interface200的IPv6地址。

<SwitchA> system-view

[SwitchA] ipv6

[SwitchA] interface vlan-interface 100

[SwitchA-Vlan-interface100] ipv6 address 10::1 32

[SwitchA-Vlan-interface100] quit

[SwitchA] interface vlan-interface 200

[SwitchA-Vlan-interface200] ipv6 address 11::1 32

[SwitchA-Vlan-interface200] quit

# 在接口下使能RIPng。

[SwitchA] interface vlan-interface 100

[SwitchA-Vlan-interface100] ripng 1 enable

[SwitchA-Vlan-interface100] quit

# 配置三條靜態路由,其下一跳為11::2,保證靜態路由為active狀態。

[SwitchA] ipv6 route-static 20:: 32 11::2

[SwitchA] ipv6 route-static 30:: 32 11::2

[SwitchA] ipv6 route-static 40:: 32 11::2

# 配置路由策略。

[SwitchA] ip ipv6-prefix a index 10 permit 30:: 32

[SwitchA] route-policy static2ripng deny node 0

[SwitchA-route-policy] if-match ipv6 address prefix-list a

[SwitchA-route-policy] quit

[SwitchA] route-policy static2ripng permit node 10

[SwitchA-route-policy] quit

# 啟動RIPng協議並引入靜態路由。

[SwitchA] ripng

[SwitchA-ripng-1] import-route static route-policy static2ripng

(2)     配置Switch B

# 配置接口Vlan-interface100的IPv6地址。

[SwitchB] ipv6

[SwitchB] interface vlan-interface 100

[SwitchB-Vlan-interface100] ipv6 address 10::2 32

# 在接口下使能RIPng。

[SwitchB-Vlan-interface100] ripng 1 enable

[SwitchB-Vlan-interface100] quit

# 啟動RIPng協議。

[SwitchB] ripng

# 查看RIPng路由表。

[SwitchB-ripng-1] display ripng 1 route

   Route Flags: A - Aging, S - Suppressed, G - Garbage-collect

 ----------------------------------------------------------------

 

 Peer FE80::7D58:0:CA03:1  on Vlan-interface 100

 Dest 10::/32,

     via FE80::7D58:0:CA03:1, cost  1, tag 0, A, 18 Sec

 Dest 20::/32,

     via FE80::7D58:0:CA03:1, cost  1, tag 0, A, 8 Sec

 Dest 40::/32,

     via FE80::7D58:0:CA03:1, cost  1, tag 0, A, 3 Sec 

1.5.3  配置應用路由策略過濾接收的BGP路由

1. 組網需求

·     所有交換機均運行BGP協議,Switch A、Switch B和Switch C之間建立EBGP連接,Switch C和Switch D之間建立EBGP連接。

·     通過配置路由策略,使得Switch D拒絕接收來自AS 200的路由。

2. 組網圖

圖1-3 配置應用路由策略過濾接收的BGP路由

 

3. 配置步驟

(1)     配置接口IP地址(略)

(2)     配置BGP基本功能

# 配置Switch A。

<SwitchA> system-view

[SwitchA] bgp 100

[SwitchA-bgp] router-id 1.1.1.1

[SwitchA-bgp] peer 1.1.1.2 as-number 300

# 配置Switch B。

<SwitchB> system-view

[SwitchB] bgp 200

[SwitchB-bgp] router-id 2.2.2.2

[SwitchB-bgp] peer 1.1.2.2 as-number 300

# 配置Switch C。

<SwitchC> system-view

[SwitchC] bgp 300

[SwitchC-bgp] router-id 3.3.3.3

[SwitchC-bgp] peer 1.1.1.1 as-number 100

[SwitchC-bgp] peer 1.1.2.1 as-number 200

[SwitchC-bgp] peer 1.1.3.2 as-number 400

# 配置Switch D。

<SwitchD> system-view

[SwitchD] bgp 400

[SwitchD-bgp] router-id 4.4.4.4

[SwitchD-bgp] peer 1.1.3.1 as-number 300

[SwitchD-bgp] quit

# 配置Switch A,將網段路由4.4.4.4/24、5.5.5.5/24、6.6.6.6/24發布到BGP路由表中。

[SwitchA-bgp] network 4.4.4.4 24

[SwitchA-bgp] network 5.5.5.5 24

[SwitchA-bgp] network 6.6.6.6 24

# 配置Switch B,將網段路由7.7.7.7/24、8.8.8.8/24、9.9.9.9/24發布到BGP路由表中。

[SwitchB-bgp] network 7.7.7.7 24

[SwitchB-bgp] network 8.8.8.8 24

[SwitchB-bgp] network 9.9.9.9 24

# 查看Switch D的BGP路由表。

[SwitchD-bgp] display bgp routing-table

 

 Total Number of Routes: 6

 

 BGP Local router ID is 4.4.4.4

 Status codes: * - valid, > - best, d - damped,

               h - history,  i - internal, s - suppressed, S - Stale

               Origin : i - IGP, e - EGP, ? - incomplete

     Network            NextHop         MED        LocPrf     PrefVal Path/Ogn

 

 *>  4.4.4.0/24         1.1.3.1                               0       300 100i

 *>  5.5.5.0/24         1.1.3.1                               0       300 100i

 *>  6.6.6.0/24         1.1.3.1                               0       300 100i

 *>  7.7.7.0/24         1.1.3.1                               0       300 200i

 *>  8.8.8.0/24         1.1.3.1                               0       300 200i

 *>  9.9.9.0/24         1.1.3.1                               0       300 200i

從路由表可以看出,Switch D同時學到了來自AS 100的路由4.4.4.0/24、5.5.5.0/24、6.6.6.0/24和來自AS 200的路由7.7.7.0/24、8.8.8.0/24、9.9.9.0/24。

(3)     配置Switch D拒絕接收來自AS 200的路由。

# 在Switch D上配置編號為1的AS路徑過濾列表。

[SwitchD] ip as-path 1 permit .*200.*

# 在Switch D上配置名稱為“rt1”的路由策略,其節點序列號為1,匹配模式為deny,即拒絕接收來自AS 200的路由。

[SwitchD] route-policy rt1 deny node 1

[SwitchD-route-policy] if-match as-path 1

[SwitchD-route-policy] quit

# 在Switch D上配置名稱為“rt1”的路由策略,其節點序列號為10,匹配模式為permit,即可以接收來自其它AS的路由。

[SwitchD] route-policy rt1 permit node 10

[SwitchD-route-policy] quit

# 在Switch D上,配置對從對等體1.1.3.1接收的路由指定名稱為“rt1”的路由策略。

[SwitchD] bgp 400

[SwitchD-bgp] peer 1.1.3.1 route-policy rt1 import

# 查看Switch D的BGP路由表。

[SwitchD-bgp] display bgp routing-table

 

 Total Number of Routes: 3

 

 BGP Local router ID is 4.4.4.4

 Status codes: * - valid, > - best, d - damped,

               h - history,  i - internal, s - suppressed, S - Stale

               Origin : i - IGP, e - EGP, ? - incomplete

     Network            NextHop         MED        LocPrf     PrefVal Path/Ogn

 

 *>  4.4.4.0/24         1.1.3.1                               0       300 100i

 *>  5.5.5.0/24         1.1.3.1                               0       300 100i

 *>  6.6.6.0/24         1.1.3.1                               0       300 100i

從路由表可以看出,Switch D隻學到了來自AS 100的路由4.4.4.0/24、5.5.5.0/24、6.6.6.0/24。

1.6  常見錯誤配置舉例

1.6.1  無法實現IPv4路由信息過濾

1. 錯誤現象

路由協議運行正常的情況下無法實現路由信息過濾。

2. 分析

地址前綴列表的各個表項中至少應該有一個表項的匹配模式是permit模式。Route-policy的各個節點中至少應該有一個節點的匹配模式是permit模式。

3. 處理過程

(1)     使用display ip ip-prefix命令查看前綴列表的配置。

(2)     使用display route-policy命令查看路由策略的配置。

1.6.2  無法實現IPv6路由信息過濾

1. 錯誤現象

路由協議運行正常的情況下無法實現路由信息過濾。

2. 分析

地址前綴列表的各個表項中至少應該有一個表項的匹配模式是permit模式。Route-policy的各個節點中至少應該有一個節點的匹配模式是permit模式。

3. 處理過程

(1)     使用display ip ipv6-prefix命令查看前綴列表的配置。

(2)     使用display route-policy命令查看路由策略的配置。

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

BOB登陆
官網
聯係我們