BGP路由反射器RR

曾子曰:“吾日三省吾身:爲人謀而不忠乎?與朋友交而不信乎?傳不習乎?”
在這裏插入圖片描述


EBGP 對等體之間是不存在 BGP 路由反射器的概念的。

對於大型網絡來說,使用路由反射器可以大大減少 IBGP 對等體關係的數量。路由反射器的使用,會明顯減少配置工作量,人爲出錯的可能性也會大大降低。

一、拓撲

在這裏插入圖片描述

二、基礎配置與分析

底層配置如圖所示,在此不一一列舉;

1、所有設備爲 BGP 設備

EBGP:AR-8----AR-1;AR-9----AR-2
IBGP:按需建立

2、在 AS-100 配置 RR,AR-2 與 AR-5 作爲發射器集羣內的 RR

RR:AR-2;AR-5
集羣 ID(Cluster-ID):2.2.2.2
Client 客戶機:AR-3;AR-4
NO-Client 非客戶機:AR-1;AR-6

AR-2

[AR-2-bgp]dis th
[V200R003C00]
#
bgp 100
 router-id 2.2.2.2
 peer 29.1.1.9 as-number 300 
 group RR1 internal                    //創建名稱爲RR1的IBGP對等體組
 peer RR1 connect-interface LoopBack0  //向名稱爲RR1的對等體組的成員通告建立鄰居時使用環回口作爲數據更新源
 peer 1.1.1.1 as-number 100 
 peer 1.1.1.1 group RR1                //將鄰居1.1.1.1加入此BGP對等體組
 peer 3.3.3.3 as-number 100 
 peer 3.3.3.3 group RR1 
 peer 4.4.4.4 as-number 100 
 peer 4.4.4.4 group RR1 
 peer 5.5.5.5 as-number 100 
 peer 5.5.5.5 group RR1 
 peer 6.6.6.6 as-number 100 
 peer 6.6.6.6 group RR1 
 #
 ipv4-family unicast
  undo synchronization
  reflector cluster-id 2.2.2.2   //指定本設備的集羣ID爲1.1.1.1(默認集羣ID爲RR的-RID)
  peer 29.1.1.9 enable
  peer RR1 enable
  peer RR1 reflect-client        //指定此組成員爲我的客戶端
  peer RR1 next-hop-local        //向名稱爲RR1的對等體組的成員通告bgp路由的下一跳屬性爲本端
  peer 1.1.1.1 enable
  peer 1.1.1.1 group RR1 
  peer 3.3.3.3 enable
  peer 3.3.3.3 group RR1 
  peer 3.3.3.3 reflect-client
  peer 4.4.4.4 enable
  peer 4.4.4.4 group RR1 
  peer 4.4.4.4 reflect-client     //指定鄰居爲我的客戶機
  peer 5.5.5.5 enable
  peer 5.5.5.5 group RR1 
  peer 6.6.6.6 enable
  peer 6.6.6.6 group RR1 
#
return

AR-5

[AR-5-bgp]di th
[V200R003C00]
#
bgp 100
 router-id 5.5.5.5
 group RR2 internal
 peer 1.1.1.1 as-number 100 
 peer 1.1.1.1 group RR2 
 peer 2.2.2.2 as-number 100 
 peer 2.2.2.2 group RR2 
 peer 3.3.3.3 as-number 100 
 peer 3.3.3.3 group RR2 
 peer 4.4.4.4 as-number 100 
 peer 4.4.4.4 group RR2 
 peer 6.6.6.6 as-number 100 
 peer 6.6.6.6 group RR2 
 peer 6.6.6.6 connect-interface LoopBack0
 #
 ipv4-family unicast
  undo synchronization
  reflector cluster-id 5.5.5.5
  peer RR2 enable
  peer RR2 reflect-client
  peer RR2 next-hop-local 
  peer 1.1.1.1 enable
  peer 1.1.1.1 group RR2 
  peer 2.2.2.2 enable
  peer 2.2.2.2 group RR2 
  peer 2.2.2.2 reflect-client
  peer 2.2.2.2 next-hop-local 
  peer 3.3.3.3 enable
  peer 3.3.3.3 group RR2 
  peer 3.3.3.3 reflect-client
  peer 4.4.4.4 enable
  peer 4.4.4.4 group RR2 
  peer 4.4.4.4 reflect-client
  peer 6.6.6.6 enable
  peer 6.6.6.6 group RR2 
#
return

路由刷新

<AR-2>refresh bgp all import            //本BGP設備所有鄰居發我的數據重新請求更新
<AR-2>refresh bgp group RR1 import      //對本BGP組爲AAA下的所有鄰居發我的路由請求更新
<AR-2>refresh bgp 12.1.1.1 import       //針對鄰居12.1.1.1發我的路由請求重新更新

3、經圖示中的環回口地址宣告進 BGP,確保 所有 BGP 成員獲得這些環回口的路由

[AR-8]bgp 200
[AR-8-bgp]net 8.8.8.8 32
AR 4、6、9 設備配置類似

在這裏插入圖片描述

BGP 水平割:發出的路由的不再接收
EBGP:不再接收帶有自己 AS 號 BGP 路由
IBGP:從 IBGP 鄰居學到的路由,不會再發送給其他的 IBGP 鄰居

4、BGP配置RR之後是如何防止環路的。

在這裏插入圖片描述
在 R2 上關於 Originator 和 Cluster List 這兩個屬性。Qriginator 屬性的作用是防止路由在反射器和客戶端/非客戶端之間出現環路。路由第一次被反射的時候, 反射會將 Originator屬性加入這條路由中,用 BGP Router-ID 表示,用來標識這條路由的起源路由器。如果路由中已經存在 Originator 屬性,則反射器不會創建新的 Originator。當其他 BGP 對等體接收到這條路由時,將對收到的 Originator 和本地的 BGP Router-ID 進行比較,如果兩者相同,BGP 對等體將會忽略掉這條路由,不做處理。Originator 屬性可以傳遞給其他的Cluster,路由在AS內傳遞時該屬性不會丟失。

Cluster List 屬性可用來防止 Cluster 間的路由環路。當路由反射器在客戶端之間或客戶端與非客戶端之間反射路由時,會將自己的 Cluster-ID 添加到 Cluster List 中。路由反射器接收到 BGP 路由後會去檢查其中的 Cluster List, 如果發現自己的 Cluster-ID 位於 Cluster List 中,則表明出現了路由環路,因而會忽略該路由。AS 內的每臺路由反射器都採用了一個唯一的 4 個 8 位組來標識 Cluster-ID,如果 Cluster 中包含了多臺路由反射器,則必須以手工的方式爲每臺路由反射器配置 Cluster-ID。

三、BGP13條選路原則

1、Next Hop

2、PrefVal(Preferred Value 優選值最高的路由,私有屬性,本地有效)

3、LocPrf(Local Preference 優選本地優先級最高的路由)

4、本地起源屬性,手動聚合路由>自動聚合路由>IGP>BGP

5、AS_Path(優選短的路由)

6、Origin i>e>?

7、MED(優選MED值小的)

8、EBGP>IBGP

9、在AS內優先選擇IGP開銷最小的路由

10、Cluster-list(優選最短的路由)

11、Origin-ID(越小越好)

12、優選RID最小的路由

13、優選鄰居接口地址最小的路由

四、BGP路由反射器RR

BGP的RR-路由反射器

1、作用:

解決在大型BGP網絡中一個AS內IBGP鄰居衆多,受IBGP防環機制影響,從IBGP鄰居學到的BGP路由不能再傳給其他IBGP鄰居而導致的路由不能全網傳遞的問題。

2、原理:

多臺IBGP設備與一臺中心IBGP設備建立鄰居,由這臺中心路由器將學到的BGP路由反射給所有與他連接的BGP設備,這樣就避免AS內所有BGP設備都形成鄰居的局面。

3、角色

(1)RR:路由反射器-Route Reflector

允許把從IBGP對等體學到的路由反射到其他IBGP設備,主要用來反射路由給相應的客戶機。

(2)Client:客戶機

與RR形成反射鄰居關係的IBGP設備,由RR決定哪些IBGP鄰居成爲客戶機(成爲客戶機的設備並不知道自己是client,只是與RR正常建立IBGP鄰居)

(3)Non-Client:非客戶機

既不是RR也不是客戶機的IBGP設備。在AS內部非客戶機與RR之間以及所有的非客戶機之間必須建立全連接的鄰居關係

(4)Originantor:始發者

在AS內始發路由的設備,Originator-ID屬性用作集羣內產生的路由環路

(5)Cluster:集羣

路由反射器及其客戶機集合。Cluster-List屬性用於防止集羣之間產生環路默認情況下Cluster-List是集羣內RR的R-ID(clsustet-list id可以自定義)的集合體,類似於AS-Path的AS號集合體,一個集羣收到帶有本集羣號的BGP路由不接收。

4、RR的鄰居關係

(1)RR要和AS內的所有IBGP設備建立鄰居
(2)所有的非客戶機要建立全連接的IBGP鄰居

5、RR發佈路由規則

RR打破了IBGP的水平分割,採用Cluster-list屬性和Originator-ID屬性防止環路。
(1)從非客戶機學到的路由,反射給所有客戶機:
(2)從客戶機學到的路由,反射給所有的非客戶機和客戶機(不向發起此路由的客戶機發送此路由)
(3)從EBGP對等體學到的路由,發送給所有的客戶機和非客戶機。

6、注意

RR反射器無法針對反射發出方向修改路由屬性

7、防環

(1)客戶機與RR之間通過Originantor ID屬性防環:客戶機拒絕接收Originantor ID和自己R-ID重複的路由
(2)RR之間的防環採用Cluster list:RR反射器不接帶有自己RR集羣的Cluster 屬性的路由

8、RR反射器

(1)從非客戶機學到BGP路由會反射給所有的客戶機
(2)從客戶機學到BGP路由會反射給所有的客戶機與非客戶機
反射的BGP路由在RR反射器無法注入策略
發送的BGP路由在RR反射器可以部署策略

(3)從EBGP學到的BGP路由會發送給所有的客戶拒與非客戶機

五、備份路由反射器

爲增加網絡的可靠性,防止單點故障對網絡造成影響,有時需要在一個集羣中配置一個以上的RR。由於RR打破了從IBGP對等體收到的路由不能傳遞給其他IBGP對等體的限制,所以如果同一集羣內存在多個RR,則它們之間中又可能存在環路,因此這裏又規定,同一集羣中的所有RR必須使用相同的Cluster ID,以避免RR之間的路由環路。
在這裏插入圖片描述

本人所有文章都受版權保護,著作權歸藝博東所有!未經授權,轉載必究或附上其原創鏈接。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章