一、BGP的宣告問題:
1、若通過BGP協議傳遞的路由條目與本地通過其他協議學習到的條目目標一致,將出現:
(1)該路由同時作為與其他BGP鄰居建立鄰居關系時的底層路由,那么這條BGP路由將不優,不能傳遞也不能加表
(2)該路由不作為建立其他BGP鄰居的路由,將在本地不加表,但可以傳遞,屬于優的路由;
例:
(1)R2與R3運行了OSPF,之后R2學習到的R3的32位環回主機路由,再將R2與R3建立BGP的鄰居關系;
(2)之后R3在BGP協議中宣告了32位的環回路由,那么該條目到達R2后,將不優; --BGP的建鄰路由與BGP的傳遞路由相同;
(3)在R2與R3建立鄰居關系時,ospf將R3環回以32位傳遞,但BGP使用24位來傳遞該環回路由的話,那么等于BGP建鄰為32位,bgp傳遞為24位,不是同一條路由,可以優,可以傳遞,也可以加表。
注:以上問題在華為設備將出現,但cisco中若bgp傳遞路由在本地路由表中已經通過其他IGP擁有,將被標記為r-RIB 不裝載—本地不加表,但可以傳遞;
2、在BGP協議中進行宣告時,是宣告本地路由表中任意路由,不關注這些條目的產生方式;
默認將攜帶這些路由的cost值到BGP的路由條目中去;若本地將本地宣告的BGP路由傳遞給本地的EBGP鄰居,將攜帶這些cost,便于本地的EBGP鄰居所在AS內部設備選路,當然該路由在進入其他AS時不會修改度量;
若本地通過IBGP鄰居學習到了BGP路由,優且存在cost值,在本地將這些路由傳遞給本地的EBGP鄰居時,將cost值歸0,因為這些度量不是本地產生的。
例:
(1)R2與R1為EBGP鄰居,那么R2宣告本地通過OSPF協議學習到的路由4.4.4.4/32度量為2,那么這條路由在進入BGP表時攜帶度量值2,傳遞給R1,R1在路由表中顯示該度量,同時傳遞給R1內部AS時度量不變;
(2)該拓撲中R2與R4為IBGP鄰居,這條BGP路由也會被R2傳遞給R4,但R4 再將該路由傳遞給R4的EBGP鄰居關系R5時,將度量歸0;
(3)若R4也宣告4.4.4.4/32這條路由,那么傳遞給R5時將攜帶R4到達該網段的cost值,因為只有本地最優路由可以傳遞,本地宣告優于其他鄰居傳遞過來的BGP路由。
總結:
存在EBGP鄰居關系(連接其他的AS)的所有BGP設備均建議宣告內部AS的路由;
二、重發布
BGP協議宣告的路由,基本是本地通過IGP學習到的本as路由;數量較大,若逐條宣告,配置量很大,但可控性強; 也可以在同時運行BGP和igp的設備,將IGP協議重發布到BGP協議中,來實現批量的路由宣告效果;
宣告相當于逐條的重發布,重發布相當于批量的宣告;兩者產生的路由條目,起源屬性不同,其他屬性默認完全一致;
總結:
存在EBGP鄰居關系(連接其他的AS)的所有BGP設備均建議重發布IGP到BGP;
三、自動匯總
默認cisco和華為設備均關閉了自動匯總
自動匯總對于BGP正常通過network宣告產生的路由沒有影響;
僅針對從IGP重發布到BGP的路由條目產生影響;--- 路由條目以主類長度發送,不攜帶cost值;
[r1]bgp1 [r1-bgp]summaryautomatic開啟自動匯總,建議維持默認關閉狀態
四、手工匯總—聚合
1、 利用了BGP的宣告的特點,本地路由表中任意路由,不關注來源均可以宣告到BGP中;
不用逐一宣告明細路由,先本地手工靜態一條指向匯總網段的空接口防環路由,然后再將其宣告到BGP協議中來;從IGP表中宣告到BGP協議中的條目,僅攜帶目標網絡號和度量值;
例:先在R1上手寫兩條環回路由分別為 99.1.1.1/24 和 99.1.2.1/24,再將兩條路由匯總網段指向空接口,然后將網段宣告到BGP協議中。
在R2上查看:
聚合的缺點是將多個網絡號合成一個,導致訪問整個聚合網段時,僅存在唯一的路徑;
若在多路徑建鄰的前提下,將無法精確的選路;故在大型的多鏈路的網絡中為了更好控制選路,必然在傳遞聚合條目的同時,再在最佳路徑處傳遞部分的明細路由。
若需要在傳遞聚合條目的同時,傳遞部分明細路由,只需要在宣告的空接口路由后,逐一宣告需要的明細路由即可。
以上做法的缺點是:不能攜帶原有明細路由的cost值,因為宣告的是本地路由表中人為添加那條靜態空接口路由。
2、 標準的BGP路由聚合—先逐一手工宣告明細,或批量重發布路由;再進行聚合配置,默認在本地生成空接口防環路由
[r1-bgp]aggregate99.1.0.022聚合和所有明細路由均發送 [r1-bgp]aggregate99.1.0.022detail-suppressed抑制所有的明細路由,僅發送聚合條目

如果直接配置聚合和所有明細路由,在R2上查看:
會發現聚合和所有明細路由均會被傳遞,也意味著所有明細路由會被加表
如果在聚合路由后邊加上抑制明細:
然后查看R1的BGP表,發現所有明細均被抑制
查看R2的BGP表:往下只發送聚合路由
使用該方法配置聚合會在該路由器R1上自動生成一條匯總網段指向空接口的放環路由
以上操作方法:若需要在發送聚合條目的同時攜帶部分的明細路由,需要使用策略
五、路由控制
1、 抑制列表
抑制列表——默認傳遞所有明細和聚合條目,通過抑制列表,限制不需要傳遞的明細路由。
如果只抑制 99.1.2.1/24 這條路由,首先抓取路由
[r1]ipip-prefixapermit99.1.2.124 [r1]route-policyaapermitnode10 [r1-route-policy]if-matchip-prefixa
進入BGP協議并做策略抑制該路由
[r1]bgp1 [r1-bgp]aggregate99.1.0.022suppress-policyaa在傳遞聚合條目的同時,抑制99.1.2.1/24這一條明細,其他明細正常轉發

在BGP協議中進行匹配抑制目標路由
查看R1的BGP表:只有目標路由被抑制
查看 R2的BGP表:被抑制的路由并沒有往下傳遞
2、使用路由策略在鄰居間直接進行收發路由的管理
[r1]ipip-prefixwpermit99.1.2.124 [r1]route-policywwdenynode10 [r1-route-policy]if-matchip-prefixw [r1-route-policy]q [r1]route-policywwpermitnode20 [r1]bgp1 [r1-bgp]aggregate99.1.0.022 [r1-bgp]peer12.1.1.2route-policyqqexport
抓取目標路由并在路由策略中進行抑制
然后做一個空表放過所有:
進入BGP中宣告聚合條目并在鄰居出口的方向執行該路由策略:
R2上查看BGP表:目標路由被抑制
3、 直接使用前綴列表來實現方法的功能
[r1]ipip-prefixedeny99.1.2.124 [r1]ipip-prefixepermit0.0.0.00le32 [r1]bgp1 [r1-bgp]peer12.1.1.2ip-prefixeexport
使用前綴列表拒絕目標路由并允許所有路由:
在BGP協議中的鄰居出口的方向執行該前綴列表策略
在R2上查看BGP表
六、有條件的打破IBGP水平分割
IBGP水平分割,用于避免在一個AS內部由IBGP鄰居間產生的環路;
規則:從一個iBGP鄰居處學習到的BGP路由不能傳遞給下一個IBGP鄰居;因為BGP的非直連建鄰能力,因此可以在一個AS內部建立多個鄰居來實現連接關系備份的作用;故正常一臺設備只要運行bgp,那么應該處于AS的邊界,存在ebgp鄰居;
所有運行bgp協議的設備正常都會從其他AS學習到路由條目,然后共享到本地所在的AS,由于IBGP水平分割,導致本地需要和所有AS內部的BGP設備建立IBGP鄰居關系;
IBGP鄰居關系的數量成指數上升;
所謂有條件的打破是指在打破IBGP水平分割的時候,不能產生環路;--AS-BY-AS
1. 路由反射器 -- RR(反射器)、客戶端、非客戶端;
客戶端、非客戶端必須分別為RR的IBGP鄰居關系;三種角色構建為一個簇(組);
一個簇內可以存在多臺設備,但至少一個簇內存在一個RR和一個客戶端;
規則:
1)RR從一臺EBGP鄰居處學習到的路由可以共享給本地的其他客戶端、非客戶端、EBGP鄰居;
2)RR從一臺客戶端鄰居處學習到的路由可以共享給本地的其他客戶端、非客戶端、EBGP鄰居;
3)RR從一臺非客戶端鄰居處學習到的路由可以共享給本地的其他客戶端、EBGP;不能共享給其他的非客戶端;
注: 被反射路由,在反射過程中,其屬性不發生任何變化;若RR接收的條目不優,不具備傳遞性,將不被反射;
在上邊拓撲圖中,將R3作為反射器,R2作為它的客戶,再R3上配置下邊一條命令即可
[r3-bgp]peer 2.2.2.2 reflect-client ibgp鄰居2.2.2.2成為本地的客戶端,同時本地成為RR
然后將R1環回路由宣告,查看路由的傳遞:
可以看到R3作為RR可以將IBGP學到的路由傳給R4和R5
在拓撲圖中,R4和R5均為非客戶,如果將R4環回宣告看一下效果:
可以看到只有R5不能學到R4宣告的路由,因為非客戶之間是不能傳遞路由的
2. 聯邦---將一個大as邏輯分為多個小as;小AS使用私有AS號,小AS間為聯邦內的ebpg鄰居關系,可以像EBGP一樣傳遞路由,但不能修改屬性; 對于聯邦外的AS,只能看到大AS號;
所有的啟動,建鄰、管理均基于小AS號進行
聯邦內所有設備需要聲明自己所在的大AS號
小AS間的ebgp鄰居需要互指對端的小as號
[r3]bgp64512 [r3-bgp]router-id3.3.3.3 [r3-bgp]confederationid2聲明本地的大AS號 [r3-bgp]confederationpeer-as64513對端小AS號 [r3-bgp]pe2.2.2.2as-number64512 [r3-bgp]pe2.2.2.2connect-interfaceLoopBack0 [r3-bgp]pe4.4.4.4as-number64513 [r3-bgp]pe4.4.4.4connect-interfaceLoopBack0 [r3-bgp]pe4.4.4.4ebgp-max-hop2
查看配置(R2-R5):
R2:
R3:
R4:
R5:
注: 在實際工程中,路由器反射器與聯邦技術是結合在一個拓撲中共同使用的。
審核編輯:劉清
-
路由器
+關注
關注
22文章
3824瀏覽量
116162 -
OSPF協議
+關注
關注
0文章
18瀏覽量
9531 -
BGP
+關注
關注
0文章
85瀏覽量
15617 -
反射器
+關注
關注
0文章
48瀏覽量
12380
原文標題:BGP 知識點總結,網絡工程師收藏!
文章出處:【微信號:網絡技術干貨圈,微信公眾號:網絡技術干貨圈】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
C語言程序小知識點總結
開關電源模塊知識點總結

評論