VRF虛擬路由轉發實例說明

VRF實例說明

Virtual Routing Forwarding

 

    VPN路由轉發表,也稱VPN-instance(VPN實例),是PE爲直接相連的site建立並維護的一個專門實體,每個site在PE上都有自己的VPN-instance,每個VPN-instance包含到一個或多個與該PE直接相連的CE的路由和轉發表,另外如果要實現同一VPN各個Site間的互通,該VPN-instance還就應該包含連接在其他PE上的發出該VPN的Site的路由信息。

MPLS VPN網絡主要由CE、PE和P等3部分組成:CE(Customer Edge Router,用戶網絡邊緣路由器)設備直接與服務提供商網絡(圖1中的MPLS骨幹網絡)相連,它“感知”不到VPN的存在;PE(Provider Edge Router,骨幹網邊緣路由器)設備與用戶的CE直接相連,負責VPN業務接入,處理VPN-IPv4路由,是MPLS三層VPN的主要實現者:P(Provider Router,骨幹網核心路由器)負責快速轉發數據,不與CE直接相連。在整個MPLS VPN中,P、PE設備需要支持MPLS的基本功能,CE設備不必支持MPLS。

PE是MPLS VPN網絡的關鍵設備,根據PE路由器是否參與客戶的路由,MPLS VPN分成Layer3 MPLS VPN和Layer2 MPLS VPN。其中Layer3 MPLS VPN遵循RFC2547bis標準,使用MBGP在PE路由器之間分發路由信息,使用MPLS技術在VPN站點之間傳送數據,因而又稱爲 BGP/MPLS VPN。本文主要闡述的是Layer3 MPLS VPN。

在MPLS VPN網絡中,對VPN的所有處理都發生在PE路由器上,爲此,PE路由器上起用了VPNv4地址族,引入了RD(Route Distinguisher)和RT(Route Target)等屬性。RD具有全局唯一性,通過將8byte的RD作爲IPv4地址前綴的擴展,使不唯一的IPv4地址轉化爲唯一的VPNv4地址。VPNv4地址對客戶端設備來說是不可見的,它只用於骨幹網絡上路由信息的分發。PE對等體之間需要發佈基於VPNv4地址族的路由,這通常是通過 MBGP實現的。正常的BGP4能只傳遞IPv4的路由,MP-BGP在BGP的基礎上定義了新的屬性。MP-iBGP在鄰居間傳遞VPN用戶路由時會將 IPv4地址打上RD前綴,這樣VPN用戶傳來的IPv4路由就轉變爲VPNv4路由,從而保證VPN用戶的路由到了對端的PE上以後,即使存在地址空間重疊,對端PE也能夠區分開分屬不同VPN的用戶路由。RT使用了BGP中擴展團體屬性,用於路由信息的分發,具有全局唯一性,同一個RT只能被一個 VPN使用,它分成Import RT和Export RT,分別用於路由信息的導入和導出策略。在PE路由器上針對每個site都創建了一個虛擬路由轉發表VRF(VPN Routing & Forwarding),VRF爲每個site維護邏輯上分離的路由表,每個VRF都有Import RT和Export RT屬性。當PE從VRF表中導出VPN路由時,要用Export RT對VPN路由進行標記;當PE收到VPNv4路由信息時,只有所帶RT標記與VRF表中任意一個Import RT相符的路由纔會被導入到VRF表中,而不是全網所有VPN的路由,從而形成不同的VPN,實現VPN的互訪與隔離。通過對Import RT和Export RT的合理配置,運營商可以構建不同拓撲類型的VPN,如重疊式VPN和Hub-and-spoke VPN。

 

    整個MPLS VPN體系結構可以分成控制面和數據面,控制面定義了LSP的建立和VPN路由信息的分發過程,數據面則定義了VPN數據的轉發過程。

在控制層面,P路由器並不參與VPN路由信息的交互,客戶路由器是通過CE和PE路由器之間、PE路由器之間的路由交互知道屬於某個VPN的網絡拓撲信息。CE-PE路由器之間通過採用靜態/默認路由或採用IGP(RIPv2、OSPF)等動態路由協議。PE-PE之間通過採用MP-iBGP進行路由信息的交互,PE路由器通過維持iBGP網狀連接或使用路由反射器來確保路由信息分發給所有的PE路由器。除了路由協議外,在控制層面工作的還有 LDP,它在整個MPLS網絡中進行標籤的分發,形成數據轉發的邏輯通道LSP。

在數據轉發層面,MPLS VPN網絡中傳輸的VPN業務數據採用外標籤(又稱隧道標籤)和內標籤(又稱VPN標籤)兩層標籤棧結構。當一個VPN業務分組由CE路由器發給入口PE 路由器後,PE路由器查找該子接

介紹

VPN Routing and Forwarding (VRF) is a technology used in computer networks that allows multiple instances of a routing table to co-exist within the same router at the same time. Because the routing instances are independent,the same or overlapping IP addresses can be used without conflicting with each other.

VRF---VPN路由轉發實例(VPN Routing & Forwarding Instance)

每一個VRF可以看作虛擬的路由器,好像是一臺專用的PE設備。該虛擬路由器包括如下元素:

一張獨立的路由表,當然也包括了獨立的地址空間;

一組歸屬於這個VRF的接口的集合;

一組只用於本VRF的路由協議

對於每個PE,可以維護一個或多個VRF,同時維護一個公網的路由表(也叫全局路由表),多個VRF實例相互分離獨立。

部署和配置

公網路由表:包含全部PE和P 路由器之間的路由,由骨幹網IGP 產生。

私網路由表:包含本VPN 用戶可達信息的路由和轉發表。

⒊1 配置RD

理論上可以爲每個VRF配置一個RD。

通常建議爲每個VPN都配置相同的RD,不同的VPN配置不同的RD。

但是實際上只要保證存在相同地址的兩個VRF的RD不同即可,不同的VPN可以配置相同的RD,相同的VPN也可以配置不同的RD。

VPN RD的關係比較鬆散,只需要保證存在地址相同的兩個VRF的RD不同即可。只要能區分不同vrf的系統路由就可以了。

PE1(config-vrf)#rd

ASN:nn or IP-address:nn VPN Route Distinguisher

一般採用:ASN:nn

⒊2 配置RT

PE1(config-vrf)#route-target import

ASN:nn or IP-address:nn Target VPN Extended Community

PE1(config-vrf)#route-target export

ASN:nn or IP-address:nn Target VPN Extended Community

⒊3 爲VRF 指派接口

一旦你創建VRF的工作結束,你就可以開始分配特定的接口並且開始把客戶分開。如果你在確定VRF中的接口之前分配IP地址,這個IP地址將被刪除,你必須重新爲接口分配IP地址。

PE1(config)#interface s1/0

PE1(config-if)#ip vrf forwarding vpn-a

PE1(config-if)#

PE1(config-if)#do show ip vrf

Name Default RD Interfaces

vpn-a 65001:1 Se1/0

可解決問題

⒉1 實現類似專用PE的功能,用路由隔離不同的vpn用戶。

⒉2 解決地址重疊的問題

即同時支持使用公有地址的客戶端設備和私有地址的客戶端設備,或者多個VPN使用同一個地址空間

也可以支持創建重疊VPN,所謂重疊VPN是指同一個站點同時屬於多個VPN的情況。

引入RT的概念

在PE 中,存在全局路由表、vrf 等,從全局路由表選擇路由到vrf 稱爲export導出;從vrf 中選擇路由到全局路由表稱爲import。RT 用於路由信息的分發,它分成Import RT和Export RT,分別用於路由信息的導入、導出策略。當從全局路由表中導出路由到vrf 時,要用Export RT對VPN路由進行標記;在往全局路由導入VPNv4 路由時,只有所帶RT 標記與VRF 表中任意一個Import RT相符的路由纔會被導入到全局路由表中。RT使得PE路由器只包含和其直接相連的VPN的路由,而不是全網所有ipvpnv4 的路由,從而節省了PE路由器的資 源,提高了網絡拓展性。在一個VRF中,在發佈路由時使用RT 的export 規則。直接發送給其他的PE設備。在接收端的PE上,接收所有的路由,並根據每個VRF 配置的RT 的import 規則進行檢查,如果與路由中的RT屬性match,則將該路由加入到相應的VRF中。

Export Target: 我這個VRF 發出的路由打上什麼標記;

Import Target:我這個VRF 接受什麼標記的路由。

引入RD的概念

ISP 網絡需要把來自CE 用戶的路由,通過公用網絡傳遞到用戶的其他CE 路由器。但是來自不同用戶的路由可能相同(重疊)。假設A 用戶有個路由條目是10.180.0.0/16,B 用戶有個路由也是10.180.0.0/16。這樣在ISP 內部將不能區分10.180.0.0/16 到底是那個用戶的。爲了解決這個問題映入RD (64bit)概念,將ipv4 地址擴展爲ipvpn4 地址(RD:ipv4), 在ISP 內部傳播路由時爲每個來自CE 的路由加一個區別標識,這樣對端ISP,PE收到不同vrf的相同路由,就能準確區分。假設A 用戶的RD 是65001:1,B 用戶的RD爲65002:1, 這樣A 的10.180.0.0/16 就擴充爲65001:1:10.180.0.0/16,B 擴充爲65002:1:10.180.0.0/16 ,這種擴充後的路由成爲ipvpn4 route。只要RD 全局唯一, 將不唯一的IPv4地址轉化爲唯一的IPVPNv4 地址,但是IPVPNv4 地址對客戶端設備來說是不可見的。

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