天天看點

《Cisco BGP-4 指令與配置手冊》——1-3 aggregate-address address mask

本節書摘來異步社群《cisco bgp-4 指令與配置手冊》一書中的第1章,第1.3節,作者:【美】william r. parkhurst,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視

cisco bgp-4 指令與配置手冊

文法描述:

address:聚合路由的ip位址。

mask:聚合路由的掩碼。

route-map-name:路由映射名,該路由映射用來确定構成聚合路由的字首。

用途:在bgp表中建立聚合路由表項。隻有當bgp表中存在待建立聚合路由的明細路由時,才能建立出相應的聚合路由。如果不帶as-set選項,那麼構成聚合路由的明細路由的as路徑資訊便會丢失。這種形式的aggregate-address指令在通告聚合路由的同時,還會保留相應明細路由的as路徑屬性資訊。advertise-map用來确定在聚合路由中保留哪些as路徑資訊。

cisco ios軟體版本:10.0

配置案例:以來自不同自治系統的特定字首形成聚合路由

在圖1-5所示,路由器a從as 65530學得網絡172.16.0.0/24和172.16.1.0/24,從as 2學得網絡172.16.2.0/24和172.16.3.0/24。本例會使用advertise-map選項,根據接收自as 65530的路由,執行路由聚合。

《Cisco BGP-4 指令與配置手冊》——1-3 aggregate-address address mask

在路由器c和b上,各建立了2個loopback接口。隻有當bgp表中至少存在一條隸屬于聚合路由的明細路由時,bgp路由器才會通告該聚合路由。為了将聚合路由的明細路由置入bgp表,在路由器b和c上還得動用bgp network指令。在聚合與loopback接口相關的字首之前,有必要驗證明細路由是否已在路由器a、b、c的bgp表中現身。

《Cisco BGP-4 指令與配置手冊》——1-3 aggregate-address address mask

現在,修改路由器a的bgp配置,激活聚合路由的通告。

《Cisco BGP-4 指令與配置手冊》——1-3 aggregate-address address mask

這條聚合路由包含了4條明細路由,2條由as 65530通告,另外2條則來自as 2。路由器a應該能夠以自身為下一跳來通告這條聚合路由了,這也意味着路由的as路徑資訊的丢失。這條聚合路由的as路徑資訊表明:該字首源于as 1。在這條聚合路由的as_path屬性中,并不包含路由器b和c的as号,是以,這兩台路由器會接受該聚合路由。正常的bgp行為将會拒絕包含本方as号的所有路由更新。

《Cisco BGP-4 指令與配置手冊》——1-3 aggregate-address address mask
《Cisco BGP-4 指令與配置手冊》——1-3 aggregate-address address mask

假定我們隻想把聚合路由通告給as 2,而不想将其通告給as 65530。可通過在聚合路由的as路徑資訊中保留as 65530,同時将as 2剔除在外的方式來實作。advertise-map選項正是用來實作該任務的工具。修改路由器a的bgp配置,令聚合路由隻包含as 65530的路徑資訊。

《Cisco BGP-4 指令與配置手冊》——1-3 aggregate-address address mask

路由映射select-as的作用是:隻允許用源于as 65530的路由,形成聚合路由。是以,聚合路由的as路徑資訊隻包含了as号65530。使用ip as-path通路過濾器亦能起到相同的效果。

《Cisco BGP-4 指令與配置手冊》——1-3 aggregate-address address mask

驗證

驗證聚合路由的as路徑号是否隻包含了as路徑65530。

《Cisco BGP-4 指令與配置手冊》——1-3 aggregate-address address mask

此外,還需驗證這條聚合路由是否已被路由器b接受,被路由器c拒絕。

《Cisco BGP-4 指令與配置手冊》——1-3 aggregate-address address mask

故障排除

步驟1:使用show ip bgp neighbors指令來驗證bgp鄰居是否處于established狀态。如果鄰居關系不處于established狀态,請見8-23節。

步驟2:使用show ip bgp指令,弄清bpg表中是否至少有一條明細路由隸屬于待聚合網絡的位址範圍。

步驟3:若bgp表中至少擁有了一條這樣的明細路由,請跳到步驟5。

步驟4:若bgp表中沒有這樣的明細路由,請執行以下操作。

檢查bgp network指令的文法(位址和掩碼)。傳回步驟2。

若以重分發的方式在bgp中注入路由(直連、靜态,或igp路由),請確定開啟了no auto-summary特性。檢查重分發指令的文法。傳回步驟2。

步驟5:驗證是否存在過濾器阻擋了聚合路由的通告。

步驟6:驗證路由映射和通路清單或as路徑清單的文法。

繼續閱讀