實驗詳解BGP的選路規則(華爲設備)

實驗需求

1.選路原則不能重複使用
2.每個路由器另外開一個迴環100,把地址宣告進bgp,以迴環100的地址判斷選路
3.EBGP使用直連建立鄰居,IBGP使用迴環0,選路的時候最好精確匹配然後做策略。

根據實際情況將上圖的第一條改成3路由器、第5,6條改成6、5路由器

 

實驗拓撲爲:

AS1與其他EBGP鄰居間的地址用的是10.1.X.Y/24

AS2與其他EBGP鄰居間的地址用的是10.2.X.Y/24

 

配置完OSPF於BGP後,解決下一跳屬性導致路由不優的問題

更改下一跳屬性,即通過EBGP鄰居學習到的路由傳遞給IBGP鄰居時下一跳屬性不發生改變,導致路由不優,不會加表,則在R1 R2 R3 R4 R5 R6對自己的的IBGP鄰居要更改下一跳屬性

 

接下來在每個路由器的BGP協議內宣告用於測試的環回1

 

 以上就是BGP的部署,接下來完成實驗的需求

需求:

AS1AS2選擇2路由器出去

查看R3 R4此時的路由表,可見R3此時學習AS1的路由走的是R1,與預期不符

解決:   

在R3上,把從R4傳遞來的AS1的路由的Preference_Value增大,這樣,R3就會從R4學習AS1的路由

注意:  因爲該屬性爲私有不傳遞屬性,故調用時,只能在入向調用,來影響本地的BGP生成

 

 

配置:

抓取AS1的流量(用於測試的環回1)

製作策略

調用(對IBGP鄰居R4的入向調用)

 

查看R3的路由表,可見與預期相符

因爲其他屬性的存在,導致R4學到的AS1路由就是從R2傳遞來的

 

AS2AS1選擇3路由器出去

查看R1 R2此時的路由表,可見R2此時學習AS2的路由走的是R4,與預期不符

解決:   

優選本地優先級(Local_Preference)最高的路由。最常干涉IBGP關係的選路

注意:  因爲該屬性爲私有不傳遞屬性,故調用時,只能在入向調用,來影響本地的BGP生成

部署位置:

改大:

R1EBGP接口入方向將AS2的流量LP增大

R1IBGP接口出方向將AS2的流量LP增大

R2IBGP接口入方向將AS2的流量LP增大

 

改小:

R2EBGP接口入方向將AS2的流量LP減小

 

下面將分別對以上四種方法進行實驗測試:

a.R1的EBGP接口入方向將AS2的流量LP增大

抓取:

製作策略:

對EBGP鄰居入方向調用策略:

R2上查看路由表,可見與預期相符

 

b. R1的IBGP接口出方向將AS2的流量LP增大

對IBGP鄰居出方向調用策略:

R2上查看路由表,可見與預期相符

 

c. R2的IBGP接口入方向將AS2的流量LP增大

抓取流量(AS2的):

製作策略:

對IBGP鄰居入方向調用策略:

R2上查看路由表,可見與預期相符

d.R2的EBGP接口入方向將AS2的流量LP減小

製作策略:(將EBGP傳遞進來的AS2的路由的LP減小)

對EBGP鄰居入方向調用策略:

查看R2的路由表,可見R2優選的是從R1傳遞來的LP大的(100),還可以看到對R4傳遞來的LP爲更改後的70

 

 

AS1AS3選擇5路由器進入

R5的BGP路由表

 

R6的BGP路由表

 

R7的BGP路由表

 

問題:

可見,R6路由器出現問題,並且R6沒有通過R7學習到R5傳遞的路由,這是因爲IBGP水平分割的原因,R7通過IBGP鄰居R5學習到的路由時不會傳遞給R6這個IBGP鄰居的

解決:

1.路由反射器  

2.EBGP聯邦

這裏我採用路由反射器,即將R7作爲反射器,R5 R6作爲R7客戶端

此時R6就可以通過R5來學習到AS1的路由

 

解決:

優選AS_Path短的路由。

注意:EBGP/IBGP關係均可被幹涉,但只能在EBGP鄰居間修改

 

思路:

在R6來連接R2的EBGP鄰居的接口上將AS1的流量AS-Path加長

 

配置:

抓取流量:

製作策略(將AS1的流量從EBGP鄰居過來時把AS-Path加大)

 

在R6上對EBGP鄰居的入方向調用策略

 

查看R6的BGP路由表,可見與預期相符

 

AS2AS3選擇6路由器進入

R5的BGP路由表:

R6的BGP路由表:

R7的BGP路由表:

 

可見,R5、R7的路由表存在問題

解決:

MED多出口的鑑別屬性

對於來自同一AS的路由,優選MED值小的

注意:最常用於干涉EBGP選路的屬性

常常用於ASx干涉ASyASx的選路,即我去影響別人對我自己的選路

 

部署思路:

在R4上對EBGP鄰居R5的MED值改大(大於默認的0),這樣R5 R7就不會通過R4—R5學習AS2的路由了,只會通過R6來學習。

配置步驟:

抓取流量:

配置策略(加大MED,即cost)

在與EBGP鄰居R5的出接口調用

查看R5 R7的路由表,可見與預期相符

 

 

AS3AS1選擇6路由器出去

查看R1 R2的BGP路由表,可見R2路由表有問題

 

解決:

在R5傳遞給R2這個EBGP鄰居時,將起源碼修改爲

? - incomplete

部署步驟:

抓取路由(AS3的路由)

製作策略(將匹配到的路由修改起源碼爲?)

在R5的連接EBGP鄰居的出向上調用策略:

 

 

查看R2的路由表,可見優選了來自R6的起源碼爲i的路由

 

AS3AS2選擇6路由器出去

查看R3 R4

 

解決:

在R4上增加從R5學習AS3路由的AS-Path

抓取路由

製作策略(增加AS-Path)

R4對於R5這個EBGP的入接口調用

 

查看R4的路由表,可見與預期相符


 

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