路由重分發(fā)這一技術在現(xiàn)網(wǎng)環(huán)境中是一種很常見的技術,所以其地位也非常重要。很多教程在在講路由重分發(fā)的時候,只講了重分發(fā)的操作卻沒有說現(xiàn)網(wǎng)環(huán)境中的一些“講究”。所以,很多學員,包括一些技術講師也不知道的是,路由重分發(fā)是一種風險較高的操作,在現(xiàn)網(wǎng)環(huán)境的解決方案里,路由重分發(fā)也是講究頗多。這一切又一切的“講究”和“規(guī)矩”,都為了一個目的:把網(wǎng)絡設計得更高效,且能進一步降低風險。
路由重分發(fā)有兩種情況:
1、靜態(tài)路由重分發(fā)到動態(tài)路由內(nèi);
2、兩個路由協(xié)議相互重分發(fā)。
1
靜態(tài)路由重分發(fā)進動態(tài)路由
靜態(tài)路由往動態(tài)路由內(nèi)重分發(fā)風險較小,但也有講究,這個講究有兩點:
1、盡量不要往動態(tài)路由的區(qū)域內(nèi)再寫靜態(tài)路由,如果實在要寫,就不能重分發(fā)進動態(tài)了
2、重分發(fā)靜態(tài)路由到動態(tài)路由內(nèi),必須用Prefix-List+Route-MAP/Route-Policy劃定范圍
第一個講究怎么來理解呢?那就先看一下,什么叫做“往動態(tài)路由的區(qū)域內(nèi)再寫靜態(tài)路由”
“往動態(tài)路由的區(qū)域內(nèi)再寫靜態(tài)路由”會有什么問題呢?咋一看確實是沒有什么問題吧。如果是Cisco的設備,靜態(tài)路由的AD值為1,OSPF的AD值為110,寫靜態(tài)路由無非就是把R1到R2的流量給干預了一下。如果是華為/H3C的設備,靜態(tài)路由Pref值為60,OSPF內(nèi)部路由的Pref值為10,靜態(tài)路由的優(yōu)先級比OSPF內(nèi)部路由低,這條路由用默認方式寫了也不生效。
且不說華為/H3C你寫這條靜態(tài)路由,用默認的AD值寫了不生效,寫了也屬于多此一舉。但要是你用Cisco的設備來寫呢?或者你把這條靜態(tài)路由的優(yōu)先級調(diào)高了呢?
當然,如果R1上沒有靜態(tài)路由重分發(fā)到OSPF內(nèi)也罷了,但如果R1上有靜態(tài)路由重分發(fā)到OSPF的配置呢?
此時,斷開R1和R2的OSPF鄰居,你就會立刻發(fā)現(xiàn),讓R2再訪問R4時,就出現(xiàn)了如下的路由環(huán)路
你或許可以和我抬杠說:你這是極端環(huán)境,R1和R2要OSPF斷開才會有這樣的環(huán)路。但是在一個規(guī)模稍大的網(wǎng)絡環(huán)境里面,你能保證說設備的互聯(lián)鏈路100%不斷嗎?如果一條鏈路斷開就出現(xiàn)環(huán)路這樣的通信故障,那你設置那些冗余設備和冗余鏈路就一點意義都沒有了。
這個和現(xiàn)網(wǎng)環(huán)境有一個原則沖突:即使是冗余鏈路斷開一條,也不能讓任何位置的互訪出現(xiàn)問題。這里R1和R2的鏈路斷開,就讓R1和R4的互訪出了問題,這就違背原則了。
第二個講究:靜態(tài)路由重分發(fā)到動態(tài)路由時,必須有Prefix-List+Route-map/Route-Policy做控制,劃定范圍。
這個怎么理解呢?在不違背第一個講究的前提下,你要把靜態(tài)路由重分發(fā)到OSPF內(nèi),就必須要把靜態(tài)路由先用Prefix-List包含或標記TAG,在重分發(fā)靜態(tài)路由到OSPF的時候,掛Route-MAP,我們來看一下,Cisco設備的操作命令:
有人就會說了:你明知道這個設備上的所有靜態(tài)路由都要往動態(tài)路由里面重分發(fā),干嘛要用前綴列表或TAG這么多此一舉呢?
要讓我對這個問題拿話來說的話,我只能這么回答你。
你或許知道開車,或坐副駕駛的時候要系安全帶,但是你又嫌系安全帶麻煩,想著反正這條路上沒叔叔也沒監(jiān)控就懶得系了。然后再這條路上跑了幾十遍來回都沒事,于是你得到一個結論:不系安全帶其實也沒事,別被叔叔抓到就可以了。但是不怕一萬就怕萬一??!后面的話我不說了,免得你說我咒你!
現(xiàn)網(wǎng)環(huán)境也是一樣,就算這個設備的靜態(tài)路由都要重分發(fā)進OSPF,但哪天這個網(wǎng)絡里面有演練需求或者是測試需求,需要暫時寫兩條測試用的靜態(tài)路由呢?這個靜態(tài)路由只需要這臺設備能通即可,你這時候有重分發(fā),又沒過濾,是不是就把這條測試用的路由散發(fā)進全網(wǎng)了呢?還有,如果這臺設備上有往動態(tài)路由內(nèi)部寫的靜態(tài)路由呢?
2
動態(tài)路由雙向重分發(fā)時
下面再看 一下動態(tài)路由相互重分發(fā)的時候,需要注意哪些問題呢?
在當前的網(wǎng)絡環(huán)境中,尤其是,為了提升業(yè)務的實時性,都會考慮到設置冗余設備。一般作為邊界的設備也會使用兩個:
雙點雙向重分發(fā)其實是一種隱患很大的操作,如果直接在兩個ASBR上做雙向重分發(fā)的操作且不帶任何控制的話,次優(yōu)路由的出現(xiàn)是難免的。怎么說呢?
先來看一下次優(yōu)路由是怎么產(chǎn)生的,下圖是一個RIP和OSPF雙向重分發(fā)的情景:
在這個場景內(nèi),你把OSPF外部路由的AD值調(diào)整到180,讓OSPF外部路由的AD值大于RIP的120的AD值,這是不是就完全能解決問題了呢?
其實也不盡然,因為你“敞著”讓OSPF和RIP之間的路由相互重分發(fā),則完全有條件讓一條路由重分發(fā)進OSPF后,再次重分發(fā)到RIP內(nèi)。這種情況路由從在ASBR-1上由A重分發(fā)進B,再從ASBR-2上由B再重分發(fā)到A,在有BGP存在重分發(fā)的情景下100%會存在。所以,在雙點雙向重分發(fā)時,還需要防的就是上述情況。
防止的方式也不難,在OSPF和RIP相互重分發(fā)的時候,OSPF進RIP后,帶TAG 10,再讓RIP重分發(fā)進OSPF的時候拒絕帶TAG 10的路由;反過來,RIP進OSPF后,帶TAG 20,再讓OSPF重分發(fā)進RIP的時候拒絕帶TAG 20的路由。
落地到配置命令上,就是這樣(上面是思科系列,下面是華為/H3C):
對任何雙向重分發(fā)的路由都適用
在實際的網(wǎng)絡環(huán)境中,對于路由雙點雙向重分發(fā)時,也可能兼顧著路由聚合與分流。為了減少次優(yōu)路徑的風險,在實際的雙點雙向重分發(fā)時,只有一個方向是直接重分發(fā)的,而另一個方向則是采用Null0的大段靜態(tài)路由進行重分發(fā)。
3
根據(jù)場景調(diào)整重分發(fā)方案
具體到現(xiàn)網(wǎng)的場景中,又該如何確定重分發(fā)的操作方案呢?
場景一:A、B路由都不是BGP,若A路由協(xié)議位于核心位置,B路由位于分支位置(B內(nèi)有連續(xù)的子網(wǎng)),則A重分發(fā)進B可以直接重分發(fā),記得把B路由的AD值調(diào)大。而A則重分發(fā)含有B的Null0靜態(tài)路由
落地到配置命令上,就使用如下的配置命令(命令展示Cisco的配置命令。設路由協(xié)議A是OSPF 100,路由協(xié)議B是OSPF 50)
場景二,若路由A為BGP,路由B為IGP,則可以把BGP重分發(fā)進IGP。對IGP所在域的路由聚合后寫成Null0的靜態(tài)路由。再使用network命令發(fā)布到BGP內(nèi)。
場景三,若A、B路由都不是BGP,且A、B路由協(xié)議域內(nèi)的地位相當(都是骨干融合),則看A、B路由域誰的路由更容易聚合。若路由A內(nèi)的路由是連續(xù)子網(wǎng),而B內(nèi)較為離散。則考慮將A的AD值或Pref數(shù)值調(diào)大,直接重分發(fā)B進A。而B則重分發(fā)Null0路由。
如果說A、B內(nèi)的路由都非常離散,怎么辦呢?那也只能用之前說的,A、B都直接重分發(fā),但帶上TAG進行過濾,防止由A重分發(fā)進B的路由,被再次重分發(fā)進A內(nèi)了。
審核編輯:劉清
-
RIP
+關注
關注
0文章
31瀏覽量
10757 -
OSPF
+關注
關注
0文章
80瀏覽量
14878 -
MAP
+關注
關注
0文章
49瀏覽量
15137 -
BGP
+關注
關注
0文章
83瀏覽量
15327
原文標題:實戰(zhàn)干貨-現(xiàn)網(wǎng)環(huán)境中,路由重分發(fā)的標準解決方案
文章出處:【微信號:浩道linux,微信公眾號:浩道linux】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論