實驗需求
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的部署,接下來完成實驗的需求
需求:
AS1到AS2選擇2路由器出去
查看R3 R4此時的路由表,可見R3此時學習AS1的路由走的是R1,與預期不符
解決:
在R3上,把從R4傳遞來的AS1的路由的Preference_Value增大,這樣,R3就會從R4學習AS1的路由
注意: 因爲該屬性爲私有不傳遞屬性,故調用時,只能在入向調用,來影響本地的BGP生成
配置:
抓取AS1的流量(用於測試的環回1)
製作策略
調用(對IBGP鄰居R4的入向調用)
查看R3的路由表,可見與預期相符
因爲其他屬性的存在,導致R4學到的AS1路由就是從R2傳遞來的
AS2到AS1選擇3路由器出去
查看R1 R2此時的路由表,可見R2此時學習AS2的路由走的是R4,與預期不符
解決:
優選本地優先級(Local_Preference)最高的路由。最常干涉IBGP關係的選路
注意: 因爲該屬性爲私有不傳遞屬性,故調用時,只能在入向調用,來影響本地的BGP生成
部署位置:
改大:
R1的EBGP接口入方向將AS2的流量LP增大
R1的IBGP接口出方向將AS2的流量LP增大
R2的IBGP接口入方向將AS2的流量LP增大
改小:
R2的EBGP接口入方向將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
AS1到AS3選擇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路由表,可見與預期相符
AS2到AS3選擇6路由器進入
R5的BGP路由表:
R6的BGP路由表:
R7的BGP路由表:
可見,R5、R7的路由表存在問題
解決:
MED多出口的鑑別屬性
對於來自同一AS的路由,優選MED值小的
注意:最常用於干涉EBGP選路的屬性
常常用於ASx干涉ASy對ASx的選路,即我去影響別人對我自己的選路
部署思路:
在R4上對EBGP鄰居R5的MED值改大(大於默認的0),這樣R5 R7就不會通過R4—R5學習AS2的路由了,只會通過R6來學習。
配置步驟:
抓取流量:
配置策略(加大MED,即cost)
在與EBGP鄰居R5的出接口調用
查看R5 R7的路由表,可見與預期相符
AS3到AS1選擇6路由器出去
查看R1 R2的BGP路由表,可見R2路由表有問題
解決:
在R5傳遞給R2這個EBGP鄰居時,將起源碼修改爲
? - incomplete
部署步驟:
抓取路由(AS3的路由)
製作策略(將匹配到的路由修改起源碼爲?)
在R5的連接EBGP鄰居的出向上調用策略:
查看R2的路由表,可見優選了來自R6的起源碼爲i的路由
AS3到AS2選擇6路由器出去
查看R3 R4
解決:
在R4上增加從R5學習AS3路由的AS-Path
抓取路由
製作策略(增加AS-Path)
R4對於R5這個EBGP的入接口調用
查看R4的路由表,可見與預期相符