從iBGP全互聯環境遷移到RR環境

相關配置及GNS3拓撲以附件形式發送,有興趣的朋友可以參考


1.確定遷移前後拓撲

1.1 遷移前網絡

123023617.png

IGP拓撲

123053828.png

1網絡環境描述

AS 100內所有設備運行BGP,通過環回口建立全互聯iBGP對等體關係

②每臺設備上都建立了peer group Internal,並將所有iBGP對等體加入其中

R3產生更新3.3.3.0/24,並通告給所有iBGP對等體

IGP中,R4R5R6R7去往R3都存在兩條負載均衡的路徑

R6R7同理

④外部路由分別通過R1R6進入當前AS,且通過修改R6更新的LP值爲120,所有設備默認優選R6作爲AS的出口

⑤更新離開當前AS時,配置了set-metric-type-internal以反映AS 100內部的網絡情況,這導致R8對於1.1.1.0/24優選R1抵達,對於6.6.6.0/24以及7.7.7.0/24優選R6抵達

2遷移分析

①當前網絡的核心層設備爲R1R2R4R5POP設備爲R1R2R3R4R5R6R7,網絡的遷移應當以POP爲單位逐個遷移

②當前網絡中,路由更新的起源設備爲R3R6R7R8,而在AS 100內,僅負責傳輸的設備爲R2R4R5並且具有冗餘性

③在進行遷移時,可以考慮從R2R4R5中的一臺進行

④當某個對等體從一個peer group轉移到另一個peer group時,會導致本地與其的對等體關係中斷,此時應當避免路由黑洞的產生

可以考慮建立新的iBGP會話並將對等體加入到peer group中進行備份

也可以先將遷移設備移出轉發路徑再做遷移

⑤一臺核心層設備遷移完畢後,RR開始工作,這將導致其對等體設備收到冗餘的路由更新,由於其CLUSTER_LIST更長,因此該冗餘更新不會被其它設備作爲最佳路徑,路由環路存在的風險得以避免

⑥一臺核心層設備遷移完畢後,應當開始部署其client,在client上斷開不必要的對等體關係即可(此時clients只與其RR建立對等體關係)

在斷開對等體關係前,必須確保遷移設備上通過RR學習到了需要的更新

這裏比如首先遷移R4,則必須要求R4R3的對等體關係不能中斷,否則R4將收不到起源於R3的更新

如果執行遷移的設備還連接了其它AS的設備,應當注意遷移是否會造成AS間路由的問題

出於保險,一般建議首先修改流量流出和流入當前AS的路徑再執行遷移

⑦在一個RR與其clients都遷移完畢後,以類似的步驟遷移另一個RR

⑧一個POP遷移完畢後,以類似的步驟遷移另一個POP

⑨檢查遷移完畢後的對等體關係、路由更新學習情況,清除剩餘的對等體

1.2 遷移後網絡

①部署RR應當遵循物理拓撲,根據這裏的物理拓撲,R1R2配置爲R3RRR4R5則爲R6R7RR,核心層設備間建立全互聯iBGP對等體關係

②應當使得R4R5R1R2具有不同的cluster-id

123125833.png


2.部署RR

2.1 選取起始設備

這裏較爲合適的起始設備爲R2R4R5,選擇R2作爲起始設備

2.2 遷移R2

1防止R2在遷移過程中出現路由黑洞

①方法

可以建立額外的iBGP會話,也可以將R2從轉發路徑中移除

這裏,筆者採用第一種方法

R2上只需要能夠獲得R3R6R7的更新且下一跳正確即可,因此R2使用物理接口分別於R3R6R7建立對等體關係

②部署

a.R2上通過物理接口與R3R6R7建立新的iBGP會話

這裏需要注意R6R2建立新的iBGP會話時,應當配置next-hop-self,否則R6通告的AS 200更新下一跳爲R8

b.檢查對等體關係以及路由學習情況

2部署R2

R2上建立新的peer-group RR,並將其中成員指定的RR client,將R3group Internal中移除,加入到新的group RR

R2上將R6R7peer group Internal中移除

R3R2新的對等體關係建立後,清除其物理接口建立的iBGP對等體

④檢查R1R4R5BGP轉發表中是否出現冗餘的更新,其Cluster ID22.22.22.22

2.3 遷移R3

1校驗

檢查R3BGP轉發表,確定R6R7的更新通過RR接收

檢查R4R5R6R7的轉發表,其中同樣應當存在2R3的更新

2中斷對等體關係

中斷R3R4R5R6R7的對等體關係

3校驗

此時,R1上存在2R3的更新,一份來自R3本身,一份由R2反射

R4R5R6R7上都只存在一份R3更新,均來自R2的反射

2.4 遷移R1

1是否需要改變流量流向

默認時,R8去往R3的路由優先從R1走,因此需要考慮是否要改變AS間流量的優先路徑選擇

R1的部署思路與R2類似,需要先建立額外的iBGP會話,然後再部署RR

由於在部署過程中並不會導致明顯的服務中斷情況,在該環境下可以允許不改變流量流向

此外,使用物理接口建立iBGP會話後,可能會導致下一跳IGP metric發生改變,進而使得R8上的路徑參數發生改變,但是不影響選路

爲了保證新建立iBGP會話傳遞路由的可達性,R1上注意配置next-hop-self

2部署R1

R1上通過物理接口與R3R6R7建立新的iBGP會話

注意next-hop-self

②檢查對等體關係以及路由學習情況

R1上建立新的peer-group RR,並將其中成員指定的RR client,將R3group Internal中移除,加入到新的group RR

注意next-hop-self

R1上將R6R7peer group Internal中移除

R3R2新的對等體關係建立後,清除其物理接口建立的iBGP對等體

⑥檢查R2R4R5BGP轉發表中是否出現冗餘的更新,其Cluster ID33.33.33.33

至此,第一個POP遷移完畢

2.5 遷移R5

1防止路由黑洞

R5此時只與R2R4R6R7建立了對等體關係,因此在遷移之前,只需要與R6R7建立額外的iBGP會話即可

2部署R5

①校驗對等體關係的建立以及新路由的學習情況

R5上建立新的peer-group RR,並將其中成員指定的RR client,將R6R7group Internal中移除,加入到新的group RR

③新的對等體關係建立後,清除其物理接口建立的iBGP對等體

④此時進行校驗,R1R2上應當都能夠收到起源R6R72份更新拷貝,一份來自R6R7本身,一份來自R5反射

3去除R6R7上不必要的對等體關係

由於此時通過R5R6R7的更新已經能夠被另一個POP接收,之前建立的物理iBGP會話已經不再需要

2.6 遷移R6、R7

中斷R6R7上不必要的對等體關係,此時在AS內只需與R4R5建立對等體關係即可

2.7 遷移R4

部署思路及過程類似R5,這裏不再詳述

2.8 最終校驗

如果部署順利,此時已經能夠得到遷移後的拓撲

①檢查各臺設備的BGP對等體關係是否正常

②檢查各臺設備路由學習是否與預期相同

③檢查AS之間流量的流向是否發生改變


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