BGP選路原則與專有命令的研究

 

如果存在通往同一目的網絡的多條BGP路由,那麼BGP會根據路由屬性,並按下列順序選擇最佳路徑。

1.忽略下一跳未知的路由

2.忽略未能同步的IBGP路由

3.優選具有最高權重的路由

4.優選具有最高本地優先級的路由

5.優選本機生成的路由

6.優選具有最短AS路徑的路由。
如果配置了bgp bestpath as-path ignore命令,則跳過這一步。帶as-set選項執行路由聚合時,無論AS聚合中的AS項有多少,都記爲1。不使用聯盟子AS號來確定AS路徑的長度。

7.優選具有最低起源代碼值的路由

8.優選具有最低MED值的路由:只能在由同一外部AS通告的多條路由之間比較MED值。

注意:

1. 如果使用了bgp always-compare-med命令,則會比較所有路徑的MED值。如果確需比較所有路徑的MED值,則在AS中的每臺BGP路由器上配置該命令。

2. 若配置了bgp bestpath med-confed命令,則只能對AS路徑屬性中含有AS聯盟序列的路由進行比較。

3.若收到的前綴(路由)未設MED值,BGP路由器會將該值指定爲0.若配置bgpbestpath and missing-as-worst命令,BGP路由器會以4294967294爲未設置MED值的路由賦值

9.EBGPIBGP路由之間,優選前者。

10.優選由最近的IGP鄰居通告的路由。

11.優選最先接收到的路由

12.優選由具有最低路由器ID的路由器通告的路徑。

 

BGP專有命令的一些分析

下面對這些命令進行分析:
1.bgp always-compare-med

2.bgpbestpath as-path ignore

3.bgpbestpath med missing-as-worst

4.bgpbestpath med confed

爲什麼要研究這些命令呢?因爲它與BGP的選路原則有關。

 

底層全用OSPF,在R1上將11.11.11.11宣告進BGP中,現在在R4上它優選哪一條路由呢?

R2!顯然是R2,但這裏注意,比較的並不是最小的router-id是比較的最近的IGP鄰居!

 

看第一個命令:bgpalways-compare-med。

如果兩條BGP路由as-path左邊第一個AS值不一樣,那麼就不比較MED值(默認),如果輸入這個命令仍然比較MED值。

現在我要優選走R3的路由,在R4上配置:
1.access-list 1 permit 11.11.11.11

2.route-mapmed permit 10

match ip address 1

set metric 100

route-mapmed permit 20

3.neighbor2.2.2.2 route-map med in

bgp always-compare-med

只要將來自於R2的BGP路由的MED值改大就可以了。

Network         Next Hop    Metric   LocPrf   Weight    Path

*>11.11.11.11/32  3.3.3.3                          0   3 1 i

*                  2.2.2.2             100         0   2 1 i

 

看第二條命令:bgpbest-path as-path ignore

我的IOS裏沒有這條命令

但我們分析一下,如果在R2上輸入這命令,那麼它將不比較AS-PATH的長度,從而選擇R4(比較到了最近的IGP鄰居)

 

看第三條命令:bgpbestpath med missing-as-worst

在R4上配置,它的作用是如果宣告個R4的路由不帶MED屬性,那麼它就將MED屬性變爲4294967295。

現在我將R2通告給R4的路由MED設爲10,看到R4上如下現象:

Network           Next Hop    Metric    LocPrf    Weight    Path

*11.11.11.11/32    3.3.3.3    4294967295                0   3 1 i

*>                 2.2.2.2     10                       0   2 1 i

突然想到一個問題:R2上收到幾條BGP路由?爲什麼?

 

第四條命令:bgpbestpath med confed

一開始R1向R2通告一條路由MED爲10,R3向R2通告一條路由MED爲5.

R2#showip bgp

Network           Next Hop        Metric     LocPrf     Weight  Path

*13.13.13.13/32   3.3.3.3           5          100         0  (3) i

*>                1.1.1.1           10         100         0 (1) i

顯然不同的自治系統之間是不比較MED值的。

但是鍵入命令:bgpbestpath med confed

現象:比較了MED值

R2#showip bgp

Network           Next Hop    Metric   LocPrf Weight Path

*13.13.13.13/32    1.1.1.1     10        100    0 (1) i

*>                  3.3.3.3     5        100    0 (3) i

 

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