1. 程式人生 > 實用技巧 >BGP 聯邦

BGP 聯邦

BGP 聯邦 confederation

BGP 聯邦,

此聯邦非彼聯邦,不是那個FBI啊,這裡的聯邦其實很好解決,就是聯成一邦

我個人的理解,其作用有二

1 可以將一個大的IBGP環境進行分割,從而實現更加精確的管理和維護

2 可以解決ibgp的水平分割問題(但真正的解決方法不喜歡用這個,還是RR為王道,配置更加簡單)

BGP聯邦中的名詞

聯邦AS 對外宣稱的總AS

成員AS 聯邦內部的小AS

聯邦IBGP 相同成員AS內部的鄰居關係

聯邦EBGP 一個聯邦AS內部不同成員AS之間的鄰居關係

另外,成員AS號只會在聯邦AS內部進行傳遞,當出聯邦AS的時候不會被標記

核心配置命令

RX(config)#router bgp xxx     //最開始的時候使用成員AS號啟用BGP程序 

RX(config-router)#bgp confederation identifier xxx    //指定自己的總聯邦AS 

RX(config-router)#bgp confederation peers xxx   //聯邦成員AS邊界裝置和其它成員AS邊界裝置建立聯邦EBGP關係時,要手動指定鄰居是誰,這裡跟對方的AS號(聯邦成員AS)

另外,在實際工作中,在配置成員AS時,最好是使用私有AS號, 64512 – 65535 之間

配置例項

R2-R3-R4-R5 同處as 2345的聯邦AS內,

R2-R3為as 64512的成員AS中,關係為聯邦IBGP

R4-R5為as 64513的成員AS中,關係為聯邦IBGP

R2-R4 為AS2345的聯邦EBGP關係。

我們只挑選中R1,R2,R3,R4的配置

R1(config-router)#router bgp 100
R1(config-router)#bgp rou 1.1.1.1
R1(config-router)#nei 2.2.2.2 remote 2345
R1(config-router)#nei 2.2.2.2 up lo 1
R1(config-router)#nei 2.2.2.2 ebgp-multihop
R1(config
-router)#exit R1上都是一些基礎的配置,不用看了

R2(config)#router bgp 64512     //使用成員AS開啟程序
R2(config-router)#bgp rou 2.2.2.2
R2(config-router)#bgp confederation identifier 2345    //宣告主聯邦AS
R2(config-router)#nei 1.1.1.1 remote 100
R2(config-router)#nei 1.1.1.1 up lo 1
R2(config-router)#nei 1.1.1.1 ebgp   //多跳
R2(config-router)#nei 3.3.3.3 remote 64512   //和相同的成員as 建立聯邦的ibgp關係
R2(config-router)#nei 3.3.3.3 up lo 1
R2(config-router)#nei 4.4.4.4 remote 64513  //指定不同的成員AS
R2(config-router)#nei 4.4.4.4 up lo 1
R2(config-router)#nei 4.4.4.4 ebgp
R2(config-router)#bgp confederation peers 64513  //聯邦EBGP需要手動指定peers

R3(config-router)#router bgp 64512
R3(config-router)#bgp rou 3.3.3.3
R3(config-router)#bgp confederation identifier 2345  //同樣的操作,宣告主AS
R3(config-router)#nei 2.2.2.2 remote 64512
R3(config-router)#nei 2.2.2.2 up lo 1    //R3的配置和往常一樣,沒什麼區別。

R4(config-router)#router bgp 64513
R4(config-router)#bgp rou 4.4.4.4
R4(config-router)#nei 2.2.2.2 remote 64512
R4(config-router)#nei 2.2.2.2 ebgp
R4(config-router)#nei 2.2.2.2 up lo 1
R4(config-router)#bgp confederation peers 64512
R4(config-router)#nei 5.5.5.5 remote 64513
R4(config-router)#nei 5.5.5.5 up lo 1
R4(config-router)#nei 6.6.6.6 remote 600
R4(config-router)#nei 6.6.6.6 up lo 1
R4(config-router)#nei 6.6.6.6 ebgp-multihop

其實最主要的就是那三條命令

下面我們來宣告一個字首進來,看看會發生什麼

 R1(config-router)#network 100.1.1.0 mas 255.255.255.0

我們到R3上看一下這個條目

可以看到所經過的只有AS100,為啥r2的64512沒有出現呢

你不要忘了r2和r3此時是ibgp的關係。在AS內部根本就不可能發生變化的

那麼如果我們在R5上檢視呢

可以看到,不管你是聯邦的EBGP還是普通EBGP,只要你經過了AS,那麼就會被打上標記。

()括號內的就是所經過的聯邦成員號碼。

最後我們再到R6上看一下

看到了吧,在path的屬性裡,聯邦成員AS是不會被傳遞出來的。

說來說去一大堆,還是喜歡RR反射器

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

CCIE成長之路 ---梅利