1. 程式人生 > >MPLS拓撲設計與VRF、RD、RT詳解

MPLS拓撲設計與VRF、RD、RT詳解

拓撲需求:

在MPLS網路中,實現CE1的loopback0 ping通CE3的lookback0,不能ping通CE4

                                   CE2的lookback0 ping通CE4的lookback0,不能ping通CE3

拓撲難點:

一、CE1和CE2的lookback0的地址都是192.168.1.1,如何實現隔離

二、CE3傳送的資料包都過MPLS網路到達PE1,PE1如何實現將資料包轉發給CE1,而不轉發給CE2

        CE4傳送的資料包都過MPLS網路到達PE2,PE1如何實現將資料包轉發給CE2,而不轉發給CE1

三、在MPLS網路,CE1或CE2傳送的資料包到達PE1後,PE2如何實現將資料包轉發給PE2

解決方法:

如何解決難點一:CE1和CE2的lookback0的地址都是192.168.1.1,使用VRF實現隔離

1.VRF——VPN路由轉發例項(VPN Routing & Forwarding Instance)

作用:對LAN進行隔離,解決使用者安全

命令解釋:以PE1為例
ip vrf A      //建立一個VRF 名為A
ip vrf B      //建立一個VRF 名為B
int f0/0      //進入介面f0/0呼叫VRF A
    ip vrf forwarding A     //在f0/0介面呼叫VRF A
int f1/0      //進入介面f1/0呼叫VRF B
    ip vrf forwarding A      //在f1/0介面呼叫VRF B

 

思路解析:不同VRF之間相互隔離不通訊,將PE1的f0/0介面劃分進vrf A,PE1的f1/0介面劃分進vrf B,這樣CE1和CE2就被劃分進不同的VRF中,他們之間無法通訊,便實現了LAN之間的隔離

 


 

如何解決難點二:CE3傳送的資料包都過MPLS網路到達PE1,PE1如何實現將資料包轉發給CE1,而不轉發給CE2

CE4傳送的資料包都過MPLS網路到達PE2,PE1如何實現將資料包轉發給CE2,而不轉發給CE1,使用RD解決衝突

2.RD——路由區分器(route distinguishers )

作用:給客戶端ipv4地址

附加一個64bit的RD,使它們的地址不重疊,使得它變成全球唯一的地址

附加RD後的地址即是VPNv4地址

附:能夠支援IPv4地址外的地址族的BGP協議被稱為multiprotocol BGP (MPBGP)

命令解釋:以PE1為例
ip vrf A
  rd 1:1        //為VRF A部署RD為1:1
ip vrf B
  rd 2:2         //為VRF B部署RD為2:2
int f0/0      //進入介面f0/0呼叫VRF A
    ip vrf forwarding A     //在f0/0介面呼叫VRF A
int f1/0      //進入介面f1/0呼叫VRF B
    ip vrf forwarding A      //在f1/0介面呼叫VRF B

思路解析:在VRF A的程序下,部署一個RD如1:1,當CE1的loopback0傳送資料包達到PE1,192.168.1.1地址便會附加上RD為1:1這個團體屬性,然後作為VPNv4地址,PE1與之間PE2轉發的資料包地址便是1:1 192.168.1.1;

在VRF B的程序下,部署一個RD如2:2,當CE2的loopback0傳送資料包達到PE1,192.168.1.1地址便會附加上RD為2:2這個團體屬性,然後作為VPNv4地址,PE1與之間PE2轉發的資料包地址便是2:2 192.168.1.1;

若PE1收到資料包,想轉發給1:1 192.168.1.1,資料包便從f0/0口發出,

若PE1收到資料包,想轉發給2:2 192.168.1.1,資料包便從f1/0口發出

 


 

如何解決難點三:在MPLS網路,CE1或CE2傳送的資料包到達PE1後,PE如1何實現將資料包轉發給PE2,使用RT實現對接

3.RT——路由標記(route-target)

作用:實現路由的匯入和匯出,讓傳送路由的PE知道發給哪些VPN客戶,讓接收路由的PE知道要把路由匯入哪些VRF

RT是一個擴充套件的BGP的團體屬性,VPNV4路由在傳遞時是要帶上這個屬性

RT值有兩個,一個是export 匯出RT,一個是import 匯入RT

傳送端PE的export必須和接收端PE的import對應,只有對應上,接收端PE才會把vpnv4路由加入VRF路由表

命令解釋:
在PE1部署:
ip vrf A
  rd 1:1        //為VRF A部署RD為1:1
   route-target 10:1 //為VRF A部署RT的export和import都為10:1
ip vrf B
  rd 2:2        //為VRF B部署RD為2:2
   route-target 10:2 //為VRF B部署RT的export和import都為10:2
int f0/0      //進入介面f0/0呼叫VRF A
    ip vrf forwarding A     //在f0/0介面呼叫VRF A
int f1/0      //進入介面f1/0呼叫VRF B
    ip vrf forwarding A      //在f1/0介面呼叫VRF B
在PE2部署:
ip vrf C
  rd 3:3        //為VRF C部署RD為3:3
   route-target 10:1 //為VRF C部署RT的export和import都為10:1
ip vrf D
  rd 4:4        //為VRF D部署RD為4:4
   route-target 10:2 //為VRF D部署RT的export和import都為10:2
int f1/0      //進入介面f1/0呼叫VRF C
    ip vrf forwarding C     //在f1/0介面呼叫VRF C
int f2/0      //進入介面f2/0呼叫VRF D
    ip vrf forwarding D     //在f2/0介面呼叫VRF D

思路解析:在PE1的VRF A部署了RT的export和import都為10:1,PE2的VRF B部署了RT的export和import也都為為10:1,PE1和PE2便成為了MPBGP鄰居,PE1傳送的MPLS資料包,PE2就能夠準確接收,PE2回覆的MPLS資料包,PE1也能準確接收,同理VRF B也是如此。

 

結合VRF、RD、RT技術,便實現了拓撲需求:

在MPLS網路中,CE1的loopback0 ping通CE3的lookback0,不能ping通CE4

CE2的lookback0 ping通CE4的lookback0,不能ping通CE3