MPLS XXX

MPLS XXX
解決私網通信問題,5個路由器模擬,R1環回模擬私網,R2R3R4位ISP,R5環回模擬私網。
思路:1.先把私網路由傳遞給ISP,都與運營商之間運行IGP協議
2.在運營商邊界是不能直接與R1或R5建立IGP協議的,否則學習到的路由會保存
到路由器的主路由緩存中,就會牽扯到與BGP的底層IGP協議有選路的問題,所以學習私網路由必須存放在一個虛擬的路由緩存轉發表中。
3.在邊界路由器上先創建虛擬路由緩存,接着爲了標記不同的私網,引出了RD
4.一定把連接用戶的接口劃入虛擬路由轉發中,每一個路由標記具有相同的RD值
5.將私網路由導入到主路由表中,是因爲邊界路由器並不能傳遞虛擬路由給中間類似於R3的路由器,所以需要重發布到主路由表中,這裏是導入到BGP路由緩存中。而導入的路由是IPV4+RD,也就是XXXV4路由。
5.版本4與版本4+區別在於版本4只支持IPV4路由,現在傳遞的是XXXV4,只能使用MP-BGP,也就是BGPV4+,由於默認BGP傳遞的是IPV4路由,現在重發布XXXV4,那麼也是不認識這種路由的,所以要開啓VPVV4的MP-BGP功能,單播傳遞
6.現在數據到達R4,那麼怎麼確保R1發過來的就是到達R5的路由呢?引出RT,路由目標,使用了BGP的擴展的團體屬性。收到帶有RT值與自己導出的RT值一致
7.R4收到的路由是BGP路由,不能支持傳遞給R5,所以有需要把BGP協議導入到IGP協議中,R1學習R5同樣的過程
8.至此還沒有用到MPLS,現在只是路由傳遞到對端了,數據依舊不通,其實數據到達R2肯定就丟棄了,因爲R2的連接R1的接口劃入VRF中,只能查看VRF表,又因爲路由是以BGP的形式存在,根據BGP特點可知,下一跳地址爲IBGP更新源地址,也就是4.4.4.4,但是在VRF表項中,根本不可能存在到達R4的4.4.4.4路由,所以遞歸失敗,數據不通。
9.接着做MPLS技術,數據到達R2後,查看VRF的cef表,但是針對5.5.5.0是不會打標籤的,因爲存在形式是BGP,標籤是不支持部署在BGP路由的,於是只能針對下一跳地址分配的標籤移植到BGP中,,這個時候標籤是3給的,R3會收的,接着倒數第二跳彈出,變爲IP數據包,到達R4後,一樣只能查看主路由表中的cef表,是肯定找不到5.5.5.5的,報文丟棄。
那麼問題來了。既然做了MPLS,爲何還會數據不通信了?其實MPLS XXX是打了雙層標籤的。
R3針對R2學習路由的下一跳地址4.4.4.4分配標籤傳遞給R2,R2把這個標籤移植到BGP的私有路由裏面。
另外一個標籤一定是要R4給的,R3做了倒數第二跳彈出,之後應該還有一個標籤,是R4給R2,R2傳遞過來的(打了兩層標籤)。又存在一個問題,R4怎麼把標籤信息傳遞給R2,之前傳遞R5私網路由時候都可以增加RT參數,把標籤加入傳遞給R2當然也可以。
數據到達R4後,R4查看MPLS forwarding table,發現是自己發的,雖然是針對XXXV4發的,直接查表扔給R5.,
爲啥這次會給R5呢?第一,沒有做雙層標籤之前,由於倒數第二跳彈出,那麼到達R4後直接查看的是FIB表,自然不能通信,第二,如果做了雙層標籤,那麼由於R3過來的數據還是有label,那麼R4會先查看LFIB表的,這個表裏面自然就可以把數據傳遞給R5的。
反過來是一樣的。

VRF:虛擬路由轉發,
RD::路由區分器,區分不同的VRF,XX:XX 1:1 2:2
AS號:number 234:1 234:2
RT:路由目標,負責路由導入與導出
實驗拓撲:
在這裏插入圖片描述
R1R2運行RIP,R4R5運行EIGRP,R2R3R4運行BGP,R1環回192.168.1.0 R5環回192.168.2.0

  1. 創建VRF,並將接口劃入VRF中
    在這裏插入圖片描述
    在這裏插入圖片描述
    將接口劃入VRF中會發現地址不存在了,所以還得手工再配置接口地址
    接着查看路由條目,發現12.1.1.0沒有,直連消失,並不在主路由表中
    在這裏插入圖片描述
    查看VRF路由表
    在這裏插入圖片描述
    在這裏插入圖片描述
    做完這些發現一個奇怪的現象,爲什麼R1pingR2可以通,R2pingR1爲何不通呢?
    R1查看主路由,傳遞給R2,又因爲R2接口在VRF中,所以R1pingR2會通

同理R4到R5也要這樣做
在這裏插入圖片描述
在這裏插入圖片描述
R4pingR5與R2pingR1其實是可以通信的
在這裏插入圖片描述

  1. 在CE與PE之間運行路由協議
    R1 R2運行RIP R4 R5運行EIGRP
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述

  2. 建立MP-BGP,爲了傳遞XXXV4路由
    針對鄰居開啓傳遞XXXV4路由的能力,同時開啓發送並接收團體屬性的功能
    在這裏插入圖片描述
    關閉傳遞IPV4路由功能(可選)
    在這裏插入圖片描述

  3. 路由導入(將VRF中路由重發布進入MP-BGP中)
    在這裏插入圖片描述
    查看
    在這裏插入圖片描述
    在這裏插入圖片描述
    這個時候R4也收到了XXXV4路由,接着傳遞給R5,繼續做重發布
    在這裏插入圖片描述在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述

至此,R1的環回到達R5,繼續做R5的環回到達R1
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
接着再重發布路由到RIP中
在這裏插入圖片描述
在這裏插入圖片描述

  1. 運行MPLS
    在這裏插入圖片描述
  2. 通信
    在這裏插入圖片描述

接下來觀察數據爲什麼可以通信?
在R1上先查看追蹤路徑
在這裏插入圖片描述
由表可知,打了兩個標籤,301 400,怎樣打了兩個標籤呢?
R1發送數據到達R2,R2肯定查看VRF表
在這裏插入圖片描述
到達192.168.2.1的下一跳是4.4.4.4,所以繼續查看forwarding-table
在這裏插入圖片描述
到達4.4.4.4的出標籤是301,
在這裏插入圖片描述
這個400是怎麼來的?
R4針對192.168.2.0是本地打標籤的,透過BGP傳遞給R2
在這裏插入圖片描述
在這裏插入圖片描述
抓包查看
在這裏插入圖片描述
在這裏插入圖片描述

如果再加兩個路由器R6 R7,一個192.168.3.0 一個192.168.4.0
R2 R6之間運行OSPF
R6上正常配置OSPF100就行,但是在R2上面配置OSPF時候,進程號不能再是100了,這裏用200,route-id改成22.2.2.2,然後OSPF沒有address-family這個東西所以這樣配置
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
同理,配置R4 R7上面的OSPF信息
在這裏插入圖片描述

接着做路由的導入與導出
導入
在這裏插入圖片描述
在這裏插入圖片描述
導出
在這裏插入圖片描述
在這裏插入圖片描述

接着再考慮192.168.4.0網段
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

現在R1 R5, R6 R7通信就完成了,那麼如果這四個之間要通信呢?
主要是RT的參數問題
在這裏插入圖片描述
在這裏插入圖片描述
R2上面有了,R1上面肯定也會收到的
現在是R1可以與R6 R7通信了,
在這裏插入圖片描述

但是R5上面還是隻能收到R1自己的路由,所以在R4上還得做以上的操作

在這裏插入圖片描述

發佈了172 篇原創文章 · 獲贊 217 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章