• 產品與解決方案
  • 行業解決方案
  • 服務
  • 支持
  • 合作夥伴
  • 關於我們

10-MPLS配置指導

目錄

08-MPLS L3VPN配置

本章節下載 08-MPLS L3VPN配置  (2.63 MB)

08-MPLS L3VPN配置

目  錄

1 MPLS L3VPN

1.1 MPLS L3VPN簡介

1.1.1 MPLS L3VPN基本網絡架構

1.1.2 MPLS L3VPN基本概念

1.1.3 MPLS L3VPN路由信息發布

1.1.4 MPLS L3VPN報文轉發

1.1.5 MPLS L3VPN常見組網方案

1.1.6 跨域VPN

1.1.7 運營商的運營商

1.1.8 嵌套VPN

1.1.9 多角色主機

1.1.10 HoVPN

1.1.11 OSPF VPN擴展

1.1.12 BGP的AS號替換和SoO屬性

1.1.13 MPLS L3VPN快速重路由

1.1.14 VPN引入等價路由

1.1.15 協議規

1.2 MPLS L3VPN配置任務簡介

1.3 MPLS L3VPN配置準備

1.4 配置VPN實例

1.4.1 創建VPN實例

1.4.2 配置VPN實例與三層接口關聯

1.4.3 配置VPN實例的路由相關屬性

1.5 配置PE-CE間的路由交換

1.5.1 配置PE-CE間使用靜態路由

1.5.2 配置PE-CE間使用RIP

1.5.3 配置PE-CE間使用OSPF

1.5.4 配置PE-CE間使用IS-IS

1.5.5 配置PE-CE間使用EBGP

1.5.6 配置PE-CE間使用IBGP

1.6 配置PE-PE間的路由交換

1.7 配置BGP VPNv4路由

1.7.1 功能簡介

1.7.2 控製BGP VPNv4路由的發布、接收和保存

1.7.3 配置BGP VPNv4路由的首選值

1.7.4 配置BGP VPNv4路由反射

1.7.5 配置BGP VPNv4路由屬性

1.7.6 配置BGP VPNv4路由過濾

1.7.7 配置BGP VPNv4路由衰減

1.7.8 配置BGP VPNv4路由的下一跳指向私網

1.8 配置跨域VPN

1.8.1 配置跨域VPN-OptionA

1.8.2 配置跨域VPN-OptionB

1.8.3 配置跨域VPN-OptionC(方式一)

1.8.4 配置跨域VPN-OptionC(方式二)

1.9 配置嵌套VPN

1.10 配置多角色主機

1.10.1 功能簡介

1.10.2 配置並應用策略路由

1.10.3 配置靜態路由

1.11 配置HoVPN

1.11.1 配置UPE

1.11.2 配置SPE

1.12 配置Egress PE上私網路由標簽操作方式

1.13 配置MPLS L3VPN快速重路由

1.13.1 功能簡介

1.13.2 配置限製和指導

1.13.3 通過路由策略配置快速重路由功能

1.13.4 開啟地址族的快速重路由功能

1.14 配置VPN實例關聯的隧道對TTL的處理模式

1.15 配置OSPF偽連接

1.15.1 功能簡介

1.15.2 配置準備

1.15.3 發布Loopback接口的路由

1.15.4 創建偽連接

1.16 配置BGP的AS號替換和SoO屬性

1.17 配置RT-Filter功能

1.18 配置BGP Add-Path

1.19 配置公網或VPN實例發布的本地網段路由

1.20 配置路由信息引入功能

1.20.1 配置公網實例

1.20.2 配置VPN實例路由信息引入功能

1.20.3 配置公網和VPN實例的BGP路由互相引入功能

1.20.4 配置BGP路由重生成功能

1.21 開啟VPN引入等價路由功能

1.22 配置優先發送指定路由的撤銷消息

1.23 配置VPN peer

1.24 開啟告警功能

1.25 使能BGP的路由抖動日誌記錄功能

1.26 配置VPN實例的MPLS標簽轉發統計功能

1.27 MPLS L3VPN顯示和維護

1.27.1 顯示MPLS L3VPN的配置及運行狀態

1.27.2 顯示和清除VPN實例的MPLS標簽轉發統計信息

1.27.3 顯示和清除BGP VPNv4路由的衰減信息

1.27.4 顯示和清除BGP VPNv4路由的震蕩統計信息

1.27.5 複位BGP會話

1.28 MPLS L3VPN典型配置舉例

1.28.1 配置MPLS L3VPN示例

1.28.2 配置MPLS L3VPN采用GRE隧道示例

1.28.3 配置Hub&Spoke組網示例

1.28.4 配置跨域VPN-OptionA方式示例

1.28.5 配置跨域VPN-OptionB方式示例

1.28.6 配置跨域VPN-OptionC方式示例(方式一)

1.28.7 配置跨域VPN-OptionC方式示例(方式二)

1.28.8 配置運營商的運營商(相同AS)示例

1.28.9 配置運營商的運營商(不同AS)示例

1.28.10 配置嵌套VPN示例

1.28.11 配置多角色主機示例

1.28.12 配置HoVPN示例

1.28.13 配置OSPF偽連接

1.28.14 配置BGP的AS號替換

1.28.15 配置BGP的AS號替換和SoO屬性

1.28.16 配置VPNv4路由備份VPNv4路由方式的MPLS L3VPN快速重路由

1.28.17 配置VPNv4路由備份IPv4路由方式的MPLS L3VPN快速重路由

1.28.18 配置IPv4路由備份VPNv4路由方式的MPLS L3VPN快速重路由


1 MPLS L3VPN

1.1  MPLS L3VPN簡介

MPLS L3VPN是一種三層VPN技術,它使用BGP在服務提供商骨幹網上發布用戶站點的私網路由,使用MPLS在服務提供商骨幹網上轉發用戶站點之間的私網報文,從而實現通過服務提供商的骨幹網連接屬於同一個VPN、位於不同地理位置的用戶站點。MPLS L3VPN組網方式靈活,可擴展性好,並能夠方便地支持MPLS QoS和MPLS TE,因此得到了廣泛的應用。

1.1.1  MPLS L3VPN基本網絡架構

MPLS L3VPN的基本網絡架構如圖1-1所示。MPLS L3VPN網絡中設備的角色分為以下幾種:

·     CE(Customer Edge,用戶網絡邊緣)設備:直接與服務提供商網絡相連的用戶網絡側設備。CE“感知”不到VPN的存在,也不需要支持MPLS。

·     PE(Provider Edge,服務提供商網絡邊緣)設備:與CE相連的服務提供商網絡側設備。在MPLS L3VPN網絡中,對VPN的所有處理都發生在PE上。

·     P(Provider,服務提供商網絡)設備:服務提供商網絡中的骨幹設備,不與CE直接相連。P隻需要在骨幹網中將用戶網絡報文轉發給正確的遠端PE,不需要維護和處理VPN信息。

圖1-1 MPLS L3VPN基本網絡架構

 

1.1.2  MPLS L3VPN基本概念

1. Site

Site(站點)的含義可以從下述幾個方麵理解:

·     Site是指相互之間具備IP連通性的一組IP係統,並且這組IP係統的IP連通性不需通過服務提供商網絡實現;

·     Site的劃分是根據設備的拓撲關係,而不是地理位置,盡管在大多數情況下一個Site中的設備地理位置相鄰;

·     一個Site中的設備可以屬於多個VPN,換言之,一個Site可以屬於多個VPN;

·     Site通過CE連接到服務提供商網絡,一個Site可以包含多個CE,但一個CE隻屬於一個Site。

對於多個連接到同一服務提供商網絡的Site,通過製定策略,可以將它們劃分為不同的集合(set),隻有屬於相同集合的Sites之間才能通過服務提供商網絡互訪,這種集合就是VPN。

2. VPN實例

在MPLS L3VPN中,不同VPN之間的路由隔離通過VPN實例(VPN-instance)實現,VPN實例又稱為VRF(Virtual Routing and Forwarding,虛擬路由和轉發)實例。PE上每個VPN實例都有相對獨立的路由表和LFIB(Label Forwarding Information Base,標簽轉發信息庫),確保VPN數據的獨立性和安全性。

PE通過將與Site連接的接口與VPN實例關聯,實現該Site與VPN實例的關聯。一個Site隻能與一個VPN實例關聯;不同的Site可以關聯同一個VPN實例。VPN實例中包含了與其關聯的Site所屬的所有VPN的成員關係和路由規則等信息。

VPN實例中的信息包括:LFIB、IP路由表、與VPN實例關聯的接口以及VPN實例的管理信息。VPN實例的管理信息包括RD(Route Distinguisher,路由標識符)、Route Target屬性、路由過濾策略等。

3. VPN-IPv4地址

VPN是一種私有網絡,不同的VPN獨立管理自己使用的地址範圍,也稱為地址空間(Address Space)。不同VPN的地址空間可能會在一定範圍內重合,比如,VPN 1和VPN 2都使用了10.110.10.0/24網段的地址,這就發生了地址空間重疊(Overlapping Address Spaces)。

傳統BGP無法正確處理地址空間重疊的VPN的路由。假設VPN 1和VPN 2都使用了10.110.10.0/24網段的地址,並各自發布了一條去往此網段的路由,BGP隻會選擇其中一條路由,從而導致去往另一個VPN的路由丟失。

MPLS L3VPN使用VPN-IPv4地址(又稱為VPNv4地址)來解決上述問題。

圖1-2 VPN-IPv4地址結構

 

圖1-2所示,VPN-IPv4地址共有12個字節,包括8字節的RD和4字節的IPv4地址前綴。其中,RD的作用是將其添加到一個IPv4地址前綴前,使之成為全局唯一的VPN-IPv4地址前綴。PE從CE接收到普通IPv4路由後,為IPv4地址前綴添加RD,將其轉變為VPN-IPv4路由,並使用MP-BGP(Multiprotocol Border Gateway Protocol,多協議邊界網關協議)將VPN-IPv4路由發布給對端PE,從而實現通過RD區分不同VPN的相同IPv4地址前綴。

RD有三種格式,通過2字節的Type字段區分:

·     Type為0時,Administrator子字段占2字節,Assigned number子字段占4字節,格式為:16位自治係統號:32位用戶自定義數字,例如:100:1。

·     Type為1時,Administrator子字段占4字節,Assigned number子字段占2字節,格式為:32位IPv4地址:16位用戶自定義數字,例如:172.1.1.1:1。

·     Type為2時,Administrator子字段占4字節,Assigned number子字段占2字節,格式為:32位自治係統號:16位用戶自定義數字,其中的自治係統號最小值為65536,例如:65536:1。

為了保證VPN-IPv4地址全球唯一,建議不要將Administrator子字段的值設置為私有AS號或私有IP地址。

4. Route Target屬性

MPLS L3VPN使用BGP擴展團體屬性——Route Target(也稱為VPN Target)來控製VPN路由信息的發布。

Route Target屬性分為如下兩類:

·     Export Target屬性:本地PE從與自己直接相連的Site學習到IPv4路由後,將其轉換為VPN-IPv4路由,為VPN-IPv4路由設置Export Target屬性並發布給其它PE。

·     Import Target屬性:PE在接收到其它PE發布的VPN-IPv4路由時,檢查其Export Target屬性。隻有當此屬性與PE上某個VPN實例的Import Target屬性匹配時,才把路由加入到該VPN實例的路由表中。

Route Target屬性定義了一條VPN-IPv4路由可以為哪些Site所接收,PE可以接收哪些Site發送來的路由。

與RD類似,Route Target也有三種格式:

·     16位自治係統號:32位用戶自定義數字,例如:100:1。

·     32位IPv4地址:16位用戶自定義數字,例如:172.1.1.1:1。

·     32位自治係統號:16位用戶自定義數字,其中的自治係統號最小值為65536,例如:65536:1。

5. MP-BGP

MP-BGP(Multiprotocol Border Gateway Protocol,多協議邊界網關協議)是對BGP協議的擴展,它可以為多種網絡層協議傳遞路由信息,如IPv4組播、VPN-IPv4等。

在MPLS L3VPN中,PE之間利用MP-BGP來傳遞VPN-IPv4路由,既實現了VPN的私網路由在不同站點之間的傳遞,又確保了私網路由隻在VPN內發布。

1.1.3  MPLS L3VPN路由信息發布

在MPLS L3VPN組網中,VPN路由信息的發布涉及CE和PE。P路由器隻維護骨幹網的路由,不需要了解任何VPN路由信息。PE路由器隻維護與它直接相連的VPN的路由信息,不維護所有VPN路由。

VPN路由信息的發布過程包括三部分:本地CE到入口PE、入口PE到出口PE、出口PE到遠端CE。完成這三部分後,本地CE與遠端CE之間將建立可達路由。

1. 本地CE到入口PE的路由信息交換

CE使用靜態路由、RIP、OSPF、IS-IS、EBGP或IBGP,將本站點的VPN路由發布給PE。CE發布給PE的是標準的IPv4路由。

2. 入口PE到出口PE的路由信息交換

PE從CE學到VPN路由信息後,將其存放到相應的VPN實例的路由表中。PE為這些標準IPv4路由增加RD和Export Target屬性,並為這些路由分配MPLS標簽,形成VPN-IPv4路由。

入口PE通過MP-BGP把VPN-IPv4路由(包括Export Target屬性和MPLS標簽)發布給出口PE。出口PE將VPN-IPv4路由的Export Target屬性與自己維護的VPN實例的Import Target屬性進行匹配。如果出口PE上某個VPN實例的Import Target屬性與路由的Export Target屬性中存在相同的屬性值,則將該路由加入到該VPN實例的路由表中。

3. 出口PE到遠端CE的路由信息交換

與本地CE到入口PE的路由信息交換相同,遠端CE可以通過多種方式從出口PE學習VPN路由,包括靜態路由、RIP、OSPF、IS-IS、EBGP和IBGP。

1.1.4  MPLS L3VPN報文轉發

在基本MPLS L3VPN應用中(不包括跨域的情況),PE轉發VPN報文時為報文封裝如下內容:

·     外層標記:又稱為公網標記。VPN報文在骨幹網上沿著公網隧道從一端PE傳送到另一端PE。公網隧道可以是LSP隧道、MPLS TE隧道和GRE隧道。當公網隧道為LSP隧道或MPLS TE隧道時,公網標記為MPLS標簽,稱為公網標簽;當公網隧道為GRE隧道時,公網標記為GRE封裝。

提示

目前,MPLS L3VPN不支持采用GRE over IPv6隧道作為公網隧道。

 

·     內層標簽:又稱為私網標簽,用來指示報文應被送到哪個Site。對端PE根據私網標簽可以確定報文所屬的VPN實例,通過查找該VPN實例的路由表,將報文正確地轉發到相應的Site。PE之間在通過MP-BGP發布VPN-IPv4路由時,將為私網路由分配的私網標簽通告給對端PE。

圖1-3 VPN報文轉發示意圖

圖1-3所示,VPN報文的轉發過程為:

(1)     Site 1發出一個目的地址為1.1.1.2的IP報文,由CE 1將報文發送至PE 1。

(2)     PE 1根據報文到達的接口及目的地址查找對應VPN實例的路由表,根據匹配的路由表項為報文添加私網標簽,並查找到報文的下一跳為PE 2。

(3)     PE 1在公網路由表內查找到達PE 2的路由,根據查找結果為報文封裝公網標簽或進行GRE封裝,並沿著公網隧道轉發該報文。

(4)     MPLS網絡內,P根據報文的公網標記轉發報文,將報文轉發到PE 2。如果公網標記為MPLS標簽,則報文在到達PE 2的前一跳時剝離公網標簽,僅保留私網標簽;如果為GRE封裝,則由PE 2剝離報文的GRE封裝。

(5)     PE 2根據私網標簽確定報文所屬的VPN實例,通過查找該VPN實例的路由表,確定報文的出接口,剝離私網標簽後將報文轉發至CE 2。

(6)     CE 2根據正常的IP轉發過程將報文轉發給目的主機。

屬於同一個VPN的兩個Site連接到同一個PE時,PE不需要為VPN報文封裝外層標記和內層標簽,隻需查找對應VPN實例的路由表,找到報文的出接口,將報文轉發至相應的Site。

1.1.5  MPLS L3VPN常見組網方案

在MPLS L3VPN網絡中,通過Route Target屬性來控製VPN路由信息在各Site之間的發布和接收。VPN Export Target和Import Target的設置相互獨立,並且都可以設置多個值,能夠實現靈活的VPN訪問控製,從而實現多種VPN組網方案。

1. 基本的VPN組網方案

最簡單的情況下,一個VPN中的所有用戶形成閉合用戶群,相互之間能夠進行流量轉發,VPN中的用戶不能與任何本VPN以外的用戶通信。

對於這種組網,需要為每個VPN分配一個Route Target,作為該VPN的Export Target和Import Target,且此Route Target不能被其他VPN使用。

圖1-4 基本的VPN組網方案

 

圖1-4所示,PE上為VPN 1分配的Route Target值為100:1,為VPN 2分配的Route Target值為200:1。VPN 1的兩個Site之間可以互訪,VPN 2的兩個Site之間也可以互訪,但VPN 1和VPN 2的Site之間不能互訪。

2. Hub&Spoke組網方案

使用Hub&Spoke組網方案可以實現在VPN中設置中心訪問控製設備,其它用戶的互訪都通過中心訪問控製設備進行,通過中心設備對其他設備之間的互訪進行監控和過濾等。其中:

·     中心訪問控製設備所在的站點稱為Hub站點;該站點的CE稱為Hub-CE;與該站點連接的PE稱為Hub-PE。

·     其他分支站點稱為Spoke站點;分支站點的CE稱為Spoke-CE;與分支站點連接的PE稱為Spoke-PE。

對於這種組網,Route Target設置規則為:

·     Spoke-PE:Export Target為“Spoke”,Import Target為“Hub”;

·     Hub-PE:Hub-PE上需要使用兩個接口連接Hub-CE,兩個接口分別屬於不同的VPN實例。一個VPN實例用於接收Spoke-PE發來的路由,其Import Target為“Spoke”;另一個VPN實例用於向Spoke-PE發布路由,其Export Target為“Hub”。

按照上述規則設置Route Target,可以實現:

·     Hub-PE能夠接收所有Spoke-PE發布的VPN-IPv4路由。

·     Hub-PE發布的VPN-IPv4路由能夠為所有Spoke-PE接收。

·     Hub-PE將從Spoke-PE學到的路由發布給其他Spoke-PE,因此,Spoke站點之間可以通過Hub站點互訪。

·     任意Spoke-PE的Import Target屬性不與其它Spoke-PE的Export Target屬性相同。因此,任意兩個Spoke-PE之間不直接發布VPN-IPv4路由,Spoke站點之間不能直接互訪。

圖1-5 Hub&Spoke組網方案

 

圖1-5所示,以站點1向站點2發布路由為例,Spoke站點之間的路由發布過程為:

(1)     Spoke-CE 1將站點1內的私網路由發布給Spoke-PE 1。

(2)     Spoke-PE 1將該路由轉變為VPN-IPv4路由,通過MP-BGP發布給Hub-PE。

(3)     Hub-PE將該路由學習到VPN 1-in的路由表中,並將其轉變為標準IPv4路由發布給Hub-CE。

(4)     Hub-CE將該路由再次發布給Hub-PE,Hub-PE將其學習到VPN 1-out的路由表中。

(5)     Hub-PE將VPN 1-out路由表中的私網路由轉變為VPN-IPv4路由,通過MP-BGP發布給Spoke-PE 2。

(6)     Spoke-PE 2將VPN-IPv4路由轉變為標準IPv4路由發布到站點2。

Spoke站點之間通過Hub站點完成路由交互後,Spoke站點之間的通信將通過Hub站點進行。

3. Extranet組網方案

如果一個VPN用戶希望提供本VPN的部分站點資源給非本VPN的用戶訪問,可以使用Extranet組網方案。

對於這種組網,需要訪問共享站點的VPN實例的Export Target必須包含在共享站點VPN實例的Import Target中,而其Import Target必須包含在共享站點VPN實例的Export Target中。

圖1-6 Extranet組網方案

 

圖1-6中,VPN 1的Site 3為共享站點,通過設置Route Target實現:

·     PE 3能夠接受PE 1和PE 2發布的VPN-IPv4路由。

·     PE 3發布的VPN-IPv4路由能夠為PE 1和PE 2接受。

基於以上兩點,VPN 1的Site 1和Site 3之間能夠互訪,VPN 2的Site 2和VPN 1的Site 3之間也能夠互訪。

PE 3不把從PE 1接收的VPN-IPv4路由發布給PE 2,也不把從PE 2接收的VPN-IPv4路由發布給PE 1(從IBGP鄰居學來的路由不會再發送給其他的IBGP鄰居)。因此,VPN 1的Site 1和VPN 2的Site 2之間不能互訪。

1.1.6  跨域VPN

實際組網應用中,某用戶一個VPN的多個Site可能會連接到使用不同AS號的多個服務提供商,或者連接到一個服務提供商的多個AS。這種VPN跨越多個自治係統的應用方式被稱為跨域VPN(Multi-AS VPN)。

跨域VPN解決方案分為以下幾種:

·     ASBR間建立VRF-to-VRF連接(VRF-to-VRF connections between ASBRs),也稱為Inter-Provider Option A。

·     ASBR間通過MP-EBGP發布VPN-IPv4路由(EBGP redistribution of labeled VPN-IPv4 routes between ASBRs),也稱為Inter-Provider Option B;

·     PE間通過MP-EBGP發布VPN-IPv4路由(Multi-hop EBGP redistribution of labeled VPN-IPv4 routes between PE routers),也稱為Inter-Provider Option C。

1. ASBR間建立VRF-to-VRF連接

這種方式下,兩個AS的PE路由器直接相連,並且作為各自所在自治係統的邊界路由器ASBR。兩個PE都把對方當作自己的CE設備,通過EBGP會話向對端發布普通的IPv4單播路由,並將需要跨域的VPN實例與至少一個接口關聯。

圖1-7 ASBR間建立VRF-to-VRF連接組網圖

 

圖1-7所示,VPN 1內路由從CE 1發布到CE 3的過程為:

(1)     PE 1從CE 1學習到私網路由後,通過MP-IBGP發布給ASBR 1。

(2)     ASBR 1比較Route Target屬性,將PE 1發布的VPN-IPv4路由學習到相應的VPN實例路由表中,並作為IPv4單播路由通過EBGP會話發布給它的CE設備,即ASBR 2。

(3)     ASBR 2從它的CE(ASBR 1)接收到IPv4單播路由後,將其加入與接收路由的接口綁定的VPN實例的路由表中,並通過MP-IBGP發布給PE 3。

(4)     PE 3接收到路由後,將其發布給CE 3。

報文轉發過程中,在AS內部作為VPN報文,采用兩層標簽的方式轉發;在ASBR之間則采用IP轉發方式。

這種方式的優點是實現簡單,兩個作為ASBR的PE之間不需要為跨域進行特殊配置。缺點是可擴展性差:作為ASBR的PE需要管理所有VPN的路由,為每個VPN創建VPN實例,導致PE上的VPN-IPv4路由數量過於龐大;並且,PE上需要為每個跨域的VPN單獨關聯接口,提高了對PE設備的要求。

2. ASBR間通過MP-EBGP發布VPN-IPv4路由

這種方式下,兩個ASBR通過MP-EBGP交換它們從各自AS的PE路由器接收的VPN-IPv4路由。

圖1-8 ASBR間通過MP-EBGP發布VPN-IPv4路由組網圖

 

圖1-8所示,VPN 1內路由從CE 1發布到CE 3的過程為:

(1)     PE 1從CE 1學習到私網路由後,通過MP-IBGP發布給ASBR 1。假設PE 1為私網路由分配的私網標簽為L1。

(2)     ASBR 1接收PE 1發布的VPN-IPv4路由,並作為VPN-IPv4路由通過MP-EBGP將其發布給ASBR 2。ASBR 1發布該路由時,將路由的下一跳地址改為自身的地址,為路由分配新的私網標簽L2,並為新的私網標簽L2和舊的私網標簽L1建立關聯。

(3)     ASBR 2從ASBR 1接收到VPN-IPv4路由後,通過MP-IBGP將路由發布給PE 3。ASBR 2在發布路由時,將路由的下一跳地址改為自身的地址,為路由分配新的私網標簽L3,並為新的私網標簽L3和舊的私網標簽L2建立關聯。

(4)     PE 3接收到路由後,將其發布給CE 3。

完成路由發布後,報文從CE 3到CE 1的轉發過程為:

(1)     PE 3接收到報文後,為其封裝兩層標簽——私網標簽L3和從PE 3到ASBR 2的公網隧道的標簽,並將報文轉發給ASBR 2。

(2)     ASBR 2剝離公網標簽後,將私網標簽L3替換為L2,並將報文發送給ASBR 1。ASBR 1和ASBR 2之間的報文隻帶一層私網標簽。

(3)     ASBR 1將私網標簽L2替換為L1,添加從ASBR 1到PE 1的公網隧道的標簽,並將報文轉發給PE 1。

(4)     PE 1剝離公網標簽、私網標簽後,將報文轉發給CE 1。

采用這種方式時,ASBR需要接收所有跨域VPN的私網路由,因此,ASBR上不能根據Route Target屬性對接收的VPN-IPv4路由進行過濾。

這種方式的擴展性優於Inter-Provider Option A。缺點是ASBR仍然需要參與VPN私網路由的維護和發布。

3. PE間通過MP-EBGP發布VPN-IPv4路由

這種方式下,不同AS的PE之間建立多跳MP-EBGP會話,通過該會話直接在PE之間發布VPN-IPv4路由。此時,一端PE上需要具有到達遠端PE的路由以及該路由對應的標簽,以便在兩個PE之間建立跨越AS的公網隧道。Inter-Provider Option C通過如下方式建立公網隧道:

·     方式一:利用LDP等標簽分發協議在AS內建立公網隧道。ASBR通過BGP發布帶標簽的IPv4單播路由,實現跨域AS域建立公網隧道。帶標簽的IPv4單播路由是指為IPv4單播路由分配MPLS標簽,並同時發布IPv4單播路由和標簽,以便將路由和標簽關聯。

·     方式二:PE和ASBR間不需要建立IBGP鄰居。本端ASBR將IGP路由引入到BGP中,為該路由分配標簽後,通過帶標簽的EBGP路由將其發布給對端ASBR。對端ASBR將BGP路由引入IGP協議中。兩端PE均學習到對端的路由後,通過LDP等標簽分發協議在PE之間的公網隧道。

圖1-9 PE間通過Multi-hop MP-EBGP發布VPN-IPv4路由組網圖

 

所示,以Inter-Provider Option C通過方式一建立公網隧道為例,VPN 1內路由從CE 1發布到CE 3的過程比較簡單,為:PE 1從CE 1學習到私網路由後,將其作為VPN-IPv4路由通過多跳MP-EBGP會話發布給PE 3(假設PE 1為CE 1分配的私網標簽為Lx);PE 3將私網路由發布給CE 3。

Inter-Provider Option C的難點是建立跨越AS域的公網隧道。以PE 3到PE 1為例,公網隧道建立過程為:

(1)     在AS 100內,通過LDP等標簽分發協議建立從ASBR 1到PE 1的公網隧道。假設ASBR 1上該公網隧道的出標簽為L1。

(2)     ASBR 1通過EBGP會話向ASBR 2發布帶標簽的IPv4單播路由,將PE 1地址對應的路由及ASBR 1為其分配的標簽(假設為L2)發布給ASBR 2,路由的下一跳地址為ASBR 1。這樣,就建立了從ASBR 2到ASBR 1的公網隧道,ASBR 1上公網隧道的入標簽為L2。

(3)     ASBR 2通過IBGP會話向PE 3發布帶標簽的IPv4單播路由,將PE 1地址對應的路由及ASBR 2為其分配的標簽(假設為L3)發布給PE 3,路由的下一跳地址為ASBR 2。這樣,就建立了從PE 3直接到ASBR 2的公網隧道,ASBR 2上公網隧道的入標簽為L3,出標簽為L2。

(4)     MPLS報文不能直接從PE 3轉發給ASBR 2,在AS 200內,還需要通過LDP等標簽分發協議逐跳建立另一條從PE 3到ASBR 2的公網隧道。假設PE 3上該公網隧道的出標簽為Lv。

完成路由發布和公網隧道的建立後,報文從CE 3轉發到CE 1的過程為:

(1)     PE 3接收到CE 3發送的報文後,查找路由表,發現下一跳地址為PE 1,私網標簽為Lx,則為報文封裝標簽Lx;PE 3繼續查找到達PE 1的路由,下一跳為ASBR 2,標簽為L3,則在標簽Lx外封裝一層標簽L3;PE 3查找到達ASBR 2的路由,出標簽為Lv,則在標簽L3外再封裝標簽Lv。

(2)     在AS 200內,路由器根據最外層標簽,將報文轉發到ASBR 2。

(3)     ASBR 2剝離最外層標簽,將L3替換為L2,並將報文轉發給ASBR 1。

(4)     ASBR 1將L2替換為L1,並轉發報文。

(5)     在AS 100內,路由器根據最外層標簽,將報文轉發到PE 1。

(6)     PE 1剝離最外層標簽,根據私網標簽Lx,將報文轉發給CE 1。

圖1-10所示,為提高可擴展性,可以在每個AS中指定一個RR(Route Reflector,路由反射器),與同一AS的PE交換VPN-IPv4路由信息,由RR保存所有VPN-IPv4路由。兩個AS的RR之間建立多跳MP-EBGP會話,通告VPN-IPv4路由。

圖1-10 采用RR的跨域VPN OptionC方式組網圖

 

Inter-Provider Option A和Inter-Provider Option B都需要ASBR參與VPN-IPv4路由的維護和發布。當每個AS都有大量的VPN路由需要交換時,ASBR很可能成為阻礙網絡進一步擴展的瓶頸。Inter-Provider Option C中PE之間直接交換VPN-IPv4路由,具有很好的可擴展性。

1.1.7  運營商的運營商

MPLS L3VPN服務提供商的用戶可能也是一個服務提供商。這種情況下,前者稱為提供商運營商(Provider Carrier)或一級運營商(First Carrier),後者稱為客戶運營商(Customer Carrier)或二級運營商(Second Carrier)。這種組網模型稱為運營商的運營商(Carriers’ carriers)。

運營商的運營商通過在二級運營商的路由器之間建立BGP會話直接交互二級運營商連接的用戶網絡的路由,實現一級運營商不引入二級運營商的用戶網絡路由,隻引入二級運營商的骨幹網路由,從而大大減少一級運營商網絡中需要維護的路由數量,提高可擴展性。

由於一級運營商不引入二級運營商的用戶網絡路由,為了保證用戶網絡的報文能夠跨越一級運營商傳遞,在一級運營商PE和接入一級運營商的二級運營商CE(在二級運營商內其為PE設備,以下簡稱為二級運營商CE)之間需要為二級運營商骨幹網的路由分配標簽。一級運營商PE和二級運營商CE之間需要進行如下配置:

·     如果一級運營商PE與二級運營商CE位於同一個AS內,則它們之間配置IGP和LDP;否則,它們之間配置MP-EBGP,通過MP-EBGP為PE與CE之間交換的IPv4單播路由分配標簽。

·     無論二者是否位於同一個AS,二級運營商CE上都需要使能MPLS。並且,二級運營商CE上雖然有二級運營商的用戶網絡路由,但它們並不把這些路由發布給一級運營商PE,隻在二級運營商PE之間交換。

二級運營商可能隻是普通ISP,也可能是MPLS L3VPN服務提供商。

·     如圖1-11所示,二級運營商是普通ISP時,其PE不需要運行MPLS,與二級運營商CE之間運行IGP。PE 3和PE 4之間通過IBGP會話交換二級運營商的用戶網絡路由(IPv4單播路由)。

圖1-11 二級運營商是ISP

 

·     如圖1-12所示,二級運營商是MPLS L3VPN服務提供商時,其PE也需要運行MPLS,與二級運營商CE之間運行IGP和LDP。PE 3和PE 4之間通過MP-IBGP會話交換二級運營商的用戶網絡路由(VPN-IPv4路由)。

圖1-12 二級運營商是MPLS L3VPN服務提供商

 

提示

如果一級運營商和二級運營商之間存在等價路由,則建議在一級運營商和二級運營商之間建立對應的等價LSP。

 

1.1.8  嵌套VPN

嵌套VPN通過在MPLS L3VPN的PE和CE之間傳遞VPNv4路由,使得用戶可以管理自己內部的VPN,根據實際需要在用戶網絡內部進一步劃分VPN,運營商不參與用戶內部VPN的管理。如圖1-13所示,用戶網絡在運營商MPLS VPN網絡上所屬的VPN為VPN A,在用戶網絡內部劃分子VPN:VPN A-1和VPN A-2。運營商PE設備把用戶網絡當作普通VPN用戶對待,不參與子VPN的劃分。運營商CE設備(CE 1和CE 2)和運營商PE設備之間傳遞包括子VPN路由信息的VPNv4路由,從而實現用戶網絡內部子VPN路由信息的傳遞。

嵌套VPN支持對稱組網方式和非對稱組網方式,即屬於同一用戶網絡的不同Site包括的用戶內部VPN數目可以相同,也可以不同。嵌套VPN還支持用戶內部VPN的多層嵌套。

圖1-13 嵌套VPN組網應用

 

嵌套VPN中,路由信息的傳播過程為:

(1)     用戶PE從用戶CE接收到私網路由後,通過MP-BGP將VPN-IPv4路由發布給運營商CE設備。

(2)     運營商CE設備通過MP-BGP將VPN-IPv4路由發布給運營商的PE設備。

(3)     運營商的PE設備收到VPN-IPv4路由後,保留用戶網絡內部的VPN信息,並附加用戶在運營商網絡上的MPLS VPN屬性,即將該VPN-IPv4路由的RD更換為用戶所處運營商網絡VPN的RD,同時將用戶所處運營商網絡VPN的Export Target添加到路由的擴展團體屬性列表中。運營商的PE設備維護用戶網絡內部的VPN信息。

(4)     運營商的PE設備向其他運營商PE設備發布這些攜帶綜合VPN信息的VPN-IPv4路由。

(5)     其他的運營商PE設備收到VPN-IPv4路由後,與本地VPN的Import Target進行匹配,每個VPN接收屬於自己的路由,並將路由發布給運營商CE設備。如果運營商PE和運營商CE設備之間是IPv4連接(如CE 7和CE 8),則直接發布IPv4路由;如果是VPN-IPv4連接(如CE 1和CE 2),則表示通過私網連接的是一個用戶MPLS VPN網絡,運營商PE向運營商CE發布VPN-IPv4路由。

(6)     用戶PE通過運營商CE接收到VPN-IPv4路由後,與本地VPN的Import Target進行匹配,每個VPN接收屬於自己的路由,並發布給自己連接的用戶CE設備(如圖1-13中的CE 3、CE 4、CE 5和CE 6)。

1.1.9  多角色主機

Site所屬的VPN由PE上連接Site的接口關聯的VPN實例決定,即PE從同一個接口接收到的來自Site的報文都通過同一個VPN實例轉發。在實際組網中,Site內的某些主機或服務器可能需要訪問多個VPN,而其他主機或服務器隻需訪問某個VPN。雖然可以通過設置多個邏輯接口來實現上述需求,但會增加額外的配置負擔,使用起來也有局限性。

多角色主機功能通過在PE上配置策略路由,使得來自Site內某些主機或服務器的報文可以訪問多個VPN。這些主機或服務器稱為多角色主機。

圖1-14 多角色主機示意圖

 

圖1-14所示,多角色主機組網中,PE上需要進行如下配置:

·     將連接Site的接口與某個VPN實例關聯。

·     配置策略路由,實現對於來自多角色主機的報文,在關聯VPN實例的路由表內查找不到路由時,在其它VPN實例的路由表內查找路由,從而保證Site發送給PE的報文不僅可以轉發到關聯的VPN,還可以轉發到其它的VPN。

·     為其它的VPN實例配置靜態路由,指定到達多角色主機的路由的下一跳為關聯VPN實例內CE的IP地址,從而實現PE將其它VPN發送的報文轉發到該Site。

在多角色主機組網中,應保證多角色主機所能訪問的所有VPN內IP地址不能重疊。

1.1.10  HoVPN

HoVPN(Hierarchy of VPN,分層VPN),又稱為HoPE(Hierarchy of PE,分層PE),用來避免PE成為網絡的瓶頸,以便於大規模部署VPN網絡。

HoVPN將PE劃分為UPE(Underlayer PE or User-end PE,下層PE或用戶側PE)和SPE(Superstratum PE or Service Provider-end PE,上層PE或運營商側PE)。UPE和SPE分工不同,二者構成分層式PE,共同完成傳統上一個PE的功能。分層式PE可以同普通PE共存於一個MPLS網絡。

圖1-15 HoVPN的基本結構

 

圖1-15所示,UPE和SPE的功能分別為:

·     UPE直接連接用戶網絡,主要完成用戶接入功能。UPE維護其直接相連的VPN Site的路由,但不維護VPN中其它遠程Site的路由或僅維護它們的聚合路由;UPE為其直接相連的Site的路由分配內層標簽,並通過MP-BGP隨VPN路由發布此標簽給SPE。UPE的路由容量和轉發性能較低,但接入能力強。

·     SPE連接UPE並位於運營商網絡內部,主要完成VPN路由的管理和發布。SPE維護其通過UPE連接的VPN所有路由,包括本地和遠程Site的路由,SPE將路由信息發布給UPE,並攜帶標簽。SPE發布的路由信息可以是VPN實例的缺省路由(或聚合路由),也可以是通過路由策略的路由信息。通過後者可以實現對同一VPN下不同站點之間互訪的控製。SPE的路由表容量大,轉發性能強,但接口資源較少。

SPE和UPE之間運行MP-IBGP或MP-EBGP。采用MP-IBGP時,SPE需要作為多個UPE的路由反射器,在UPE之間反射路由。

HoVPN支持分層式PE的嵌套:

·     一個分層式PE可以作為UPE,同另一個SPE組成新的分層式PE;

·     一個分層式PE可以作為SPE,同多個UPE組成新的分層式PE;

分層式PE的嵌套可以進行多次。在分層式PE的嵌套中,SPE和UPE是相對的概念,上層PE相對於下層就是SPE,下層PE相對於上層就是UPE。

圖1-16 分層式PE的嵌套

 

圖1-16是一個三層的分層式PE,稱中間的PE為MPE(Middle-level PE)。SPE和MPE之間,以及MPE和UPE之間,均運行MP-BGP。MP-BGP為上層PE發布下層PE上的所有VPN路由,為下層PE發布上層PE的VPN實例缺省路由或通過路由策略的VPN路由。SPE維護了這個分層式PE接入的所有Site的VPN路由,路由數目最多;UPE隻維護它所直接連接的Site的VPN路由,路由數目最少;MPE的路由數目介於SPE和UPE之間。

1.1.11  OSPF VPN擴展

本節重點介紹OSPF對VPN的擴展,如果需要了解OSPF的基本知識,請參見“三層技術-IP路由配置指導”中的“OSPF”。

1. PE上的OSPF多實例

在PE-CE間運行OSPF交互私網路由時,PE必須支持OSPF多實例,即每個OSPF進程與一個VPN實例綁定,通過該OSPF進程學習到的路由添加到對應VPN實例的路由表中,以實現不同VPN實例路由的隔離。

2. PE和CE間的OSPF區域配置

PE與CE之間的OSPF區域可以是非骨幹區域,也可以是骨幹區域。

在OSPF VPN擴展應用中,MPLS VPN骨幹網被看作是骨幹區域area 0。由於OSPF要求骨幹區域連續,因此,所有站點的area 0必須與MPLS VPN骨幹網相連(物理連通或通過Virtual-link實現邏輯上的連通)。

3. BGP/OSPF交互

如果在PE和CE間運行OSPF,則PE上需要將PE之間傳遞的BGP路由引入到OSPF路由中,再將該路由通過OSPF發布給CE。這樣就會導致即使不同的站點屬於同一個OSPF路由域,在一個站點學到的路由,也將作為外部路由發布給另一站點。通過為屬於同一個OSPF路由域的站點配置相同的域ID(Domain ID),可以解決上述問題。

圖1-17 BGP/OSPF交互示意圖

 

圖1-17為例,CE 11、CE 21和CE 22屬於同一個VPN,且屬於同一個OSPF路由域。配置Domain ID前,VPN 1內路由從CE 11發布到CE 21和CE 22的過程為:首先在PE 1上將CE 11的OSPF路由引入BGP;然後通過BGP將這些VPN路由發布給PE 2;在PE 2上將BGP路由引入到OSPF,再通過AS External LSA(即Type-5 LSA)或NSSA External LSA(即Type-7 LSA)發布給CE 21和CE 22。

配置Domain ID後,路由傳遞過程為:在PE 1上將OSPF路由引入到BGP時,將Domain ID附加到BGP VPNv4路由上,作為BGP的擴展團體屬性傳遞給PE 2。PE 2接收到BGP路由後,將本地配置的Domain ID與路由中攜帶的Domain ID進行比較。如果相同,且為區域內或區域間路由,則在PE 2將路由重新引入到OSPF時,該路由作為Network Summary LSA(即Type-3 LSA)發布給CE 21和CE 22;否則,該路由將作為AS External LSA(即Type-5 LSA)或NSSA External LSA(即Type-7 LSA)發布給CE 21和CE 22。

4. 路由環路的檢測與避免

圖1-18 路由環路檢測與避免示意圖

 

圖1-18所示,同一個站點連接到多個不同PE的情況下,當一個PE通過OSPF向站點發布從MP-BGP學習到的私網路由時,該路由可能被另一個PE接收到,造成路由環路。

OSPF VPN擴展通過如下方法避免路由環路:

·     對於Type-3 LSA,通過DN(Down Bit)標識位避免路由環路:當PE設備將BGP路由引入OSPF,並生成Type-3 LSA時,PE為生成的LSA設置DN位。其他PE接收到CE發布的Type-3 LSA後,如果該LSA的DN位置位,則計算路由時忽略該LSA,從而避免再次通過BGP協議發布該路由造成路由環路。

·     對於Type-5 LSA和Type-7 LSA,通過Route Tag(VPN引入路由的外部路由標記)避免路由環路:為連接同一站點的PE設備配置相同的Route Tag。一台PE設備將BGP路由引入OSPF,並生成Type-5 LSA或Type-7 LSA時,為該Type-5或Type-7 LSA添加本地配置的外部路由標記。其他PE接收到CE發布的Type-5或Type-7 LSA後,將其中的外部路由標記值與本地配置的值進行比較。如果相同,則在進行路由計算時忽略該LSA,從而避免路由環路。

5. OSPF偽連接

圖1-19所示:VPN 1的兩個站點之間存在兩條路由:

·     通過PE連接的路由:該路由為區域間(域ID相同)或外部路由(未配置域ID或域ID不同)。

·     CE之間直接相連的路由:該路由為區域內路由,稱為backdoor鏈路。

前者的優先級低於後者,導致VPN流量總是通過backdoor鏈路轉發,而不走骨幹網。為了避免這種情況發生,可以在PE路由器之間建立OSPF偽連接(Sham-link),使經過MPLS VPN骨幹網的路由也成為OSPF區域內路由。通過調整度量值,使得VPN流量通過骨幹網中的Sham-link轉發。

圖1-19 Sham-link應用示意圖

 

Sham-link是VPN內的一條虛擬點到點鏈路,該鏈路在Type-1 LSA中發布。Sham-link通過源IP地址和目的IP地址來唯一標識。源IP地址和目的IP地址分別為本端PE和遠端PE上屬於該VPN的地址,通常情況下采用32位掩碼的Loopback接口地址。

為了保證一端PE的VPN實例路由表中具有到達Sham-link目的IP地址的路由,確保路由可達,PE上需要將Sham-link的源IP地址作為VPN-IPv4地址通過MP-BGP發布;為了避免路由環路,Sham-link路由不會通過MP-BGP發布。即,一端PE隻會通過MP-BGP發布Sham-link的源IP地址,不會發布Sham-link的目的IP地址。

1.1.12  BGP的AS號替換和SoO屬性

在MPLS L3VPN中,如果PE和CE之間運行EBGP,由於BGP使用AS號檢測路由環路,為保證路由信息的正確發送,需要為物理位置不同的站點分配不同的AS號。

如果物理位置不同的CE複用相同的AS號,則需要在PE上配置BGP的AS號替換功能,當PE向指定對等體(CE)發布路由時,如果路由的AS_PATH中存在CE所在的AS號,則PE將該AS號替換成PE的AS號後,再發布該路由,以保證私網路由能夠正確發布。

說明

使能BGP的AS號替換功能後,PE向對等體組中所有已建立連接的CE重新發送所有路由,並對發送路由中的AS_PATH屬性按上述規則替換。

 

圖1-20 BGP AS號替換和SoO應用示意圖

 

圖1-20中,Site 1和Site 2都使用AS號800,在PE 2上使能針對CE 2的AS號替換功能。當CE 1發來的Update信息從PE 2發布給CE 2時,PE 2發現AS_PATH中存在與CE 2相同的AS號800,就把它替換為自己的AS號100,這樣,CE 2就可以正確接收CE 1的路由信息。

PE使用不同接口連接同一站點的多個CE時,如圖1-20中的CE 2和CE 3,使用BGP的AS號替換功能,會導致CE 3發布的路由通過PE 2和CE 2再次發布到Site 2,引起路由環路。此時,通過在PE 2上為對等體CE 2和CE 3配置相同的SoO屬性,可以避免路由環路。PE 2從CE 2或CE 3接收到路由後為路由添加SoO屬性;向CE 2或CE 3發布路由時檢查路由的SoO屬性。由於CE 3發布路由的SoO屬性與CE 2的SoO屬性相同,PE 2不會將該路由發布給CE 2,從而避免路由環路。

SoO屬性的詳細介紹,請參見“三層技術-IP路由配置指導”中的“BGP概述”。

1.1.13  MPLS L3VPN快速重路由

MPLS L3VPN FRR(Fast Reroute,快速重路由)功能用來在CE雙歸屬(即一個CE同時連接兩個PE)的組網環境下,通過為流量轉發的主路徑指定一條備份路徑,並通過BFD檢測主路徑的狀態,實現當主路徑出現故障時,將流量迅速切換到備份路徑,大大縮短了故障恢複時間。在使用備份路徑轉發報文的同時,會重新進行路由優選,優選完畢後,使用新的最優路由來轉發報文。

MPLS L3VPN快速重路由的路徑備份方式分為如下幾種:

·     VPNv4路由備份VPNv4路由

·     VPNv4路由備份IPv4路由

·     IPv4路由備份VPNv4路由

1. VPNv4路由備份VPNv4路由

圖1-21 VPNv4路由備份VPNv4路由示意圖

 

圖1-21所示,在入節點PE 1上指定VPN 1的FRR備份下一跳為PE 3,則PE 1接收到PE 2和PE 3發布的到達CE 2的VPNv4路由後,PE 1會記錄這兩條VPNv4路由,並將PE 2發布的VPNv4路由當作主路徑,PE 3發布的VPNv4路由當作備份路徑。

在PE 1上配置BFD檢測LSP或MPLS TE隧道功能,通過BFD檢測PE 1到PE 2之間公網隧道的狀態。當公網隧道正常工作時,CE 1和CE 2通過主路徑CE 1—PE 1—PE 2—CE 2通信。當PE 1檢測到該公網隧道出現故障時,PE 1將通過備份路徑CE 1—PE 1—PE 3—CE 2轉發CE 1訪問CE 2的流量。

在這種備份方式中,PE 1負責主路徑檢測和流量切換。

BFD檢測LSP或MPLS TE隧道功能的詳細介紹,請參見“MPLS配置指導”中“MPLS OAM”。

2. VPNv4路由備份IPv4路由

圖1-22 VPNv4路由備份IPv4路由示意圖

 

圖1-22所示,在出節點PE 2上指定VPN 1的FRR備份下一跳為PE 3,則PE 2接收到CE 2發布的IPv4路由和PE 3發布的到達CE 2的VPNv4路由後,PE 2會記錄這兩條路由,並將CE 2發布的IPv4路由當作主路徑,PE 3發布的到達CE 2的VPNv4路由當作備份路徑。同時,PE 2通過ARP或Echo方式的BFD會話檢測PE 2—CE 2這條路徑的狀態。當此路徑正常工作時,CE 1和CE 2通過主路徑CE 1—PE 1—PE 2—CE 2通信。當PE 2檢測到路徑PE 2—CE 2出現故障時,快速切換到路徑PE 2—PE 3—CE 2,CE 1將通過備份路徑CE 1—PE 1—PE 2—PE 3—CE 2訪問CE 2。從而,避免路由收斂(切換到路徑CE 1—PE 1—PE 3—CE 2)前,流量轉發中斷。

在這種備份方式中,PE 2負責主路徑檢測和流量切換。

3. IPv4路由備份VPNv4路由

圖1-23 IPv4路由備份VPNv4路由示意圖

 

圖1-23所示,在PE 1上指定VPN 1的FRR備份下一跳為CE 2,則PE 1接收到CE 2發布的IPv4路由和PE 2發布的到達CE 2的VPNv4路由後,PE 1會記錄這兩條路由,並將PE 2發布的到達CE 2的VPNv4路由當作主路徑,CE 2發布的IPv4路由當作備份路徑。

在PE 1上配置BFD檢測LSP或MPLS TE隧道功能,通過BFD檢測PE 1到PE 2之間公網隧道的狀態。當公網隧道正常工作時,CE 1和CE 2通過主路徑CE 1—PE 1—PE 2—CE 2通信。當PE 1檢測到該公網隧道出現故障時,PE 1將通過備份路徑CE 1—PE 1—CE 2轉發CE 1訪問CE 2的流量。

在這種備份方式中,PE 1負責主路徑檢測和流量切換。

1.1.14  VPN引入等價路由

VPN引入等價路由功能用於將前綴和RD均相同的多條路由全部引入到VPN實例的路由表中。如果在開啟本功能的同時配置了balance命令或MPLS L3VPN快速重路由功能,則這些路由之間可以進行負載分擔或MPLS L3VPN快速重路由。balance命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP基礎”。

圖1-24 VPN引入等價路由示意圖

 

圖1-24所示,在PE 1上存在RD為1:1的VPN實例VPN1,CE 1通過該VPN實例接入骨幹網;在PE 2和PE 3上均存在RD為1:2的VPN實例VPN2,CE 2通過該VPN實例接入骨幹網;VPN1和VPN2能夠相互訪問。

CE 2上發布一條路由後,PE 2和PE 3均通過VPNv4路由將該路由發布給PE 1,路由的RD為1:2。缺省情況下,對於前綴和RD均相同的多條路由,BGP隻會將最優路由學習到VPN實例的路由表中。因此,在PE 1上,VPN實例VPN1的BGP路由表中隻會存在一條到達CE 2的路由。在PE 1的VPN實例VPN1中開啟VPN引入等價路由功能後,BGP會把前綴和RD均相同的兩條路由全部學習到該VPN實例中,這兩條路由之間可以進行負載分擔或MPLS L3VPN快速重路由。

1.1.15  協議規範

與MPLS L3VPN相關的協議規範有:

·     RFC 3107:Carrying Label Information in BGP-4

·     RFC 4360:BGP Extended Communities Attribute

·     RFC 4364:BGP/MPLS IP Virtual Private Networks (VPNs)

·     RFC 4577:OSPF as the Provider/Customer Edge Protocol for BGP/MPLS IP Virtual Private Networks (VPNs)

1.2  MPLS L3VPN配置任務簡介

除特殊說明外,MPLS L3VPN的配置均在PE設備上執行。MPLS L3VPN配置任務如下:

(1)     配置MPLS L3VPN基本功能

a.     配置VPN實例

b.     配置PE-CE間的路由交換

c.     配置PE-PE間的路由交換

d.     (可選)配置BGP VPNv4路由

(2)     配置MPLS L3VPN高級組網

請根據實際情況選擇以下任務進行配置:

¡     配置跨域VPN

如果承載VPN路由的MPLS骨幹網跨越多個AS,則需要執行本配置。

¡     配置嵌套VPN

如果網絡中VPN接入數量比較多,管理者想要通過VPN劃分訪問權限,且不想讓外部知道用戶網絡內部VPN的部署情況,則可以使用嵌套VPN組網方式。

¡     配置多角色主機

多角色主機功能通過在PE上配置策略路由,使得來自Site內某些主機或服務器的報文可以訪問多個VPN。

¡     配置HoVPN

HoVPN用來避免PE成為網絡的瓶頸,以便於大規模部署VPN網絡。

(3)     (可選)配置Egress PE上私網路由標簽操作方式

(4)     (可選)配置MPLS L3VPN快速重路由

(5)     (可選)配置VPN實例關聯的隧道對TTL的處理模式

(6)     (可選)控製MPLS L3VPN網絡中路由的發布與接收

¡     配置OSPF偽連接

¡     配置BGP的AS號替換和SoO屬性

¡     配置RT-Filter功能

RT-Filter功能用來在源頭上減少發布的路由信息數量。

¡     配置BGP Add-Path

Add-Path(Additional Paths)功能允許BGP向鄰居發送本地前綴相同下一跳不同的多條路由,以便在網絡故障時縮短流量中斷時間。

¡     配置公網或VPN實例發布的本地網段路由

¡     配置路由信息引入功能

本功能可以實現公網和VPN實例間的路由信息互相引入,從而使指定VPN用戶可以獲取訪問公網或其他VPN的路由。本功能包括配置VPN實例路由信息引入功能、配置公網和VPN實例的BGP路由互相引入功能及配置BGP路由重生成功能。

¡     開啟VPN引入等價路由功能

本功能用來將前綴和RD均相同的多條路由全部引入到VPN實例的路由表中,以便在這些路由之間形成等價路由或進行MPLS L3VPN快速重路由。

¡     配置優先發送指定路由的撤銷消息

本功能用來配置BGP在撤銷大量路由時,能夠優先撤銷某些指定的路由,以便將使用指定路由的流量快速地切換到有效路徑上,最大限度地減少流量中斷時間。

(7)     (可選)配置VPN peer

(8)     (可選)維護MPLS L3VPN網絡

¡     開啟告警功能

¡     使能BGP的路由抖動日誌記錄功能

¡     配置VPN實例的MPLS標簽轉發統計功能

1.3  MPLS L3VPN配置準備

在配置MPLS L3VPN之前,需完成以下任務:

·     對MPLS骨幹網(PE、P)配置IGP,實現骨幹網的IP連通性

·     對MPLS骨幹網(PE、P)配置MPLS基本能力

·     對MPLS骨幹網(PE、P)配置MPLS LDP,建立LDP LSP

1.4  配置VPN實例

配置VPN實例的操作是在PE設備上進行的。

1.4.1  創建VPN實例

1. 功能簡介

VPN實例在實現中與Site關聯。VPN實例不是直接對應於VPN,一個VPN實例綜合了和它所對應Site的VPN成員關係和路由規則。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置VPN實例的MPLS標簽範圍。

mpls per-vrf-label range minimum maximum

(3)     創建VPN實例,並進入VPN實例視圖。

ip vpn-instance vpn-instance-name

(4)     配置VPN實例的RD。

route-distinguisher route-distinguisher

缺省情況下,未配置VPN實例的RD。

(5)     (可選)配置VPN實例的描述信息。

description text

缺省情況下,未配置VPN實例的描述信息。

(6)     (可選)配置VPN實例的ID。

vpn-id vpn-id

缺省情況下,未配置VPN實例的ID。

(7)     (可選)配置VPN實例的SNMP上下文。

snmp context-name context-name

缺省情況下,未配置VPN實例的SNMP上下文。

(8)     配置MPLS標簽分配方式。

apply-label { per-instance [ static static-label-value ] | per-route }

缺省情況下,采用每下一跳每標簽的標簽分配方式,即BGP為VPN路由中的每個下一跳分配一個標簽。

注意

執行本命令將改變標簽的分配方式,導致VPN實例下的所有路由重分發。因此已經有業務在VPN實例中運行時,執行本命令會導致業務短暫中斷,請慎重操作。

 

1.4.2  配置VPN實例與三層接口關聯

1. 配置限製和指導

如果主接口已經與VSI或MPLS L2VPN的交叉連接關聯,則該接口或其子接口無法與VPN實例進行關聯。

如果子接口已經與VSI或MPLS L2VPN的交叉連接關聯,則該子接口無法與VPN實例進行關聯。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     配置接口與指定的VPN實例關聯。

ip binding vpn-instance vpn-instance-name

缺省情況下,接口未關聯VPN實例,即接口屬於公網。

注意

配置或取消接口與VPN實例關聯後,該接口上的IP地址、路由協議等配置將被刪除。

 

執行本命令將刪除接口上已經配置的IP地址,因此需要重新配置接口的IP地址。

1.4.3  配置VPN實例的路由相關屬性

1. 配置限製和指導

VPN實例視圖下配置的路由相關屬性既可以用於IPv4 VPN,也可以用於IPv6 VPN。

VPN實例視圖和VPN實例IPv4地址族視圖下配置的路由相關屬性均能用於IPv4 VPN。如果同時配置二者,則IPv4 VPN采用VPN實例IPv4地址族視圖下的配置。

2. 配置準備

在對VPN實例應用入方向或出方向路由策略時,還需要創建並配置路由策略,配置方法請參見“三層技術-IP路由配置指導”中的“路由策略”。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入VPN實例視圖或VPN實例IPv4地址族視圖。

¡     進入VPN實例視圖。

ip vpn-instance vpn-instance-name

¡     請依次執行以下命令進入VPN實例IPv4地址族視圖。

ip vpn-instance vpn-instance-name

address-family ipv4

(3)     配置VPN實例的Route Target。

(4)     vpn-target vpn-target&<1-8> [ both | export-extcommunity | import-extcommunity ]

(5)     缺省情況下,未配置VPN實例的Route Target。

(6)     配置VPN實例支持的最大激活路由前綴數。

(7)     routing-table limit number { warn-threshold | simply-alert }

缺省情況下,未限製VPN實例支持的最多激活路由前綴數。

通過本配置可以防止PE路由器上保存過多的激活路由前綴信息。

(8)     對當前VPN實例應用入方向路由策略。

(9)     import route-policy route-policy

缺省情況下,允許所有Route Target屬性匹配的路由通過。

(10)     對當前VPN實例應用出方向路由策略。

(11)     export route-policy route-policy

缺省情況下,不對發布的路由進行過濾。

(12)     配置VPN實例的隧道策略。

(13)     tnl-policy tunnel-policy-name

缺省情況下,隧道策略為按照LSP隧道->GRE隧道->CR-LSP隧道的優先級順序選擇隧道,負載分擔條數為1。

如果本配置中指定的隧道策略尚未創建,則采用缺省策略。隧道策略的創建及配置方法,請參見“MPLS配置指導”中的“隧道策略”。

1.5  配置PE-CE間的路由交換

1.5.1  配置PE-CE間使用靜態路由

1. 功能簡介

本配置在PE上進行,CE上的配置方法與普通靜態路由相同。

靜態路由的詳細配置請參見“三層技術-IP路由配置指導”中的“靜態路由”。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     為指定VPN實例配置靜態路由。

ip route-static vpn-instance s-vpn-instance-name dest-address { mask-length | mask } { interface-type interface-number [ next-hop-address ] | next-hop-address [ public ] [ track track-entry-number ] | vpn-instance d-vpn-instance-name next-hop-address [ track track-entry-number ] } [ permanent ] [ preference preference ] [ tag tag-value ] [ description text ]

1.5.2  配置PE-CE間使用RIP

1. 功能簡介

本配置在PE上進行,CE上配置普通RIP即可。

有關RIP的介紹和詳細配置,請參見“三層技術-IP路由配置指導”中的“RIP”。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     創建PE-CE間的RIP實例,並進入RIP視圖。

rip [ process-id ] vpn-instance vpn-instance-name

(3)     在指定網段上使能RIP。

network network-address [ wildcard-mask ]

缺省情況下,沒有網段使能RIP。

1.5.3  配置PE-CE間使用OSPF

1. 功能簡介

本配置在PE上進行,CE上配置普通OSPF即可。

有關OSPF的介紹和詳細配置,請參見“三層技術-IP路由配置指導”中的“OSPF”。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     創建PE-CE間的OSPF實例,並進入OSPF視圖。

ospf [ process-id | router-id router-id ] * vpn-instance vpn-instance-name

參數

使用說明

router-id router-id

VPN實例綁定的OSPF進程不使用係統視圖下配置的公網Router ID,因此在啟動進程時需要手工配置Router ID,或者所要綁定的VPN實例中至少有一個接口配置了IP地址

vpn-instance vpn-instance-name

·     一個OSPF進程隻能屬於一個VPN實例

·     刪除VPN實例後,相關的所有OSPF進程也將全部被刪除

 

(3)     配置引入BGP路由。

import-route bgp [ as-number ] [ allow-ibgp ] [ cost cost-value | nssa-only | route-policy route-policy-name | tag tag | type type ] *

缺省情況下,沒有引入其他協議的路由信息。

若在設備上配置OSPF實例引入BGP路由,則該OSPF實例下未配置vpn-instance-capability simple命令時,設備會將從MP-IBGP對等體學習到的VPNv4路由引入到OSPF實例,無需指定allow-ibgp參數;否則,隻有指定allow-ibgp參數,設備才會將從MP-IBGP對等體學習到的VPNv4路由引入到OSPF實例。

(4)     (可選)配置OSPF域標識符。

domain-id domain-id [ secondary ]

缺省情況下,OSPF域標識符為0。

域標識符的作用

域標識符配置注意事項

OSPF進程的域ID包含在此進程生成的路由中,在將OSPF路由引入BGP時,域ID被附加到BGP路由上,作為BGP的擴展團體屬性傳遞

·     每個OSPF進程隻能配置一個主標識符,不同進程的域標識符可以相同

·     同一個VPN的所有OSPF進程應配置相同的域ID,以保證路由發布的正確性

 

(5)     (可選)配置OSPF擴展團體屬性的類型編碼。

ext-community-type { domain-id type-code1 | router-id type-code2 | route-type type-code3 }

缺省情況下,OSPF擴展團體屬性Domain ID的類型編碼是0x0005,Router ID的類型編碼是0x0107,Route Type的類型編碼是0x0306。

(6)     配置OSPF區域,並進入OSPF區域視圖。

area area-id

(7)     配置區域所包含的網段並在指定網段的接口上使能OSPF。

network ip-address wildcard-mask

缺省情況下,接口不屬於任何區域且OSPF功能處於關閉狀態。

1.5.4  配置PE-CE間使用IS-IS

1. 功能簡介

本配置在PE上進行,CE上配置普通IS-IS即可。

有關IS-IS的介紹和詳細配置,請參見“三層技術-IP路由配置指導”中的“IS-IS”。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     創建PE-CE間的IS-IS實例,並進入IS-IS視圖。

isis [ process-id ] vpn-instance vpn-instance-name

一個IS-IS進程隻能屬於一個VPN實例。

(3)     配置網絡實體名稱。

network-entity net

缺省情況下,未配置NET。

(4)     退回係統視圖。

quit

(5)     進入接口視圖。

interface interface-type interface-number

(6)     配置指定接口上使能IS-IS路由進程。

isis enable [ process-id ]

缺省情況下,IS-IS功能在接口上處於關閉狀態,且沒有任何IS-IS進程與其關聯。

1.5.5  配置PE-CE間使用EBGP

1. 配置PE

(1)     進入係統視圖。

system-view

(2)     啟動BGP實例,並進入BGP實例視圖。

bgp as-number [ instance instance-name ]

缺省情況下,沒有運行BGP。

(3)     進入BGP-VPN實例視圖。

ip vpn-instance vpn-instance-name

BGP-VPN實例視圖下的配置任務與BGP實例視圖下的相同,有關介紹和詳細配置,請參見“三層技術-IP路由配置指導”中的“BGP基礎”。

(4)     將CE配置為VPN私網EBGP對等體。

peer { group-name | ip-address [ mask-length ] } as-number as-number

(5)     創建BGP-VPN IPv4單播地址族,並進入BGP-VPN IPv4單播地址族視圖。

address-family ipv4 [ unicast ]

(6)     使能本地路由器與指定對等體/對等體組交換IPv4單播路由信息的能力。

peer { group-name | ip-address [ mask-length ] } enable

缺省情況下,本地路由器不能與對等體交換IPv4單播路由信息。

(7)     引入本端CE路由。

import-route protocol [ { process-id | all-processes } [ allow-direct | med med-value | route-policy route-policy-name ] * ]

PE需要將到本端CE的路由引入VPN路由表中,以發布給對端PE。

(8)     配置允許本地AS號在所接收的路由的AS_PATH屬性中出現,並可同時配置允許重複的次數。

peer { group-name | ip-address [ mask-length ] } allow-as-loop [ number ]

缺省情況下,不允許本地AS號在接收路由的AS_PATH屬性中出現。

Hub&Spoke組網中,如果在Hub-PE和Hub-CE之間運行EBGP,則需要在Hub-PE上執行本配置,否則Hub-PE不能接受Hub-CE返回的路由更新信息。

2. 配置CE

(1)     進入係統視圖。

system-view

(2)     啟動BGP實例,並進入BGP實例視圖。

bgp as-number [ instance instance-name ]

缺省情況下,沒有運行BGP。

(3)     將PE配置為對等體。

peer { group-name | ip-address [ mask-length ] } as-number as-number

(4)     創建BGP IPv4單播地址族,並進入BGP IPv4單播地址族視圖。

address-family ipv4 [ unicast ]

(5)     使能本地路由器與指定對等體/對等體組交換IPv4單播路由信息的能力。

peer { group-name | ip-address [ mask-length ] } enable

缺省情況下,本地路由器不能與對等體交換IPv4單播路由信息。

(6)     配置路由引入。

import-route protocol [ { process-id | all-processes } [ allow-direct | med med-value | route-policy route-policy-name ] * ]

CE需要將自己所能到達的VPN網段地址發布給接入的PE,通過PE發布給對端CE。

1.5.6  配置PE-CE間使用IBGP

1. 配置限製和指導

PE和CE之間使用IBGP路由協議隻適用於基本的MPLS L3VPN組網環境,Hub&Spoke、Extranet、跨域VPN、運營商的運營商、嵌套VPN和HoVPN組網中,PE和CE之間不能配置IBGP。

2. 配置PE

(1)     進入係統視圖。

system-view

(2)     啟動BGP實例,並進入BGP實例視圖。

bgp as-number [ instance instance-name ]

缺省情況下,沒有運行BGP。

(3)     進入BGP-VPN實例視圖。

ip vpn-instance vpn-instance-name

BGP-VPN實例視圖下的配置任務與BGP實例視圖下的相同,有關介紹和詳細配置,請參見“三層技術-IP路由配置指導”中的“BGP基礎”。

(4)     將CE配置為VPN私網IBGP對等體。

peer { group-name | ip-address [ mask-length ] } as-number as-number

(5)     創建BGP-VPN IPv4單播地址族,並進入BGP-VPN IPv4單播地址族視圖。

address-family ipv4 [ unicast ]

(6)     使能本地路由器與指定對等體/對等體組交換IPv4單播路由信息的能力。

peer { group-name | ip-address [ mask-length ] } enable

缺省情況下,本地路由器不能與對等體交換IPv4單播路由信息。

(7)     將CE配置為路由反射器的客戶端,以便PE將從CE學習的路由發送給其他IBGP對等體。

peer { group-name | ip-address [ mask-length ] } reflect-client

缺省情況下,未配置路由發射器及其客戶端。

配置路由反射器後不會修改路由的下一跳。如果需要修改下一跳,則需在路由的接收端通過入策略進行修改。

(8)     (可選)允許路由反射器在客戶機之間反射路由。

reflect between-clients

缺省情況下,允許路由反射器在客戶機之間反射路由。

(9)     (可選)配置路由反射器的集群ID。

reflector cluster-id { cluster-id | ip-address }

缺省情況下,每個路由反射器都使用自己的Router ID作為集群ID。

如果一個集群中配置了多個路由反射器,請使用本命令為所有的路由反射器配置相同的集群ID,以避免產生路由環路。

3. 配置CE

(1)     進入係統視圖。

system-view

(2)     啟動BGP實例,並進入BGP實例視圖。

bgp as-number [ instance instance-name ]

缺省情況下,沒有運行BGP。

(3)     將PE配置為IBGP對等體。

peer { group-name | ip-address [ mask-length ] } as-number as-number

(4)     創建BGP IPv4單播地址族,並進入BGP IPv4單播地址族視圖。

address-family ipv4 [ unicast ]

(5)     使能本地路由器與指定對等體/對等體組交換IPv4單播路由信息的能力。

peer { group-name | ip-address [ mask-length ] } enable

缺省情況下,本地路由器不能與對等體交換IPv4單播路由信息。

(6)     配置路由引入。

import-route protocol [ { process-id | all-processes } [ allow-direct | med med-value | route-policy route-policy-name ] * ]

CE需要將自己所能到達的VPN網段地址發布給接入的PE,通過PE發布給對端CE。

1.6  配置PE-PE間的路由交換

(1)     進入係統視圖。

system-view

(2)     啟動BGP實例,並進入BGP實例視圖。

bgp as-number [ instance instance-name ]

缺省情況下,沒有運行BGP。

(3)     將對端PE配置為對等體。

peer { group-name | ip-address [ mask-length ] } as-number as-number

(4)     (可選)指定與對等體/對等體組創建BGP會話時建立TCP連接使用的源接口。

peer { group-name | ip-address [ mask-length ] } connect-interface interface-type interface-number

缺省情況下,BGP使用到達BGP對等體的最佳路由的出接口作為與對等體/對等體組創建BGP會話時建立TCP連接的源接口。

(5)     創建BGP VPNv4地址族,並進入BGP VPNv4地址族視圖。

address-family vpnv4

(6)     使能本地路由器與指定對等體交換VPNv4路由信息的能力。

peer { group-name | ip-address [ mask-length ] } enable

缺省情況下,本地路由器不能與對等體交換VPNv4路由信息。

1.7  配置BGP VPNv4路由

1.7.1  功能簡介

BGP VPNv4路由的屬性需要在BGP VPNv4地址族視圖下配置。BGP VPNv4路由的很多配置都與BGP IPv4單播路由相同,詳細配置請參見“三層技術-IP路由配置指導”中的“BGP基礎”和“BGP高級配置”。

1.7.2  控製BGP VPNv4路由的發布、接收和保存

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     進入BGP VPNv4地址族視圖。

address-family vpnv4

(4)     向對等體/對等體組發送缺省路由。

peer { group-name | ipv4-address [ mask-length ] } default-route-advertise vpn-instance vpn-instance-name

缺省情況下,不向對等體/對等體組發送缺省路由。

(5)     設置允許從指定對等體/對等體組收到的路由數量。

peer { group-name | ipv4-address [ mask-length ] } route-limit prefix-number [ { alert-only | discard | reconnect reconnect-time } | percentage-value ] *

缺省情況下,不限製從對等體/對等體組接收的路由數量。

(6)     保存所有來自指定對等體/對等體組的原始路由更新信息,不管這些路由是否通過了路由策略的過濾。

peer { group-name | ipv4-address [ mask-length ] } keep-all-routes

缺省情況下,不保存來自對等體/對等體組的原始路由更新信息。

1.7.3  配置BGP VPNv4路由的首選值

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     進入BGP VPNv4地址族視圖。

address-family vpnv4

(4)     為從指定對等體/對等體組接收的路由分配首選值。

peer { group-name | ipv4-address [ mask-length ] } preferred-value value

缺省情況下,從對等體/對等體組接收的路由的首選值為0。

1.7.4  配置BGP VPNv4路由反射

1. 功能簡介

為保證IBGP對等體之間的連通性,需要在IBGP對等體之間建立全連接關係。當IBGP對等體數目很多時,網絡資源和CPU資源的消耗都很大。

利用路由反射可以解決這一問題。在一個AS內,其中一台路由器作為RR(Route Reflector,路由反射器),作為客戶機(Client)的路由器與路由反射器之間建立IBGP連接。路由反射器從客戶機接收到路由後,將其傳遞(反射)給所有其他的客戶機,從而保證客戶機之間不需要建立IBGP連接,就可以學習到彼此的路由。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     進入BGP VPNv4地址族視圖。

address-family vpnv4

(4)     配置將本機作為路由反射器,並將對等體或對等體組作為路由反射器的客戶。

peer { group-name | ipv4-address [ mask-length ] } reflect-client

缺省情況下,未配置路由反射器及其客戶。

(5)     (可選)允許路由反射器在客戶機之間反射路由。

reflect between-clients

缺省情況下,允許路由反射器在客戶機之間反射路由。

(6)     (可選)配置路由反射器的集群ID。

reflector cluster-id { cluster-id | ip-address }

缺省情況下,每個路由反射器都使用自己的Router ID作為集群ID。

(7)     (可選)創建路由反射器的反射策略。

rr-filter { ext-comm-list-number | ext-comm-list-name }

缺省情況下,路由反射器不會對反射的路由進行過濾。

(8)     (可選)允許路由反射器反射路由時修改路由屬性。

reflect change-path-attribute

缺省情況下,不允許路由反射器反射路由時修改路由屬性。

(9)     (可選)配置將指定對等體/對等體組加入就近反射組。

peer { group-name | ipv4-address [ mask-length ] } reflect-nearby-group

缺省情況下,就近反射組中不存在任何對等體或對等體組。

路由反射器在就近反射組內的對等體/對等體組之間反射路由時,不修改下一跳屬性。

1.7.5  配置BGP VPNv4路由屬性

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     進入BGP VPNv4地址族視圖。

address-family vpnv4

(4)     配置NEXT_HOP屬性。

¡     配置向對等體/對等體組發布路由時,將下一跳屬性修改為自身的地址。

peer { group-name | ipv4-address [ mask-length ] } next-hop-local

缺省情況下,向對等體/對等體組發布路由時,將下一跳屬性修改為自身的地址。

¡     配置向對等體/對等體組發布路由時不改變下一跳。

peer { group-name | ipv4-address [ mask-length ] } next-hop-invariable

缺省情況下,向對等體/對等體組發布路由時會將下一跳改為自身的地址。

如果在跨域VPN OptionC組網中使用RR通告VPNv4路由,則需要在RR上配置向BGP鄰居和客戶機通告VPNv4路由時,不改變路由的下一跳,以保證私網路由下一跳不會被修改。

(5)     配置AS_PATH屬性。

¡     配置對於從對等體/對等體組接收的路由,允許本地AS號在接收路由的AS_PATH屬性中出現,並配置允許出現的次數。

peer { group-name | ipv4-address [ mask-length ] } allow-as-loop [ number ]

缺省情況下,不允許本地AS號在接收路由的AS_PATH屬性中出現。

¡     配置向指定EBGP對等體/對等體組發送BGP更新消息時隻攜帶公有AS號,不攜帶私有AS號。

peer { group-name | ipv4-address [ mask-length ] } public-as-only

缺省情況下,向EBGP對等體/對等體組發送BGP更新消息時,既可以攜帶公有AS號,又可以攜帶私有AS號。

(6)     配置向對等體/對等體組發布團體屬性。

peer { group-name | ipv4-address [ mask-length ] } advertise-community

缺省情況下,不向對等體/對等體組發布團體屬性。

(7)     為BGP對等體/對等體組配置SoO屬性。

peer { group-name | ipv4-address [ mask-length ] } soo site-of-origin

缺省情況下,沒有為BGP對等體/對等體組配置SoO屬性。

1.7.6  配置BGP VPNv4路由過濾

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     進入BGP VPNv4地址族視圖。

address-family vpnv4

(4)     配置對發布的路由信息進行過濾。

filter-policy { ipv4-acl-number | prefix-list prefix-list-name } export [ direct | { isis | ospf | rip } process-id | static ]

缺省情況下,不對發布的路由信息進行過濾。

(5)     配置對接收的路由信息進行過濾。

filter-policy { ipv4-acl-number | prefix-list prefix-list-name } import

缺省情況下,不對接收的路由信息進行過濾。

(6)     為對等體/對等體組設置基於AS路徑過濾列表的BGP路由過濾策略。

peer { group-name | ipv4-address [ mask-length ] } as-path-acl as-path-acl-number { export | import }

缺省情況下,未配置基於AS路徑過濾列表的BGP路由過濾策略。

(7)     為對等體/對等體組設置基於ACL的BGP路由過濾策略。

peer { group-name | ipv4-address [ mask-length ] } filter-policy ipv4-acl-number { export | import }

缺省情況下,未配置基於ACL的BGP路由過濾策略。

(8)     為對等體/對等體組設置基於地址前綴列表的BGP路由過濾策略。

peer { group-name | ipv4-address [ mask-length ] } prefix-list prefix-list-name { export | import }

缺省情況下,未配置基於地址前綴列表的BGP路由過濾策略。

(9)     對來自對等體/對等體組的路由或發布給對等體/對等體組的路由應用路由策略。

peer { group-name | ipv4-address [ mask-length ] } route-policy route-policy-name { export | import }

缺省情況下,沒有為對等體/對等體組指定路由策略。

(10)     配置對接收到的VPNv4路由進行Route Target過濾。

policy vpn-target

缺省情況下,對接收到的VPNv4路由進行Route Target過濾,即隻將Export Route Target屬性與本地Import Route Target屬性匹配的VPNv4路由加入到路由表。

1.7.7  配置BGP VPNv4路由衰減

1. 功能簡介

通過配置BGP VPNv4路由衰減,可以抑製不穩定的路由信息,不允許這類路由參與路由選擇。

2. 配置限製和指導

本配置僅對IBGP路由生效。

配置本功能後,IBGP鄰居down了之後,來自該鄰居的VPNv4路由不會被刪除,而是進行路由衰減。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     進入BGP VPNv4地址族視圖。

address-family vpnv4

(4)     配置IBGP路由衰減。

dampening ibgp[ half-life-reachable half-life-unreachable reuse suppress ceiling | route-policy route-policy-name ] *

缺省情況下,未配置IBGP路由衰減。

1.7.8  配置BGP VPNv4路由的下一跳指向私網

1. 功能簡介

缺省情況下,設備接收到VPNv4路由時不修改路由的下一跳屬性,即VPNv4路由的下一跳為公網地址。配置本功能後,設備接收到VPNv4路由時,將VPNv4路由的下一跳指向私網,並將出標簽修改為無效值。例如,設備收到VPNv4路由的下一跳為公網地址10.1.1.1,配置本功能後,將VPNv4路由的下一跳指向私網10.1.1.1。

2. 配置限製和指導

執行本配置後:

·     設備將刪除並重新建立與指定對等體的BGP會話,會造成BGP會話短暫中斷。

·     設備隻接收RD與本地已存在的RD相同的VPNv4路由。

·     設備將從指定對等體/對等體組接收到的VPNv4路由發送給其對等體時,路由RT屬性將保持原有屬性,不使用所在VPN的RT屬性進行替換。

·     本地刪除VPN實例或VPN實例的RD時,從指定對等體/對等體組收到的屬於該VPN實例的VPNv4路由將被刪除。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     進入BGP VPNv4地址族視圖。

address-family vpnv4

(4)     配置VPNv4路由的下一跳指向私網。

peer { group-name | ipv4-address [ mask-length ] } next-hop-vpn

缺省情況下,設備接收到VPNv4路由時不修改路由的下一跳屬性。

1.8  配置跨域VPN

1.8.1  配置跨域VPN-OptionA

跨域VPN-OptionA的實現比較簡單,當PE上的VPN數量及VPN路由數量都比較少時可以采用這種方案。

跨域VPN-OptionA的配置可以描述為:

·     對各AS分別進行基本MPLS L3VPN配置。

·     對於ASBR,將對端ASBR看作自己的CE配置即可。即:跨域VPN-OptionA方式需要在PE和ASBR上分別配置VPN實例,前者用於接入CE,後者用於接入對端ASBR。

在跨域VPN-OptionA方式中,對於同一個VPN,同一AS內的ASBR與PE的VPN實例的Route Target應能匹配;不同AS的PE之間的VPN實例的Route Target則不需要匹配。

1.8.2  配置跨域VPN-OptionB

1. 配置限製和指導

ASBR在將VPNv4路由發布給MP-IBGP對等體時,始終會將下一跳修改為自身的地址,不受peer next-hop-local命令的控製。

2. 配置PE

配置基本MPLS L3VPN,並指定同一AS內的ASBR為MP-IBGP對等體。對於同一個VPN,不同AS的PE上為該VPN實例配置的Route Target需要匹配。

3. 配置ASBR

(1)     進入係統視圖。

system-view

(2)     在連接AS內部路由器的接口上使能MPLS和LDP能力。

a.     配置本節點的LSR ID。

mpls lsr-id lsr-id

缺省情況下,未配置LSR ID。

b.     使能本節點的LDP能力,並進入LDP視圖。

mpls ldp

缺省情況下,LDP能力處於關閉狀態。

c.     退回係統視圖。

quit

d.     進入連接AS內部路由器接口的接口視圖。

interface interface-type interface-number

e.     使能接口的MPLS能力。

mpls enable

缺省情況下,接口的MPLS能力處於關閉狀態。

f.     使能接口的LDP能力。

mpls ldp enable

缺省情況下,接口的LDP能力處於關閉狀態。

g.     退回係統視圖。

quit

(3)     在連接對端ASBR的接口上使能MPLS能力。

a.     進入連接對端ASBR接口的接口視圖。

interface interface-type interface-number

b.     使能接口的MPLS能力。

mpls enable

缺省情況下,接口的MPLS能力處於關閉狀態。

c.     退回係統視圖。

quit

(4)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(5)     創建BGP對等體,將同一AS的PE配置為IBGP對等體,將不同AS的ASBR配置為EBGP對等體。

peer { group-name | ipv4-address [ mask-length ] } as-number as-number

(6)     進入BGP VPNv4地址族視圖。

address-family vpnv4

(7)     使能本地路由器與同一AS的PE、不同AS的ASBR交換VPNv4路由信息的能力。

peer { group-name | ipv4-address [ mask-length ] } enable

缺省情況下,本地路由器不能與對等體交換VPNv4路由信息。

(8)     配置對接收到的VPNv4路由不進行Route Target過濾。

undo policy vpn-target

缺省情況下,對接收到的VPNv4路由進行Route Target過濾。

1.8.3  配置跨域VPN-OptionC(方式一)

1. 配置限製和指導

由於PE之間不是直連,因此需要配置peer ebgp-max-hop命令,允許本地路由器同非直連網絡上的鄰居建立EBGP會話。

2. 配置準備

執行本配置前,需要在PE或ASBR上配置通過BGP發布PE地址對應的路由,配置方法請參見“三層技術-IP路由配置指導”中的“BGP基礎”。

PE上還需完成以下操作:

·     配置VPN實例

·     配置PE-CE之間的路由交換

3. 配置PE

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     創建BGP對等體,將本AS的ASBR配置為IBGP對等體,將另一AS的PE配置為EBGP對等體。

peer { group-name | ipv4-address [ mask-length ] } as-number as-number

(4)     創建BGP IPv4單播地址族,並進入BGP IPv4單播地址族視圖。

address-family ipv4 [ unicast ]

(5)     使能本地路由器與本AS的ASBR交換IPv4單播路由信息的能力。

peer { group-name | ipv4-address [ mask-length ] } enable

缺省情況下,本地路由器不能與對等體交換IPv4單播路由信息。

(6)     配置與本AS的ASBR之間能夠交換帶標簽的IPv4路由。

peer { group-name | ipv4-address [ mask-length ] } label-route-capability

缺省情況下,不具有與對等體/對等體組交換帶標簽IPv4路由的能力。

(7)     退回BGP實例視圖。

quit

(8)     進入BGP VPNv4地址族視圖。

address-family vpnv4

(9)     使能本地路由器與另一AS的PE交換VPNv4路由信息的能力。

peer { group-name | ipv4-address [ mask-length ] } enable

缺省情況下,本地路由器不能與對等體交換VPNv4路由信息。

(10)     (可選)配置向對等體發送路由時不改變下一跳。

peer { group-name | ipv4-address [ mask-length ] } next-hop-invariable

缺省情況下,向對等體/對等體組發布路由時會將下一跳改為自己的地址。

本配置用於使用RR通告VPNv4路由的情況:在RR上執行本配置,使得RR之間通告VPNv4路由時,路由的下一跳不會被改變。

4. 配置ASBR

(1)     進入係統視圖。

system-view

(2)     配置路由策略。

a.     創建路由策略,並進入路由策略視圖。

route-policy route-policy-name { deny | permit } node node-number

b.     匹配帶標簽的IPv4路由。

if-match mpls-label

缺省情況下,不匹配路由信息的MPLS標簽。

在路由策略中,還可以配置其他的if-match子句,以實現隻對滿足某些條件的路由分配標簽,其它路由仍作為普通IPv4路由發布。

c.     為IPv4路由分配標簽。

apply mpls-label

缺省情況下,沒有為IPv4路由分配標簽。

d.     退回係統視圖。

quit

(3)     在連接AS內部路由器的接口上使能MPLS和LDP能力。

a.     配置本節點的LSR ID。

mpls lsr-id lsr-id

缺省情況下,未配置LSR ID。

b.     使能本節點的LDP能力,並進入LDP視圖。

mpls ldp

缺省情況下,LDP能力處於關閉狀態。

c.     退回係統視圖。

quit

d.     進入連接AS內部路由器接口的接口視圖。

interface interface-type interface-number

e.     使能接口的MPLS能力。

mpls enable

缺省情況下,接口的MPLS能力處於關閉狀態。

f.     使能接口的LDP能力。

mpls ldp enable

缺省情況下,接口的LDP能力處於關閉狀態。

g.     退回係統視圖。

quit

(4)     在連接對端ASBR的接口上使能MPLS能力。

a.     進入連接對端ASBR接口的接口視圖。

interface interface-type interface-number

b.     使能接口的MPLS能力。

mpls enable

缺省情況下,接口的MPLS能力處於關閉狀態。

c.     退回係統視圖。

quit

(5)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(6)     創建BGP對等體,將本AS的PE配置為IBGP對等體,將另一AS的ASBR配置為EBGP對等體。

peer { group-name | ipv4-address [ mask-length ] } as-number as-number

(7)     創建BGP IPv4單播地址族,並進入BGP IPv4單播地址族視圖。

address-family ipv4 [ unicast ]

(8)     使能本地路由器與本AS的PE、另一AS的ASBR交換IPv4單播路由信息的能力。

peer { group-name | ipv4-address [ mask-length ] } enable

缺省情況下,本地路由器不能與對等體交換IPv4單播路由信息。

(9)     配置與本AS的PE及另一AS的ASBR之間能夠交換帶標簽的IPv4路由。

peer { group-name | ipv4-address [ mask-length ] } label-route-capability

缺省情況下,不具有與對等體/對等體組交換帶標簽IPv4路由的能力。

(10)     配置向本AS的PE發布路由時將下一跳改為自己的地址。

peer { group-name | ipv4-address [ mask-length ] } next-hop-local

缺省情況下,在向IBGP對等體/對等體組發布路由時不會將下一跳改為自己的地址。

(11)     對來自對等體/對等體組的路由或發布給對等體/對等體組的路由應用路由策略。

peer { group-name | ipv4-address [ mask-length ] } route-policy route-policy-name { export | import }

缺省情況下,沒有為對等體/對等體組指定路由策略。

1.8.4  配置跨域VPN-OptionC(方式二)

1. 配置限製和指導

由於PE之間不是直連,因此需要配置peer ebgp-max-hop命令,允許本地路由器同非直連網絡上的鄰居建立EBGP會話。

2. 配置準備

執行本配置前,需要在PE或ASBR上配置通過BGP發布PE地址對應的路由,配置方法請參見“三層技術-IP路由配置指導”中的“BGP”。

PE上還需完成以下操作:

·     配置VPN實例

·     配置PE-CE之間的路由交換

3. 配置PE

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     創建BGP對等體,將另一AS的PE配置為EBGP對等體。

peer { group-name | ipv4-address [ mask-length ] } as-number as-number

(4)     進入BGP VPNv4地址族視圖。

address-family vpnv4

(5)     使能本地路由器與另一AS的PE交換VPNv4路由信息的能力。

peer { group-name | ipv4-address [ mask-length ] } enable

缺省情況下,本地路由器不能與對等體交換VPNv4路由信息。

(6)     (可選)配置向對等體發送路由時不改變下一跳。

peer { group-name | ipv4-address [ mask-length ] } next-hop-invariable

缺省情況下,向對等體/對等體組發布路由時會將下一跳改為自己的地址。

本配置用於使用RR通告VPNv4路由的情況:在RR上執行本配置,使得RR之間通告VPNv4路由時,路由的下一跳不會被改變。

4. 配置ASBR

(1)     進入係統視圖。

system-view

(2)     配置路由策略。

a.     創建路由策略,並進入路由策略視圖。

route-policy route-policy-name { deny | permit } node node-number

b.     匹配帶標簽的IPv4路由。

if-match mpls-label

缺省情況下,不匹配路由信息的MPLS標簽。

在路由策略中,還可以配置其他的if-match子句,以實現隻對滿足某些條件的路由分配標簽,其它路由仍作為普通IPv4路由發布。

c.     為IPv4路由分配標簽。

apply mpls-label

缺省情況下,沒有為IPv4路由分配標簽。

d.     退回係統視圖。

quit

(3)     在連接AS內部路由器的接口上使能MPLS和LDP能力。

a.     配置本節點的LSR ID。

mpls lsr-id lsr-id

缺省情況下,未配置LSR ID。

b.     使能本節點的LDP能力,並進入LDP視圖。

mpls ldp

缺省情況下,LDP能力處於關閉狀態。

c.     退回係統視圖。

quit

d.     進入連接AS內部路由器接口的接口視圖。

interface interface-type interface-number

e.     使能接口的MPLS能力。

mpls enable

缺省情況下,接口的MPLS能力處於關閉狀態。

f.     使能接口的LDP能力。

mpls ldp enable

缺省情況下,接口的LDP能力處於關閉狀態。

g.     退回係統視圖。

quit

(4)     在連接對端ASBR的接口上使能MPLS能力。

a.     進入連接對端ASBR接口的接口視圖。

interface interface-type interface-number

b.     使能接口的MPLS能力。

mpls enable

缺省情況下,接口的MPLS能力處於關閉狀態。

c.     退回係統視圖。

quit

(5)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(6)     創建BGP對等體,將另一AS的ASBR配置為EBGP對等體。

peer { group-name | ipv4-address [ mask-length ] } as-number as-number

(7)     創建BGP IPv4單播地址族,並進入BGP IPv4單播地址族視圖。

address-family ipv4 [ unicast ]

(8)     使能本地路由器與另一AS的ASBR交換IPv4單播路由信息的能力。

peer { group-name | ipv4-address [ mask-length ] } enable

缺省情況下,本地路由器不能與對等體交換IPv4單播路由信息。

(9)     配置與另一AS的ASBR之間能夠交換帶標簽的IPv4路由。

peer { group-name | ipv4-address [ mask-length ] } label-route-capability

缺省情況下,不具有與對等體/對等體組交換帶標簽IPv4路由的能力。

(10)     配置向本AS的PE發布路由時將下一跳改為自己的地址。

peer { group-name | ipv4-address [ mask-length ] } next-hop-local

缺省情況下,在向IBGP對等體/對等體組發布路由時不會將下一跳改為自己的地址。

(11)     對來自對等體/對等體組的路由或發布給對等體/對等體組的路由應用路由策略。

peer { group-name | ipv4-address [ mask-length ] } route-policy route-policy-name { export | import }

缺省情況下,沒有為對等體/對等體組指定路由策略。

1.9  配置嵌套VPN

1. 配置限製和指導

同一用戶網絡的不同子VPN之間地址空間不能重疊。

建議嵌套VPN中對等體CE的地址不要與公網中對等體的地址重疊。

目前,嵌套VPN不支持多跳EBGP組網方式,因此運營商PE和運營商CE之間必須使用直連接口地址建立鄰居關係。

2. 配置步驟

(1)     配置用戶CE接入用戶PE。

a.     在用戶PE上配置VPN實例。

詳細配置請參見“1.4  配置VPN實例”。

b.     在用戶PE和用戶CE上配置私網路由交換。

詳細配置請參見“1.5  配置PE-CE間的路由交換”。

(2)     配置用戶PE和運營商CE通過BGP VPNv4路由交互用戶網絡內部子VPN的路由。

a.     在用戶PE和運營商CE上配置BGP VPNv4路由交互。

詳細配置請參見“1.6  配置PE-PE間的路由交換”。

b.     在運營商CE上依次執行以下命令,配置其接收所有的BGP VPNv4路由,不根據Route Target對VPNv4路由進行過濾。

system-view

bgp as-number [ instance instance-name ]

address-family vpnv4

undo policy vpn-target

缺省情況下,對接收到的VPNv4路由進行Route Target過濾,即隻將Export Route Target屬性與本地Import Route Target屬性匹配的VPNv4路由加入到路由表。

嵌套VPN網絡中可以不部署運營商CE,用戶PE直接連接到運營商PE。此時,無需執行本配置。

(3)     配置運營商CE接入運營商PE。

a.     在運營商PE上配置VPN實例。

詳細配置請參見“1.4  配置VPN實例”。

b.     在運營商PE和運營商CE上配置路由交換。

詳細配置請參見“1.5  配置PE-CE間的路由交換”。

(4)     配置運營商PE和運營商CE交換用戶的VPNv4路由。

此處隻介紹運營商PE的配置方法。運營商CE的配置方法,請參見“1.6  配置PE-PE間的路由交換”。用戶PE直接連接運營商PE時,用戶PE同時作為運營商CE設備,在用戶PE上要進行運營商CE的相關配置。

a.     請依次執行以下命令進入BGP VPNv4地址族視圖。

system-view

bgp as-number [ instance instance-name ]

address-family vpnv4

b.     開啟嵌套VPN功能。

nesting-vpn

缺省情況下,嵌套VPN功能處於關閉狀態。

c.     退回BGP實例視圖。

quit

d.     進入BGP-VPN實例視圖。

ip vpn-instance vpn-instance-name

e.     將運營商CE配置為BGP對等體。

peer { group-name | ipv4-address [ mask-length ] } as-number as-number

f.     創建BGP-VPN VPNv4地址族,並進入BGP-VPN VPNv4地址族視圖。

address-family vpnv4

g.     激活對等體CE或CE所屬的對等體組,使能與其交換BGP-VPNv4路由信息的能力。

peer { group-name | ipv4-address [ mask-length ] } enable

缺省情況下,未激活對等體和對等體組。

h.     (可選)為BGP對等體/對等體組配置SoO屬性。

peer { group-name | ipv4-address [ mask-length ] } soo site-of-origin

缺省情況下,沒有為BGP對等體/對等體組配置SoO屬性。

(5)     配置運營商PE之間交互BGP VPNv4路由。

詳細配置請參見“1.6  配置PE-PE間的路由交換”。

1.10  配置多角色主機

1.10.1  功能簡介

多角色主機特性的配置都在多角色主機所屬Site接入的PE上進行,主要包括如下配置:

·     配置並應用策略路由:使得多角色主機發送的報文可以發送到多個VPN。

·     配置靜態路由:使得其他VPN返回的報文能夠發送給多角色主機。

1.10.2  配置並應用策略路由

(1)     進入係統視圖。

system-view

(2)     創建策略節點,並進入策略節點視圖。

policy-based-route policy-name { deny | permit } node node-number

(3)     配置策略節點的匹配規則。

詳細介紹請參見“三層技術-IP路由配置指導”中的“策略路由”。

缺省情況下,未配置策略節點的匹配規則,所有報文都滿足該節點的匹配規則。

本配置用來匹配來自多角色主機的報文。

(4)     設置報文在指定VPN實例中進行轉發。

apply access-vpn vpn-instance vpn-instance-name&<1-n>

缺省情況下,未設置報文在指定VPN實例中進行轉發。

本配置中需要指定多個VPN實例,第一個為多角色主機所屬的VPN實例,其餘為需要訪問的其他VPN實例。對於滿足匹配規則的報文,根據第一個可用的VPN實例轉發表進行轉發。

(5)     退回係統視圖。

quit

(6)     進入接入CE的接口視圖。

interface interface-type interface-number

(7)     對接口轉發的報文應用策略。

ip policy-based-route policy-name

缺省情況下,對接口轉發的報文未應用策略。

1.10.3  配置靜態路由

(1)     進入係統視圖。

system-view

(2)     為指定VPN實例配置靜態路由。

ip route-static vpn-instance s-vpn-instance-name dest-address { mask-length | mask } vpn-instance d-vpn-instance-name next-hop-address[ track track-entry-number ] [ permanent ] [ preference preference ] [ tag tag-value ] [ description text ]

其中,d-vpn-instance-name為多角色主機所屬的VPN實例,next-hop-address為多角色主機所在Site的CE設備的地址。

1.11  配置HoVPN

1.11.1  配置UPE

UPE上僅需進行MPLS L3VPN基本配置。

1.11.2  配置SPE

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     創建BGP對等體。

peer { group-name | ipv4-address [ mask-length ] } as-number as-number

(4)     進入BGP VPNv4地址族視圖。

address-family vpnv4

(5)     使能本地路由器與指定對等體交換VPNv4路由信息的能力。

peer { group-name | ipv4-address [ mask-length ] } enable

缺省情況下,本地路由器不能與對等體交換VPNv4路由信息。

(6)     配置BGP對等體或對等體組為UPE。

peer { group-name | ipv4-address [ mask-length ] } upe

缺省情況下,BGP對等體或對等體組不是HoVPN的UPE。

(7)     向UPE發送路由。

¡     向UPE發送指定VPN實例的缺省路由。

peer { group-name | ipv4-address [ mask-length ] } default-route-advertise vpn-instance vpn-instance-name

如果BGP對等體/對等體組為UPE時,隻有執行本命令後,設備才會向其發布VPN實例缺省路由,下一跳為本地地址。不論本地路由表中是否存在缺省路由,都會發布該缺省路由。

¡     向UPE發送通過路由策略的路由。

peer { group-name | ipv4-address [ mask-length ] } upe route-policy route-policy-name export

缺省情況下,不向對等體發布路由。

建議不要同時配置peer default-route-advertise vpn-instance命令和peer upe route-policy命令。

(8)     退回BGP實例視圖。

(9)     quit

(10)     創建BGP-VPN實例,並進入BGP-VPN實例視圖。

(11)     ip vpn-instance vpn-instance-name

(12)     由於SPE上沒有接口與用戶網絡直接相連,因此,SPE上不需要配置VPN實例與接口關聯。本配置僅用於根據Route Target屬性將學習到的VPNv4路由添加到相應VPN實例的BGP路由表中。

1.12  配置Egress PE上私網路由標簽操作方式

1. 功能簡介

Egress PE上私網路由的標簽操作方式分為:

·     私網標簽的POPGO轉發方式:彈出標簽後,直接從出接口發送。

·     私網標簽的POP轉發方式:彈出標簽後,再查FIB表轉發。

2. 配置限製和指導

每實例每標簽的標簽分配方式不能與私網標簽的POPGO轉發方式配合使用,配置apply-label per-instance命令後,隻能根據標簽查找FIB轉發報文,該VPN內vpn popgo命令不生效。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     配置Egress PE上私網路由的標簽操作方式為根據標簽查找出接口轉發。

vpn popgo

缺省情況下,Egress PE上私網路由的標簽操作方式為根據標簽查找FIB進行轉發。

1.13  配置MPLS L3VPN快速重路由

1.13.1  功能簡介

開啟MPLS L3VPN快速重路由功能的方法有如下兩種:

·     在路由策略中指定快速重路由的備份下一跳,並在BGP-VPN IPv4單播地址族視圖下配置快速重路由引用該路由策略。采用這種方式時,隻有為主路由計算出的備份下一跳地址與指定的地址相同時,才會為其生成備份下一跳;否則,不會為主路由生成備份下一跳。在引用的路由策略中,還可以配置if-match子句,用來決定哪些路由可以進行快速重路由保護,設備隻會為通過if-match子句過濾的路由生成備份下一跳。

·     在BGP-VPN IPv4單播地址族視圖/BGP VPNv4地址族視圖下開啟該地址族的快速重路由功能。采用這種方式時,設備會為當前VPN實例的所有BGP路由自動計算備份下一跳,即隻要從不同BGP對等體學習到了到達同一目的網絡的路由,且這些路由不等價,就會生成主備兩條路由。

路由策略方式的優先級高於開啟地址族快速重路由功能方式。

1.13.2  配置限製和指導

在某些組網情況下,在BGP-VPN IPv4單播地址族視圖/BGP VPNv4地址族視圖下執行pic命令開啟該地址族的快速重路由功能,為所有BGP路由生成備份下一跳後,可能會導致路由環路,請謹慎使用本命令。

1.13.3  通過路由策略配置快速重路由功能

(1)     進入係統視圖。

system-view

(2)     配置BFD檢測。

¡     使能MPLS BFD功能。

mpls bfd enable

缺省情況下,MPLS與BFD聯動功能處於關閉狀態。

在VPNv4路由備份VPNv4路由、IPv4路由備份VPNv4路由組網中,需要執行本命令。本命令的詳細介紹,請參見“MPLS命令參考”中的“MPLS OAM”。

¡     配置echo報文的源IP地址。

bfd echo-source-ip ip-address

缺省情況下,未配置echo報文的源IP地址。

VPNv4路由備份IPv4路由組網中,若通過Echo方式的BFD會話檢測主路由的下一跳是否可達,則需要執行本命令。本命令的詳細介紹,請參見“可靠性命令參考”中的“BFD”。

(3)     配置使用BFD檢測公網LSP或MPLS TE隧道的連通性。

¡     配置使用BFD檢測指定FEC對應LSP的連通性。

mpls bfd dest-addr mask-length [ nexthop nexthop-address [ discriminator local local-id remote remote-id ] ] [ template template-name ]

¡     依次執行以下命令配置使用BFD檢測當前隧道接口對應MPLS TE隧道的連通性。

interface tunnel number mode mpls-te

mpls bfd [ discriminator local local-id remote remote-id ] [ template template-name ]

quit

缺省情況下,未使用BFD檢測公網LSP和MPLS TE隧道的連通性。

在VPNv4路由備份VPNv4路由、IPv4路由備份VPNv4路由組網中,需要執行本配置;VPNv4路由備份IPv4路由組網中,不需要執行本配置。

本配置中各命令的詳細介紹,請參見“MPLS命令參考”中的“MPLS OAM”。

(4)     配置路由策略。

a.     創建路由策略,並進入路由策略視圖。

route-policy route-policy-name permit node node-number

b.     配置快速重路由的備份下一跳地址。

apply fast-reroute backup-nexthop ip-address

缺省情況下,未配置快速重路由的備份下一跳地址。

c.     退回係統視圖。

quit

本配置中各命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“路由策略”。

(5)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(6)     (可選)配置通過Echo方式的BFD會話檢測主路由的下一跳是否可達。

primary-path-detect bfd echo

缺省情況下,通過ARP檢測主路由的下一跳是否可達。

VPNv4路由備份IPv4路由組網中,可以根據實際情況選擇是否執行本配置;其他組網中,無需執行本配置。

本命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP高級配置”。

(7)     進入BGP-VPN實例視圖。

ip vpn-instance vpn-instance-name

(8)     進入BGP-VPN IPv4單播地址族視圖。

address-family ipv4 [ unicast ]

(9)     在當前地址族視圖下指定快速重路由引用的路由策略。

fast-reroute route-policy route-policy-name

缺省情況下,快速重路由未引用任何路由策略。

引用的路由策略中,隻有apply fast-reroute backup-nexthop命令生效,其他apply子句不會生效。

本命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP高級配置”。

1.13.4  開啟地址族的快速重路由功能

(1)     進入係統視圖。

system-view

(2)     配置BFD檢測。

¡     使能MPLS BFD功能。

mpls bfd enable

缺省情況下,MPLS與BFD聯動功能處於關閉狀態。

在VPNv4路由備份VPNv4路由、IPv4路由備份VPNv4路由組網中,需要執行本命令。本命令的詳細介紹,請參見“MPLS命令參考”中的“MPLS OAM”。

¡     配置echo報文的源IP地址。

bfd echo-source-ip ip-address

缺省情況下,未配置echo報文的源IP地址。

VPNv4路由備份IPv4路由組網中,若通過Echo方式的BFD會話檢測主路由的下一跳是否可達,則需要執行本命令。本命令的詳細介紹,請參見“可靠性命令參考”中的“BFD”。

(3)     配置使用BFD檢測公網LSP或MPLS TE隧道的連通性。

¡     配置使用BFD檢測指定FEC對應LSP的連通性。

mpls bfd dest-addr mask-length [ nexthop nexthop-address [ discriminator local local-id remote remote-id ] ] [ template template-name ]

¡     依次執行本命令配置使用BFD檢測當前隧道接口對應MPLS TE隧道的連通性。

interface tunnel number mode mpls-te

mpls bfd [ discriminator local local-id remote remote-id ] [ template template-name ]

quit

缺省情況下,未使用BFD檢測公網LSP和MPLS TE隧道的連通性。

在VPNv4路由備份VPNv4路由、IPv4路由備份VPNv4路由組網中,需要執行本配置;VPNv4路由備份IPv4路由組網中,不需要執行本配置。

本配置中各命令的詳細介紹,請參見“MPLS命令參考”中的“MPLS OAM”。

(4)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(5)     (可選)配置通過Echo方式的BFD會話檢測主路由的下一跳是否可達。

primary-path-detect bfd echo

缺省情況下,通過ARP檢測主路由的下一跳是否可達。

VPNv4路由備份IPv4路由組網中,可以根據實際情況選擇是否執行本配置;其他組網中,無需執行本配置。

本命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP高級配置”。

(6)     進入BGP-VPN IPv4單播地址族視圖或BGP VPNv4地址族視圖。

¡     依次執行以下命令進入BGP-VPN IPv4單播地址族視圖。

ip vpn-instance vpn-instance-name

address-family ipv4 [ unicast ]

¡     進入BGP VPNv4地址族視圖。

address-family vpnv4

(7)     開啟當前地址族的快速重路由功能。

pic

缺省情況下,快速重路由功能處於關閉狀態。

本命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP高級配置”。

1.14  配置VPN實例關聯的隧道對TTL的處理模式

1. 功能簡介

VPN實例關聯的隧道對報文TTL有如下兩種處理方式:

·     Pipe模式:當IP(或IPv6)報文進入該VPN實例的隧道時,Ingress設備會為原始報文添加外層報文頭部,使用缺省值255(或在SRv6視圖下通過執行encapsulation source-address ip-ttl命令指定的TTL值)作為外層IP報文的TTL(或IPv6報文的Hop Limit);離開該VPN實例的隧道時,Egress設備不修改原始IP報文的TTL(或IPv6報文的Hop Limit)。使用這種方式時,公網中的節點對用戶網絡的報文不可見。公網Tracert的結果不包括每一跳信息,從而隱藏公網的結構。

·     Uniform模式:當IP(或IPv6)報文進入該VPN實例的隧道時,Ingress設備會為原始報文添加外層報文頭部,將原始報文的TTL(或Hop Limit)值複製到外層IP報文的TTL(或IPv6報文的Hop Limit)域;離開該VPN實例的隧道時,Egress設備再將外層IP報文的TTL(或IPv6報文的Hop Limit)複製到原始IP報文的TTL(或IPv6報文的Hop Limit)域。使用這種方式時,公網中的節點對用戶網絡的報文可見。報文沿著隧道傳輸的過程中,TTL逐跳遞減,Tracert的結果將反映報文實際經過的路徑。

2. 配置限製和指導

目前,僅支持配置VPN實例關聯的SRv6隧道對TTL的處理模式。VPN實例關聯SRv6隧道的詳細介紹,請參見“Segment Routing配置指導”中的“MPLS L3VPN over SRv6”。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入VPN實例視圖。

ip vpn-instance vpn-instance-name [ index vpn-index ]

(3)     配置VPN實例關聯的隧道對TTL的處理模式。

ttl-mode { pipe | uniform }

缺省情況下,VPN實例關聯的隧道對TTL的處理模式是Pipe模式。

 

1.15  配置OSPF偽連接

1.15.1  功能簡介

在PE間配置偽連接Sham-link後,Sham-link將被視為OSPF區域內路由。這一特性使經過MPLS VPN骨幹網的路由成為OSPF區域內路由,避免VPN流量經後門路由轉發。

Sham-link的源地址和目的地址應使用32位掩碼的Loopback接口地址,且該Loopback接口需要綁定到VPN實例中,並通過BGP發布。

1.15.2  配置準備

在配置OSPF偽連接之前,需完成以下任務:

·     配置基本MPLS L3VPN(PE-CE間使用OSPF)

·     在用戶CE所在局域網內配置OSPF

1.15.3  發布Loopback接口的路由

(1)     進入係統視圖。

system-view

(2)     創建Loopback接口,並進入Loopback接口視圖。

interface loopback interface-number

(3)     將Loopback接口與VPN實例關聯。

ip binding vpn-instance vpn-instance-name

缺省情況下,接口不關聯任何VPN實例,屬於公網接口。

(4)     配置Loopback接口的地址。

ip address ip-address { mask-length | mask }

缺省情況下,未配置Loopback接口的地址。

(5)     退回係統視圖。

quit

(6)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(7)     進入BGP-VPN實例視圖。

ip vpn-instance vpn-instance-name

(8)     進入BGP-VPN IPv4單播地址族視圖。

address-family ipv4 [ unicast ]

(9)     引入直連路由(將Loopback主機路由引入BGP)。

import-route direct

缺省情況下,不會引入直連路由。

1.15.4  創建偽連接

(1)     進入係統視圖。

system-view

(2)     進入OSPF視圖。

ospf [ process-id | router-id router-id | vpn-instance vpn-instance-name ] *

建議用戶啟動OSPF進程時手工配置路由器ID。

(3)     配置VPN引入路由的外部路由標記值。

route-tag tag-value

缺省情況下,若MPLS骨幹網上配置了BGP路由協議,並且BGP的AS號不大於65535,則外部路由標記值的前麵兩個字節固定為0xD000,後麵的兩個字節為本端BGP的AS號;否則,外部路由標記值為0。

(4)     進入OSPF區域視圖。

area area-id

(5)     創建一條OSPF偽連接。

sham-link source-ip-address destination-ip-address [ cost cost-value | dead dead-interval | hello hello-interval | { { hmac-md5 | hmac-sha-256 | md5 } key-id { cipher | plain } string | keychain keychain-name | simple { cipher | plain } string } | retransmit retrans-interval | trans-delay delay | ttl-security hops hop-count ] *

1.16  配置BGP的AS號替換和SoO屬性

1. 功能簡介

不同Site的CE具有相同的AS號時,PE上需要開啟BGP的AS號替換功能,從而避免路由被丟棄。

使能了BGP的AS號替換功能後,當PE向指定CE發布路由時,如果路由的AS_PATH中有與CE相同的AS號,將被替換成PE的AS號後再發布。

PE使用不同接口連接同一站點的多個CE時,如果配置了BGP的AS號替換功能,則會導致路由環路。這種情況下,需要在PE上為從同一站點不同CE學習到的路由添加相同的SoO屬性,且PE向CE發布路由時檢查SoO屬性,如果路由的SoO屬性與為CE配置的SoO屬性相同,則不將該路由發布給CE,從而避免路由環路。

本配置中各命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP高級配置”。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     進入BGP-VPN實例視圖。

ip vpn-instance vpn-instance-name

(4)     使能BGP的AS號替換功能。

peer { ipv4-address [ mask-length ] | group-name } substitute-as

缺省情況下,BGP的AS號替換功能處於關閉狀態。

(5)     進入BGP-VPN IPv4單播地址族視圖。

address-family ipv4 [ unicast ]

(6)     (可選)為BGP對等體/對等體組配置SoO屬性。

peer { group-name | ipv4-address [ mask-length ] } soo site-of-origin

缺省情況下,沒有為BGP對等體/對等體組配置SoO屬性。

1.17  配置RT-Filter功能

1. 功能簡介

在MPLS L3VPN組網中,通過RT-Filter功能可以從源頭上減少路由信息的數量。配置RT-Filter功能後,PE使用RT-Filter地址族將本地的Import Target屬性發布給遠端PE。遠端PE根據接收到的Import target屬性直接對路由進行過濾,隻發布通過Import target屬性過濾的路由,從而減少發布的路由信息數量。

RT-Filter功能通常和路由反射器功能配合使用,以解決路由反射器上存在大量路由的問題。

本配置中各命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP基礎”。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     進入BGP IPv4 RT-Filter地址族視圖。

address-family ipv4 rtfilter

(4)     允許本地路由器與指定對等體/對等體組交換路由信息。

peer { group-name | ipv4-address [ mask-length ] } enable

缺省情況下,本地路由器不能與對等體/對等體組交換路由信息。

(5)     (可選)向對等體/對等體組發送缺省路由。

peer { group-name | ipv4-address [ mask-length ] } default-route-advertise [ route-policy route-policy-name ]

缺省情況下,不向對等體/對等體組發送缺省路由。

(6)     (可選)為從對等體/對等體組接收的路由分配首選值。

peer { group-name | ipv4-address [ mask-length ] } preferred-value value

缺省情況下,從對等體/對等體組接收的路由的首選值為0。

(7)     (可選)配置本機作為路由反射器,對等體/對等體組作為路由反射器的客戶機。

peer { group-name | ipv4-address [ mask-length ] } reflect-client

缺省情況下,未配置路由反射器及其客戶機。

(8)     (可選)允許路由反射器在客戶機之間反射路由。

reflect between-clients

缺省情況下,允許路由反射器在客戶機之間反射路由。

(9)     (可選)配置路由反射器的集群ID。

reflector cluster-id { cluster-id | ipv4-address }

缺省情況下,每個路由反射器都使用自己的Router ID作為集群ID。

1.18  配置BGP Add-Path

1. 功能簡介

缺省情況下,BGP隻發布一條最優路由。如果最優路由所在路徑出現網絡故障,數據流量將會被中斷,直到BGP根據新的網絡拓撲路由收斂後,被中斷的流量才能恢複正常的傳輸。

配置了Add-Path(Additional Paths)功能後,BGP可以向鄰居發送本地前綴相同下一跳不同的多條路由。網絡出現故障後,次優路由可以成為新的最優路由,這樣就縮短了流量中斷時間。

Add-Path能力包括接收和發送兩種。為了讓對等體間的Add-Path能力協商成功,必須一端使能接收能力,另一端使能發送能力。

本配置中各命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP高級配置”。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP VPNv4地址族視圖或BGP-VPN VPNv4地址族視圖。

¡     依次執行以下命令進入BGP VPNv4地址族視圖。

bgp as-number [ instance instance-name ]

address-family vpnv4

¡     依次執行以下命令進入BGP-VPN VPNv4地址族視圖。

bgp as-number [ instance instance-name ]

ip vpn-instance vpn-instance-name

address-family vpnv4

(3)     配置Add-Path功能。

peer { group-name | ipv4-address [ mask-length ] } additional-paths { receive | send } *

缺省情況下,未配置Add-Path功能。

(4)     配置向指定對等體/對等體組發送的Add-Path優選路由的最大條數。

peer { group-name | ipv4-address [ mask-length ] } advertise additional-paths best number

缺省情況下,向指定對等體/對等體組發送的Add-Path優選路由的最大條數為1。

(5)     配置Add-Path優選路由的最大條數。

additional-paths select-best best-number

缺省情況下,Add-Path優選路由的最大條數為1。

本命令不支持在BGP-VPN VPNv4地址族視圖下進行配置。

1.19  配置公網或VPN實例發布的本地網段路由

1. 功能簡介

通過配置本功能,用戶可以在BGP中引入公網或VPN實例下的本地網段路由,並對外發布。

2. 配置限製和指導

本功能指定的網段路由必須存在於公網或VPN實例的路由表中,且處於Active狀態,則屬於公網或該VPN實例的路由協議才能通過import-route local-aggregate命令引入該路由,並對外發布。有關import-route local-aggregate命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP”。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入公網實例IPv4地址族視圖或VPN實例IPv4地址族視圖。

¡     請依次執行以下命令進入公網實例IPv4地址族視圖。

ip public-instance

address-family ipv4

¡     請依次執行以下命令進入VPN實例IPv4地址族視圖。

ip vpn-instance vpn-instance-name

address-family ipv4

(3)     配置公網或VPN實例發布的本地網段路由。

network ipv4-address [ mask-length | mask ]

缺省情況下,公網或VPN實例不發布本地的網段路由。

1.20  配置路由信息引入功能

1.20.1  配置公網實例

1. 功能簡介

公網實例可以看作是特殊的VPN實例,通過公網實例可以實現公網用戶和私網用戶互相訪問。

2. 配置限製和指導

在MPLS L3VPN組網中,若使用Route Target屬性匹配方式實現公私網互通,則不僅需要為公網實例和VPN實例配置匹配的Route Target屬性,還需要在BGP實例視圖下配置route-replicate enable命令開啟公網和VPN實例BGP路由互相引入功能。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入公網實例視圖。

ip public-instance

(3)     配置公網實例的RD。

route-distinguisher route-distinguisher

缺省情況下,未配置公網實例的RD。

(4)     配置VPN實例的Route Target。

vpn-target vpn-target&<1-8> [ both | export-extcommunity | import-extcommunity ]

缺省情況下,未配置VPN實例的Route Target。

(5)     進入公網實例IPv4地址族視圖。

address-family ipv4

(6)     配置VPN實例的Route Target。

vpn-target vpn-target&<1-8> [ both | export-extcommunity | import-extcommunity ]

缺省情況下,未配置VPN實例的Route Target。

 

1.20.2  配置VPN實例路由信息引入功能

1. 功能簡介

在BGP/MPLS L3VPN組網中,隻有Route Target屬性匹配的VPN實例之間才可以通信。通過配置本功能可以實現:

·     將公網或其他VPN實例的路由信息引入到指定VPN實例中,從而使指定VPN用戶可以獲取訪問公網或其他VPN的路由。

·     將指定VPN實例的路由信息引入到公網中,從而使公網獲取指定VPN的路由,以便轉發用戶流量。

在流量智能調控場景中,不同租戶的流量被劃分到不同的VPN中。為了使租戶流量可以流向公網,則需要配置本功能將公網的路由信息引入到指定VPN實例中。

2. 將公網或其他VPN實例的路由信息引入到指定VPN實例中

(1)     進入係統視圖。

system-view

(2)     進入VPN實例視圖。

ip vpn-instance vpn-instance-name

(3)     進入VPN實例IPv4地址族視圖。

address-family ipv4

(4)     將公網或其他VPN實例的路由信息引入到指定VPN實例中。

route-replicate from { public | vpn-instance vpn-instance-name } protocol eigrp eigrp-as [ advertise ] [ route-policy route-policy-name ]

route-replicate from { public | vpn-instance vpn-instance-name } protocol { bgp as-number | direct | static | unr | { isis | ospf | rip } process-id } [ advertise ] [ route-policy route-policy-name ]

缺省情況下,公網或其他VPN實例的路由信息不能引入到指定VPN實例中。

3. 將指定VPN實例的路由信息引入到公網中

(1)     進入係統視圖。

system-view

(2)     進入公網實例視圖。

ip public-instance

(3)     進入公網實例IPv4地址族視圖。

address-family ipv4

(4)     將指定VPN實例的路由信息引入到公網中。

route-replicate from vpn-instance vpn-instance-name protocol { bgp as-number | direct | static | { isis | ospf | rip } process-id } [ advertise ] [ route-policy route-policy-name ]

缺省情況下,VPN實例的路由信息不能引入到公網中。

1.20.3  配置公網和VPN實例的BGP路由互相引入功能

1. 功能簡介

在流量清洗的場景中,公私網之間通過防火牆對流量進行過濾,不同用戶的流量被劃分到不同的VPN中。為了使VPN用戶和公網用戶互訪,在防火牆提供流量安全保障的前提下,需要公網和VPN實例的BGP路由互相引入。

配置本功能後,Route Target屬性相匹配的VPN實例及公網實例之間會互相引入對方實例下的BGP路由,以實現公網和所有VPN實例內的用戶都可以互相訪問。本功能引入BGP路由時,還可以同時引入BGP路由屬性,以便設備通過BGP路由屬性選擇合適的轉發路徑。

2. 配置限製和指導

開啟本功能後,公網和所有VPN實例內的用戶都可以互相訪問,無法實現不同VPN用戶之間的隔離,請僅在特定場景下使用本功能。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     開啟公網和VPN實例的BGP路由互相引入功能。

route-replicate enable

缺省情況下,公網和VPN實例的BGP路由互相引入功能處於關閉狀態。

1.20.4  配置BGP路由重生成功能

1. 功能簡介

缺省情況下,各VPN實例之間的BGP路由均相互隔離。但在某些組網場景下,設備需要實現跨VPN發布路由,並且為了隱藏站點內部特定VPN實例的路由信息,用戶需要將該VPN實例的BGP路由通過其他的VPN實例對外發布。

圖1-25 路由重生成示意圖

 

圖1-25所示,PE 1和PE 2分別與PE 3建立公網IBGP會話,並通過公網與VPN實例間的路由互引來實現內部站點和外部公網的互通;PE 1和PE 2之間建立VPNv4 IBGP對等體,向對方傳遞本站點的VPN路由,以實現站點間的通信。鏈路完好時,PE 2可以直接接收PE 3發布的公網路由,並引入到本地站點中;PE 2 和PE 3之間鏈路發生故障時,外部公網路由無法直接發布給PE 2,導致站點內用戶與外部網絡通信受阻。

此時PE 1可以將引入到VPN實例的公網BGP路由在指定的VPN實例進行重生成,並將重生成的路由發布給IBGP對等體PE 2,以恢複PE 2本地站點內的用戶與外部網絡的通信。具體工作過程如下:

(1)     在PE 1的公網實例中配置Route Target,使Route Target屬性與想要引入公網路由的VPN實例的Route Target屬性相匹配。

(2)     在PE 1上配置route-replicate enable命令,將公網實例下的BGP路由引入到Route Target屬性相匹配的VPN實例中。

(3)     在PE 1上配置advertise route-reoriginate命令,如果其他VPN實例的Route Target屬性與當前地址族視圖所屬的VPN實例匹配,則會在該VPN實例的BGP路由表中重生成其他VPN實例的所有BGP路由(不包括從本地引入的路由,如配置import-route命令後引入的IGP路由)。

(4)     缺省情況下,PE 1從IBGP對等體接收到的路由在重生成後,不會再發布給IBGP對等體PE 2,通過配置peer advertise vpn-reoriginate ibgp命令,可以實現將重生成的路由發布給IBGP對等體PE 2。

2. 配置限製和指導

peer advertise vpn-reoriginate ibgp命令需要和advertise route-reoriginate命令配合使用,單獨配置peer advertise vpn-reoriginate ibgp命令時,該命令不生效。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     (可選)開啟公網和VPN實例BGP路由互相引入功能。

route-replicate enable

缺省情況下,公網和VPN實例的BGP路由互相引入功能處於關閉狀態。

(4)     進入BGP-VPN實例視圖。

ip vpn-instance vpn-instance-name

(5)     進入BGP-VPN IPv4單播地址族視圖。

address-family ipv4 [ unicast ]

(6)     配置在指定VPN實例的BGP單播路由表中重生成其他VPN實例下的BGP單播路由。

advertise route-reoriginate [ route-policy route-policy-name ] [ replace-rt ]

缺省情況下,在VPN實例下無法重生成其他VPN實例下的BGP單播路由。

本命令僅能重生成與當前視圖所屬的VPN實例Route Target屬性匹配的VPN實例下的路由,且不能重生成BGP路由表中從本地引入的路由。

(7)     (可選)配置向指定IBGP對等體/對等體組發布VPN實例下重生成的BGP路由。

a.     退回BGP實例視圖。

quit

quit

b.     進入BGP VPNv4地址族視圖。

address-family vpnv4

c.     配置以VPNv4路由的形式向指定IBGP對等體/對等體組發布VPN實例下重生成的BGP路由。

peer { group-name | ipv4-address [ mask-length ] } advertise vpn-reoriginate ibgp

缺省情況下,不會向IBGP對等體/對等體組發布VPN實例下重生成的BGP路由。

1.21  開啟VPN引入等價路由功能

1. 功能簡介

缺省情況下,對於前綴和RD均相同的多條路由,BGP隻會將最優路由引入到VPN實例的路由表中。開啟VPN引入等價路由功能後,BGP可以把前綴和RD均相同的多條路由全部引入到VPN實例的路由表中,以便在這些路由之間進行負載分擔或MPLS L3VPN快速重路由。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP相應視圖。

¡     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

¡     進入BGP IPv4單播地址族視圖。

bgp as-number [ instance instance-name ]

address-family ipv4 [ unicast ]

¡     進入BGP IPv6單播地址族視圖。

bgp as-number [ instance instance-name ]

address-family ipv6 [ unicast ]

¡     依次執行以下命令進入BGP-VPN IPv4單播地址族視圖。

bgp as-number [ instance instance-name ]

ip vpn-instance vpn-instance-name

address-family ipv4 [ unicast ]

¡     依次執行以下命令進入BGP-VPN IPv6單播地址族視圖。

bgp as-number [ instance instance-name ]

ip vpn-instance vpn-instance-name

address-family ipv6 [ unicast ]

(3)     開啟VPN引入等價路由功能。

vpn-route cross multipath

缺省情況下,VPN引入等價路由功能處於關閉狀態,對於前綴和RD均相同的多條路由,隻會將最優路由引入到VPN實例的路由表中。

BGP IPv4單播地址族視圖和BGP IPv6單播地址族視圖下配置本命令後,會將多條路由全部引入到公網實例的路由表中。公網實例的詳細介紹,請參見“EVPN配置指導”中的“EVPN”。

1.22  配置優先發送指定路由的撤銷消息

1. 功能簡介

當BGP路由器需要撤銷大量路由時,撤銷所有的路由會耗費一定時間,導致有些流量不能快速切換到有效路徑。對於某些重要的、不希望長時間中斷的流量,可以通過本配置,確保BGP路由器優先發送這些路由的撤銷消息,以便將指定流量快速地切換到有效路徑上,最大限度地減少流量中斷時間。

本配置中命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP基礎”。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     創建BGP VPNv4地址族,並進入BGP VPNv4地址族視圖。

address-family vpnv4

(4)     配置優先發送指定路由的撤銷消息。

update-first route-policy route-policy-name

缺省情況下,不支持優先發送指定路由的撤銷消息。

1.23  配置VPN peer

1. 功能簡介

在虛擬化網絡中,位於不同區域的VPC(Virtual Private Cloud,虛擬私有雲)之間通過MPLS L3VPN進行互通,互通的每兩個VPC稱為一個VPN對(VPN Peer)。

通過路由策略對報文進行標記,給FIB下發的路由信息中攜帶關聯User Profile的VPN peer ID,報文轉發時根據User Profile進行處理。

有關路由策略的詳細介紹,請參見“三層技術-IP路由配置指導”中的“路由策略”。

有關User Profile的詳細介紹,請參見“安全配置指導”中的“User Profile”。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     創建一個VPN peer。

vpn-peer vpn-peer-name vpn-peer-id vpn-peer-id user-profile profile-name

1.24  開啟告警功能

1. 功能簡介

開啟L3VPN模塊的告警功能後,在VPN實例內的路由數達到告警門限等情況下,L3VPN模塊會產生RFC 4382中規定的告警信息。生成的告警信息將發送到設備的SNMP模塊,通過設置SNMP中告警信息的發送參數,來決定告警信息輸出的相關屬性。

有關告警信息的詳細介紹,請參見“網絡管理和監控配置指導”中的“SNMP”。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     開啟L3VPN模塊的告警功能。

snmp-agent trap enable l3vpn

缺省情況下,L3VPN模塊的告警功能處於開啟狀態。

1.25  使能BGP的路由抖動日誌記錄功能

1. 功能簡介

使能BGP的路由抖動日誌記錄功能後,當路由發生抖動並滿足日誌輸出條件時會生成路由抖動日誌信息。生成的日誌信息還將被發送到設備的信息中心,通過設置信息中心的參數,決定日誌信息的輸出規則(即是否允許輸出以及輸出方向)。

有關信息中心參數的配置請參見“設備管理配置指導”中的“信息中心”。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP VPNv4地址族視圖或BGP-VPN VPNv4地址族視圖。

¡     依次執行以下命令進入BGP VPNv4地址族視圖。

¡     bgp as-number [ instance instance-name ]

¡     address-family vpnv4

¡     依次執行以下命令進入BGP-VPN VPNv4地址族視圖。

¡     bgp as-number [ instance instance-name ]

¡     ip vpn-instance vpn-instance-name

¡     address-family vpnv4

(3)     使能BGP的路由抖動日誌記錄功能。

(4)     log-route-flap monitor-time monitor-count [ log-count-limit | route-policy route-policy-name ] *

(5)     缺省情況下,BGP的路由抖動日誌記錄功能處於關閉狀態。

1.26  配置VPN實例的MPLS標簽轉發統計功能

1. 配置限製和指導

本功能需要在PE設備上進行配置。

VPN實例的MPLS標簽轉發是指PE設備收到從遠端PE設備發往該VPN實例CE設備的報文後,根據報文中的入標簽進行轉發,或者收到從該VPN實例的CE設備發往遠端PE設備的報文後,為報文添加MPLS標簽進行轉發。

本配置用來開啟指定VPN實例的MPLS標簽轉發統計功能和統計信息收集功能,以便用戶通過display ip vpn-instance mpls statistics命令查看該VPN實例的MPLS標簽轉發統計信息。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     使能MPLS標簽轉發統計信息的收集功能,並設置統計信息收集的時間間隔。

mpls statistics interval interval

缺省情況下,MPLS標簽轉發統計信息收集功能處於關閉狀態。

本命令詳細情況請參見“MPLS命令參考”中的“MPLS基礎”。

(3)     進入VPN實例視圖。

ip vpn-instance vpn-instance-name

(4)     使能指定VPN實例的MPLS標簽轉發統計功能。

mpls statistics enable

缺省情況下,所有VPN實例的MPLS標簽轉發統計功能均處於關閉狀態。

1.27  MPLS L3VPN顯示和維護

1.27.1  顯示MPLS L3VPN的配置及運行狀態

1. 顯示BGP路由信息

可在任意視圖下執行以下命令:

·     顯示BGP對等體和BGP路由的彙總信息。

display bgp [ instance instance-name ] vpnv4 summary

本命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP基礎”。

·     顯示BGP IPv4 RT-Filter路由信息。

display bgp [ instance instance-name ] routing-table ipv4 rtfilter [ default-rt [ advertise-info ] | [ origin-as as-number ] [ route-target [ advertise-info ] ] | peer ipv4-address { advertised-routes | received-routes } [ default-rt | [ origin-as as-number ] [ route-target ] | statistics ] | statistics ]

本命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP基礎”。

·     顯示BGP VPNv4路由信息。

display bgp [ instance instance-name ] routing-table vpnv4 [ [ route-distinguisher route-distinguisher ] [ ipv4-address [ mask-length | mask ] [ longest-match ] | ipv4-address [ mask-length | mask ] advertise-info | as-path-acl { as-path-acl-number | as-path-acl-name } | community-list { { basic-community-list-number | comm-list-name } [ whole-match ] | adv-community-list-number } ] | [ vpn-instance vpn-instance-name ] peer ipv4-address { advertised-routes | received-routes } [ ipv4-address [ mask-length | mask ] | statistics ] | statistics ]

·     顯示衰減的BGP VPNv4路由信息。

display bgp [ instance instance-name ] routing-table dampened vpnv4本命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP基礎”。

2. 顯示BGP對等體/對等體組的信息

本節所有命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP基礎”。

可在任意視圖下執行以下命令:

·     顯示BGP IPv4 RT-Filter對等體信息。

display bgp [ instance instance-name ] peer ipv4 rtfilter [ ipv4-address mask-length | { ipv4-address | group-name group-name } log-info | [ ipv4-address ] verbose ]

·     顯示BGP VPNv4對等體信息。

display bgp [ instance instance-name ] peer vpnv4 [ vpn-instance vpn-instance-name ] [ ipv4-address mask-length | { ipv4-address | group-name group-name } log-info | [ ipv4-address ] verbose ]

·     顯示BGP IPv4 RT-Filter對等體組信息。

display bgp [ instance instance-name ] group ipv4 rtfilter [ group-name group-name ]

·     顯示BGP VPNv4對等體組信息。

display bgp [ instance instance-name ] group vpnv4 [ vpn-instance vpn-instance-name ] [ group-name group-name ]

3. 顯示BGP打包組的信息

本節所有命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP基礎”。

可在任意視圖下執行以下命令:

·     顯示BGP IPv4 RT-Filter地址族下打包組的相關信息。

display bgp [ instance instance-name ] update-group ipv4 rtfilter [ ipv4-address ]

·     顯示BGP VPNv4地址族下打包組的相關信息。

display bgp [ instance instance-name ] update-group vpnv4 [ vpn-instance vpn-instance-name ] [ ipv4-address ]

4. 顯示BGP路由的入/出標簽信息

可在任意視圖下執行以下命令:

·     顯示BGP IPv4單播路由的入標簽信息。

display bgp [ instance instance-name ] routing-table ipv4 [ unicast ] [ vpn-instance vpn-instance-name ] inlabel

·     顯示BGP IPv4單播路由的出標簽信息。

display bgp [ instance instance-name ] routing-table ipv4 [ unicast ] [ vpn-instance vpn-instance-name ] outlabel

·     顯示BGP VPNv4路由的入標簽信息。

display bgp [ instance instance-name ] routing-table vpnv4 inlabel

·     顯示BGP VPNv4路由的出標簽信息。

display bgp [ instance instance-name ] routing-table vpnv4 outlabel

5. 顯示BGP IPv4 RT-Filter的信息

本節所有命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP基礎”。

可在任意視圖下執行以下命令,顯示BGP IPv4 RT-Filter的信息。

display bgp [ instance instance-name ] ipv4 rtfilter [ peer ipv4-address [ statistics ] | statistics ]

6. 顯示VPN實例相關信息

可在任意視圖下執行以下命令:

·     顯示指定VPN實例信息。

display ip vpn-instance [ instance-name vpn-instance-name ]

·     顯示與VPN實例相關聯的IP路由表。

display ip routing-table vpn-instance vpn-instance-name [ statistics | verbose ]

本命令的詳細介紹請參見“三層技術-IP路由命令參考”中的“IP路由基礎命令”。

·     顯示指定VPN實例的FIB信息。

display fib vpn-instance vpn-instance-name

本命令的詳細介紹,請參見“三層技術-IP業務命令參考”中的“IP轉發基礎”。

·     顯示指定VPN實例中與指定目的IP地址匹配的FIB信息。

display fib vpn-instance vpn-instance-name ip-address [ mask-length | mask ]

本命令的詳細介紹,請參見“三層技術-IP業務命令參考”中的“IP轉發基礎”。

7. 顯示VPN peer相關信息

可在任意視圖下執行以下命令,顯示VPN peer的信息。

display vpn-peer [ peer-id vpn-peer-id | peer-name vpn-peer-name | verbose ]

8. 顯示OSPF偽連接信息

可在任意視圖下執行以下命令,顯示OSPF偽連接信息。

display ospf [ process-id ] sham-link [ area area-id ]

1.27.2  顯示和清除VPN實例的MPLS標簽轉發統計信息

可在任意視圖下執行以下命令,顯示VPN實例的MPLS標簽轉發統計信息。

display ip vpn-instance mpls statistics [ instance-name vpn-instance-name ]

請在用戶視圖下執行以下命令,清除指定VPN實例的MPLS標簽轉發統計信息。

reset ip vpn-instance mpls statistics [ instance-name vpn-instance-name ]

1.27.3  顯示和清除BGP VPNv4路由的衰減信息

可在任意視圖下執行以下命令,顯示BGP VPNv4路由衰減參數。

display bgp [ instance instance-name ] dampening parameter vpnv4

請在用戶視圖下執行以下命令,清除BGP VPNv4路由的衰減信息,並解除對BGP路由的抑製。

reset bgp [ instance instance-name ] dampening vpnv4 [ ipv4-address [ mask | mask-length ] ]

1.27.4  顯示和清除BGP VPNv4路由的震蕩統計信息

可在任意視圖下執行以下命令,顯示BGP VPNv4路由的震蕩統計信息。

display ip vpn-instance mpls statistics [ instance-name vpn-instance-name ]

請在用戶視圖下執行以下命令,清除BGP VPNv4路由的震蕩統計信息。

reset bgp [ instance instance-name ] flap-info vpnv4 [ ipv4-address [ mask | mask-length ] | as-path-acl as-path-acl-number | peer ipv4-address [ mask-length ] ]

1.27.5  複位BGP會話

1. 功能簡介

當BGP配置變化後,可以通過軟複位或複位BGP會話使新的配置生效。軟複位BGP會話是指在不斷開BGP鄰居關係的情況下,更新BGP路由信息;複位BGP會話是指斷開並重新建立BGP鄰居關係的情況下,更新BGP路由信息。軟複位需要BGP對等體具備路由刷新能力(支持ROUTE-REFRESH消息)。

2. 配置步驟

本節所有命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP基礎”。

請在用戶視圖下執行以下命令:

·     手工對BGP IPv4 RT-Filter地址族下的BGP會話進行軟複位。

refresh bgp [ instance instance-name ] { ipv4-address [ mask-length ] | all | external | group group-name | internal } { export | import } ipv4 rtfilter

·     手工對VPNv4地址族下的BGP會話進行軟複位。

refresh bgp [ instance instance-name ] { ipv4-address [ mask-length ] | all | external | group group-name | internal } { export | import } vpnv4 [ vpn-instance vpn-instance-name ]

·     複位BGP IPv4 RT-Filter地址族下的BGP會話。

reset bgp [ instance instance-name ] { as-number | ipv4-address [ mask-length ] | all | external | internal | group group-name } ipv4 rtfilter

·     複位VPNv4地址族下的BGP會話。

reset bgp [ instance instance-name ] { as-number | ipv4-address [ mask-length ] | all | external | internal | group group-name } vpnv4 [ vpn-instance vpn-instance-name ]

1.28  MPLS L3VPN典型配置舉例

1.28.1  配置MPLS L3VPN示例

1. 組網需求

·     CE 1、CE 3屬於VPN 1,CE 2、CE 4屬於VPN 2;

·     VPN 1使用的Route Target屬性為111:1,VPN 2使用的Route Target屬性為222:2。不同VPN用戶之間不能互相訪問;

·     CE與PE之間配置EBGP交換VPN路由信息;

·     PE與PE之間配置OSPF實現PE內部的互通、配置MP-IBGP交換VPN路由信息。

2. 組網圖

圖1-26 配置MPLS L3VPN組網圖

設備

接口

IP地址

設備

接口

IP地址

CE 1

GE0/0/1

10.1.1.1/24

P

Loop0

2.2.2.9/32

PE 1

Loop0

1.1.1.9/32

 

GE0/0/4

172.1.1.2/24

 

GE0/0/1

10.1.1.2/24

 

GE0/0/5

172.2.1.1/24

 

GE0/0/2

10.2.1.2/24

PE 2

Loop0

3.3.3.9/32

 

GE0/0/4

172.1.1.1/24

 

GE0/0/1

10.3.1.2/24

CE 2

GE0/0/1

10.2.1.1/24

 

GE0/0/2

10.4.1.2/24

CE 3

GE0/0/1

10.3.1.1/24

 

GE0/0/4

172.2.1.2/24

CE 4

GE0/0/1

10.4.1.1/24

 

 

 

 

3. 配置步驟

(1)     在MPLS骨幹網上配置IGP協議,實現骨幹網PE和P的互通

# 配置PE 1。

<PE1> system-view

[PE1] interface loopback 0

[PE1-LoopBack0] ip address 1.1.1.9 32

[PE1-LoopBack0] quit

[PE1] interface gigabitethernet 0/0/4

[PE1-GigabitEthernet0/0/4] ip address 172.1.1.1 24

[PE1-GigabitEthernet0/0/4] quit

[PE1] ospf

[PE1-ospf-1] area 0

[PE1-ospf-1-area-0.0.0.0] network 172.1.1.0 0.0.0.255

[PE1-ospf-1-area-0.0.0.0] network 1.1.1.9 0.0.0.0

[PE1-ospf-1-area-0.0.0.0] quit

[PE1-ospf-1] quit

# 配置P。

<P> system-view

[P] interface loopback 0

[P-LoopBack0] ip address 2.2.2.9 32

[P-LoopBack0] quit

[P] interface gigabitethernet 0/0/4

[P-GigabitEthernet0/0/4] ip address 172.1.1.2 24

[P-GigabitEthernet0/0/4] quit

[P] interface gigabitethernet 0/0/5

[P-GigabitEthernet0/0/5] ip address 172.2.1.1 24

[P-GigabitEthernet0/0/5] quit

[P] ospf

[P-ospf-1] area 0

[P-ospf-1-area-0.0.0.0] network 172.1.1.0 0.0.0.255

[P-ospf-1-area-0.0.0.0] network 172.2.1.0 0.0.0.255

[P-ospf-1-area-0.0.0.0] network 2.2.2.9 0.0.0.0

[P-ospf-1-area-0.0.0.0] quit

[P-ospf-1] quit

# 配置PE 2。

<PE2> system-view

[PE2] interface loopback 0

[PE2-LoopBack0] ip address 3.3.3.9 32

[PE2-LoopBack0] quit

[PE2] interface gigabitethernet 0/0/4

[PE2-GigabitEthernet0/0/4] ip address 172.2.1.2 24

[PE2-GigabitEthernet0/0/4] quit

[PE2] ospf

[PE2-ospf-1] area 0

[PE2-ospf-1-area-0.0.0.0] network 172.2.1.0 0.0.0.255

[PE2-ospf-1-area-0.0.0.0] network 3.3.3.9 0.0.0.0

[PE2-ospf-1-area-0.0.0.0] quit

[PE2-ospf-1] quit

配置完成後,PE 1、P、PE 2之間應能建立OSPF鄰居,執行display ospf peer命令可以看到鄰居達到FULL狀態。執行display ip routing-table命令可以看到PE之間學習到對方的Loopback路由。

(2)     在MPLS骨幹網上配置MPLS基本能力和MPLS LDP,建立LDP LSP

# 配置PE 1。

[PE1] mpls lsr-id 1.1.1.9

[PE1] mpls ldp

[PE1-ldp] quit

[PE1] interface gigabitethernet 0/0/4

[PE1-GigabitEthernet0/0/4] mpls enable

[PE1-GigabitEthernet0/0/4] mpls ldp enable

[PE1-GigabitEthernet0/0/4] quit

# 配置P。

[P] mpls lsr-id 2.2.2.9

[P] mpls ldp

[P-ldp] quit

[P] interface gigabitethernet 0/0/4

[P-GigabitEthernet0/0/4] mpls enable

[P-GigabitEthernet0/0/4] mpls ldp enable

[P-GigabitEthernet0/0/4] quit

[P] interface gigabitethernet 0/0/5

[P-GigabitEthernet0/0/5] mpls enable

[P-GigabitEthernet0/0/5] mpls ldp enable

[P-GigabitEthernet0/0/5] quit

# 配置PE 2。

[PE2] mpls lsr-id 3.3.3.9

[PE2] mpls ldp

[PE2-ldp] quit

[PE2] interface gigabitethernet 0/0/4

[PE2-GigabitEthernet0/0/4] mpls enable

[PE2-GigabitEthernet0/0/4] mpls ldp enable

[PE2-GigabitEthernet0/0/4] quit

上述配置完成後,PE 1、P、PE 2之間應能建立LDP會話,執行display mpls ldp peer命令可以看到LDP會話的狀態為Operational。執行display mpls ldp lsp命令,可以看到LDP LSP的建立情況。

(3)     在PE設備上配置VPN實例,將CE接入PE

# 配置PE 1。

[PE1] ip vpn-instance vpn1

[PE1-vpn-instance-vpn1] route-distinguisher 100:1

[PE1-vpn-instance-vpn1] vpn-target 111:1

[PE1-vpn-instance-vpn1] quit

[PE1] ip vpn-instance vpn2

[PE1-vpn-instance-vpn2] route-distinguisher 100:2

[PE1-vpn-instance-vpn2] vpn-target 222:2

[PE1-vpn-instance-vpn2] quit

[PE1] interface gigabitethernet 0/0/1

[PE1-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[PE1-GigabitEthernet0/0/1] ip address 10.1.1.2 24

[PE1-GigabitEthernet0/0/1] quit

[PE1] interface gigabitethernet 0/0/2

[PE1-GigabitEthernet0/0/2] ip binding vpn-instance vpn2

[PE1-GigabitEthernet0/0/2] ip address 10.2.1.2 24

[PE1-GigabitEthernet0/0/2] quit

# 配置PE 2。

[PE2] ip vpn-instance vpn1

[PE2-vpn-instance-vpn1] route-distinguisher 200:1

[PE2-vpn-instance-vpn1] vpn-target 111:1

[PE2-vpn-instance-vpn1] quit

[PE2] ip vpn-instance vpn2

[PE2-vpn-instance-vpn2] route-distinguisher 200:2

[PE2-vpn-instance-vpn2] vpn-target 222:2

[PE2-vpn-instance-vpn2] quit

[PE2] interface gigabitethernet 0/0/1

[PE2-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[PE2-GigabitEthernet0/0/1] ip address 10.3.1.2 24

[PE2-GigabitEthernet0/0/1] quit

[PE2] interface gigabitethernet 0/0/2

[PE2-GigabitEthernet0/0/2] ip binding vpn-instance vpn2

[PE2-GigabitEthernet0/0/2] ip address 10.4.1.2 24

[PE2-GigabitEthernet0/0/2] quit

# 按圖1-26配置各CE的接口IP地址,配置過程略。

配置完成後,在PE設備上執行display ip vpn-instance命令可以看到VPN實例的配置情況。各PE能ping通自己接入的CE。

(4)     在PE與CE之間建立EBGP對等體,引入VPN路由

# 配置CE 1。

<CE1> system-view

[CE1] bgp 65410

[CE1-bgp-default] peer 10.1.1.2 as-number 100

[CE1-bgp-default] address-family ipv4 unicast

[CE1-bgp-default-ipv4] peer 10.1.1.2 enable

[CE1-bgp-default-ipv4] import-route direct

[CE1-bgp-default-ipv4] quit

[CE1-bgp-default] quit

# 另外3個CE設備(CE 2~CE 4)配置與CE 1設備配置類似,配置過程省略。

# 配置PE 1。

[PE1] bgp 100

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] peer 10.1.1.1 as-number 65410

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] peer 10.1.1.1 enable

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

[PE1-bgp-default] ip vpn-instance vpn2

[PE1-bgp-default-vpn2] peer 10.2.1.1 as-number 65420

[PE1-bgp-default-vpn2] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn2] peer 10.2.1.1 enable

[PE1-bgp-default-ipv4-vpn2] quit

[PE1-bgp-default-vpn2] quit

[PE1-bgp-default] quit

# PE 2的配置與PE 1類似,配置過程省略。

配置完成後,在PE設備上執行display bgp peer ipv4 vpn-instance命令,可以看到PE與CE之間的BGP對等體關係已建立,並達到Established狀態。

(5)     在PE之間建立MP-IBGP對等體

# 配置PE 1。

[PE1] bgp 100

[PE1-bgp-default] peer 3.3.3.9 as-number 100

[PE1-bgp-default] peer 3.3.3.9 connect-interface loopback 0

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 3.3.3.9 enable

[PE1-bgp-default-vpnv4] quit

[PE1-bgp-default] quit

# 配置PE 2。

[PE2] bgp 100

[PE2-bgp-default] peer 1.1.1.9 as-number 100

[PE2-bgp-default] peer 1.1.1.9 connect-interface loopback 0

[PE2-bgp-default] address-family vpnv4

[PE2-bgp-default-vpnv4] peer 1.1.1.9 enable

[PE2-bgp-default-vpnv4] quit

[PE2-bgp-default] quit

配置完成後,在PE設備上執行display bgp peer vpnv4命令,可以看到PE之間的BGP對等體關係已建立,並達到Established狀態。

4. 驗證配置

在PE設備上執行display ip routing-table vpn-instance命令,可以看到去往對端CE的路由。

以PE 1上的VPN 1為例:

[PE1] display ip routing-table vpn-instance vpn1

 

Destinations : 13        Routes : 13

 

Destination/Mask    Proto  Pre  Cost         NextHop         Interface

0.0.0.0/32          Direct 0    0            127.0.0.1       InLoop0

10.1.1.0/24         Direct 0    0            10.1.1.2        GE0/0/1

10.1.1.0/32         Direct 0    0            10.1.1.2        GE0/0/1

10.1.1.2/32         Direct 0    0            127.0.0.1       InLoop0

10.1.1.255/32       Direct 0    0            10.1.1.2        GE0/0/1

10.3.1.0/24         BGP    255  0            3.3.3.9         GE0/0/4

127.0.0.0/8         Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/32        Direct 0    0            127.0.0.1       InLoop0

127.0.0.1/32        Direct 0    0            127.0.0.1       InLoop0

127.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

224.0.0.0/4         Direct 0    0            0.0.0.0         NULL0

224.0.0.0/24        Direct 0    0            0.0.0.0         NULL0

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

同一VPN的CE能夠相互Ping通,不同VPN的CE不能相互Ping通。

例如:CE 1能夠Ping通CE 3(10.3.1.1),但不能Ping通CE 4(10.4.1.1)。

1.28.2  配置MPLS L3VPN采用GRE隧道示例

1. 組網需求

·     CE 1和CE 2屬於VPN 1。

·     在運營商骨幹網上,PE設備具備MPLS能力,P設備隻提供純IP功能,不具備MPLS能力。

·     在骨幹網上使用GRE隧道封裝並轉發VPN報文,實現MPLS L3VPN。

·     在PE上配置隧道策略,指定VPN流量使用的隧道類型為GRE。(本配置可選)

2. 組網圖

圖1-27 配置采用GRE隧道的MPLS L3VPN組網圖

設備

接口

IP地址

設備

接口

IP地址

CE 1

GE0/0/1

10.1.1.1/24

P

GE0/0/4

172.1.1.2/24

PE 1

Loop0

1.1.1.9/32

 

GE0/0/5

172.2.1.1/24

 

GE0/0/1

10.1.1.2/24

PE 2

Loop0

2.2.2.9/32

 

GE0/0/5

172.1.1.1/24

 

GE0/0/1

10.2.1.2/24

 

Tunnel0

20.1.1.1/24

 

GE0/0/4

172.2.1.2/24

CE 2

GE0/0/1

10.2.1.1/24

 

Tunnel0

20.1.1.2/24

 

3. 配置步驟

(1)     在MPLS骨幹網上配置IGP協議,實現骨幹網PE和P的互通

本例中采用OSPF發布接口(包括Loopback接口)所在網段的路由,具體配置過程略。

配置完成後,PE 1、P、PE 2之間應能建立OSPF鄰居,執行display ospf peer命令可以看到鄰居達到FULL狀態。執行display ip routing-table命令可以看到PE之間學習到對方的Loopback路由。

(2)     在PE設備上使能MPLS基本能力

# 配置PE 1。

<PE1> system-view

[PE1] mpls lsr-id 1.1.1.9

# 配置PE 2。

<PE2> system-view

[PE2] mpls lsr-id 2.2.2.9

(3)     在PE設備上配置VPN實例,將CE接入PE,並在PE上應用隧道策略,指定使用GRE隧道轉發VPN報文

# 配置PE 1。

[PE1] tunnel-policy gre1

[PE1-tunnel-policy-gre1] select-seq gre load-balance-number 1

[PE1-tunnel-policy-gre1] quit

[PE1] ip vpn-instance vpn1

[PE1-vpn-instance-vpn1] route-distinguisher 100:1

[PE1-vpn-instance-vpn1] vpn-target 100:1 both

[PE1-vpn-instance-vpn1] tnl-policy gre1

[PE1-vpn-instance-vpn1] quit

[PE1] interface gigabitethernet 0/0/1

[PE1-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[PE1-GigabitEthernet0/0/1] ip address 10.1.1.2 24

[PE1-GigabitEthernet0/0/1] quit

# 配置PE 2。

[PE2] tunnel-policy gre1

[PE2-tunnel-policy-gre1] select-seq gre load-balance-number 1

[PE2-tunnel-policy-gre1] quit

[PE2] ip vpn-instance vpn1

[PE2-vpn-instance-vpn1] route-distinguisher 100:2

[PE2-vpn-instance-vpn1] vpn-target 100:1 both

[PE2-vpn-instance-vpn1] tnl-policy gre1

[PE2-vpn-instance-vpn1] quit

[PE2] interface gigabitethernet 0/0/1

[PE2-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[PE2-GigabitEthernet0/0/1] ip address 10.2.1.2 24

[PE2-GigabitEthernet0/0/1] quit

# 配置CE 1。

<CE1> system-view

[CE1] interface gigabitethernet 0/0/1

[CE1-GigabitEthernet0/0/1] ip address 10.1.1.1 24

[CE1-GigabitEthernet0/0/1] quit

# 配置CE2。

<CE2> system-view

[CE2] interface gigabitethernet 0/0/1

[CE2-GigabitEthernet0/0/1] ip address 10.2.1.1 24

[CE2-GigabitEthernet0/0/1] quit

配置完成後,在PE設備上執行display ip vpn-instance命令可以看到VPN實例的配置情況。各PE能ping通自己接入的CE。

(4)     在PE與CE之間建立EBGP對等體,引入VPN路由

# 配置CE 1。

[CE1] bgp 65410

[CE1-bgp-default] peer 10.1.1.2 as-number 100

[CE1-bgp-default] address-family ipv4 unicast

[CE1-bgp-default-ipv4] peer 10.1.1.2 enable

[CE1-bgp-default-ipv4] import-route direct

[CE1-bgp-default-ipv4] quit

[CE1-bgp-default] quit

# 配置PE 1。

[PE1] bgp 100

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] peer 10.1.1.1 as-number 65410

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] peer 10.1.1.1 enable

[PE1-bgp-default-ipv4-vpn1] peer 10.1.1.1 next-hop-local

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

[PE1-bgp-default] quit

# CE 2的配置與CE 1類似,PE 2的配置與PE 1類似,配置過程省略。

配置完成後,在PE設備上執行display bgp peer ipv4 vpn-instance命令,可以看到PE與CE之間的BGP對等體關係已建立,並達到Established狀態。

(5)     在PE之間建立MP-IBGP對等體

# 配置PE 1。

[PE1] bgp 100

[PE1-bgp-default] peer 2.2.2.9 as-number 100

[PE1-bgp-default] peer 2.2.2.9 connect-interface loopback 0

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 2.2.2.9 enable

[PE1-bgp-default-vpnv4] quit

[PE1-bgp-default] quit

# PE 2的配置與PE 1類似,配置過程省略。

配置完成後,在PE設備上執行display bgp peer vpnv4命令,可以看到PE之間的BGP對等體關係已建立,並達到Established狀態。

(6)     配置GRE隧道

# 配置PE 1。

[PE1] interface tunnel 0 mode gre

[PE1-Tunnel0] source loopback 0

[PE1-Tunnel0] destination 2.2.2.9

[PE1-Tunnel0] ip address 20.1.1.1 24

[PE1-Tunnel0] mpls enable

[PE1-Tunnel0] quit

# 配置PE 2。

[PE2] interface tunnel 0 mode gre

[PE2-Tunnel0] source loopback 0

[PE2-Tunnel0] destination 1.1.1.9

[PE2-Tunnel0] ip address 20.1.1.2 24

[PE2-Tunnel0] mpls enable

[PE2-Tunnel0] quit

4. 驗證配置

# 配置完成後,CE能學到對端CE的接口路由。以CE 1為例:

[CE1] display ip routing-table

 

Destinations : 13        Routes : 13

 

Destination/Mask    Proto  Pre  Cost         NextHop         Interface

0.0.0.0/32          Direct 0    0            127.0.0.1       InLoop0

10.1.1.0/24         Direct 0    0            10.1.1.1        GE0/0/1

10.1.1.0/32         Direct 0    0            10.1.1.1        GE0/0/1

10.1.1.1/32         Direct 0    0            127.0.0.1       InLoop0

10.1.1.255/32       Direct 0    0            10.1.1.1        GE0/0/1

10.2.1.0/24         BGP    255  0            10.1.1.2        GE0/0/1

127.0.0.0/8         Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/32        Direct 0    0            127.0.0.1       InLoop0

127.0.0.1/32        Direct 0    0            127.0.0.1       InLoop0

127.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

224.0.0.0/4         Direct 0    0            0.0.0.0         NULL0

224.0.0.0/24        Direct 0    0            0.0.0.0         NULL0

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

# CE 1和CE 2之間能夠ping通。

1.28.3  配置Hub&Spoke組網示例

1. 組網需求

·     Spoke-CE之間不能直接通信,隻能通過Hub-CE轉發Spoke-CE之間的流量。

·     Spoke-CE與Spoke-PE之間、Hub-CE與Hub-PE之間配置EBGP交換VPN路由信息。

·     Spoke-PE與Hub-PE之間配置OSPF實現PE內部的互通、配置MP-IBGP交換VPN路由信息。

2. 組網圖

圖1-28 Hub&Spoke組網圖

設備

接口

IP地址

設備

接口

IP地址

Spoke-CE 1

GE0/0/1

10.1.1.1/24

Hub-CE

GE0/0/1

10.3.1.1/24

Spoke-PE 1

Loop0

1.1.1.9/32

 

GE0/0/2

10.4.1.1/24

 

GE0/0/1

10.1.1.2/24

Hub-PE

Loop0

2.2.2.9/32

 

GE0/0/4

172.1.1.1/24

 

GE0/0/4

172.1.1.2/24

Spoke-CE 2

GE0/0/1

10.2.1.1/24

 

GE0/0/5

172.2.1.2/24

Spoke-PE 2

Loop0

3.3.3.9/32

 

GE0/0/1

10.3.1.2/24

 

GE0/0/1

10.2.1.2/24

 

GE0/0/2

10.4.1.2/24

 

GE0/0/4

172.2.1.1/24

 

 

 

 

3. 配置步驟

(1)     在MPLS骨幹網上配置IGP協議,實現骨幹網Spoke-PE、Hub-PE之間的互通

# 配置Spoke-PE 1。

<Spoke-PE1> system-view

[Spoke-PE1] interface loopback 0

[Spoke-PE1-LoopBack0] ip address 1.1.1.9 32

[Spoke-PE1-LoopBack0] quit

[Spoke-PE1] interface gigabitethernet 0/0/4

[Spoke-PE1-GigabitEthernet0/0/4] ip address 172.1.1.1 24

[Spoke-PE1-GigabitEthernet0/0/4] quit

[Spoke-PE1] ospf

[Spoke-PE1-ospf-1] area 0

[Spoke-PE1-ospf-1-area-0.0.0.0] network 172.1.1.0 0.0.0.255

[Spoke-PE1-ospf-1-area-0.0.0.0] network 1.1.1.9 0.0.0.0

[Spoke-PE1-ospf-1-area-0.0.0.0] quit

[Spoke-PE1-ospf-1] quit

# 配置Spoke-PE 2。

<Spoke-PE2> system-view

[Spoke-PE2] interface loopback 0

[Spoke-PE2-LoopBack0] ip address 3.3.3.9 32

[Spoke-PE2-LoopBack0] quit

[Spoke-PE2] interface gigabitethernet 0/0/4

[Spoke-PE2-GigabitEthernet0/0/4] ip address 172.2.1.1 24

[Spoke-PE2-GigabitEthernet0/0/4] quit

[Spoke-PE2] ospf

[Spoke-PE2-ospf-1] area 0

[Spoke-PE2-ospf-1-area-0.0.0.0] network 172.2.1.0 0.0.0.255

[Spoke-PE2-ospf-1-area-0.0.0.0] network 3.3.3.9 0.0.0.0

[Spoke-PE2-ospf-1-area-0.0.0.0] quit

[Spoke-PE2-ospf-1] quit

# 配置Hub-PE。

<Hub-PE> system-view

[Hub-PE] interface loopback 0

[Hub-PE-LoopBack0] ip address 2.2.2.9 32

[Hub-PE-LoopBack0] quit

[Hub-PE] interface gigabitethernet 0/0/4

[Hub-PE-GigabitEthernet0/0/4] ip address 172.1.1.2 24

[Hub-PE-GigabitEthernet0/0/4] quit

[Hub-PE] interface gigabitethernet 0/0/5

[Hub-PE-GigabitEthernet0/0/5] ip address 172.2.1.2 24

[Hub-PE-GigabitEthernet0/0/5] quit

[Hub-PE] ospf

[Hub-PE-ospf-1] area 0

[Hub-PE-ospf-1-area-0.0.0.0] network 172.1.1.0 0.0.0.255

[Hub-PE-ospf-1-area-0.0.0.0] network 172.2.1.0 0.0.0.255

[Hub-PE-ospf-1-area-0.0.0.0] network 2.2.2.9 0.0.0.0

[Hub-PE-ospf-1-area-0.0.0.0] quit

[Hub-PE-ospf-1] quit

配置完成後,Spoke-PE 1、Spoke-PE 2、Hub-PE之間應能建立OSPF鄰居,執行display ospf peer命令可以看到鄰居達到Full狀態。執行display ip routing-table命令可以看到PE之間學習到對方的Loopback路由。

(2)     在MPLS骨幹網上配置MPLS基本能力和MPLS LDP,建立LDP LSP

# 配置Spoke-PE 1。

[Spoke-PE1] mpls lsr-id 1.1.1.9

[Spoke-PE1] mpls ldp

[Spoke-PE1-ldp] quit

[Spoke-PE1] interface gigabitethernet 0/0/4

[Spoke-PE1-GigabitEthernet0/0/4] mpls enable

[Spoke-PE1-GigabitEthernet0/0/4] mpls ldp enable

[Spoke-PE1-GigabitEthernet0/0/4] quit

# 配置Spoke-PE 2。

[Spoke-PE2] mpls lsr-id 3.3.3.9

[Spoke-PE2] mpls ldp

[Spoke-PE2-ldp] quit

[Spoke-PE2] interface gigabitethernet 0/0/4

[Spoke-PE2-GigabitEthernet0/0/4] mpls enable

[Spoke-PE2-GigabitEthernet0/0/4] mpls ldp enable

[Spoke-PE2-GigabitEthernet0/0/4] quit

# 配置Hub-PE。

[Hub-PE] mpls lsr-id 2.2.2.9

[Hub-PE] mpls ldp

[Hub-PE-ldp] quit

[Hub-PE] interface gigabitethernet 0/0/4

[Hub-PE-GigabitEthernet0/0/4] mpls enable

[Hub-PE-GigabitEthernet0/0/4] mpls ldp enable

[Hub-PE-GigabitEthernet0/0/4] quit

[Hub-PE] interface gigabitethernet 0/0/5

[Hub-PE-GigabitEthernet0/0/5] mpls enable

[Hub-PE-GigabitEthernet0/0/5] mpls ldp enable

[Hub-PE-GigabitEthernet0/0/5] quit

上述配置完成後,Spoke-PE 1、Spoke-PE 2、Hub-PE之間應能建立LDP會話,執行display mpls ldp peer命令可以看到LDP會話的狀態為Operational。執行display mpls ldp lsp命令,可以看到LDP LSP的建立情況。

(3)     在Spoke-PE和Hub-PE設備上配置VPN實例,將CE接入PE

# 配置Spoke-PE 1。

[Spoke-PE1] ip vpn-instance vpn1

[Spoke-PE1-vpn-instance-vpn1] route-distinguisher 100:1

[Spoke-PE1-vpn-instance-vpn1] vpn-target 111:1 import-extcommunity

[Spoke-PE1-vpn-instance-vpn1] vpn-target 222:2 export-extcommunity

[Spoke-PE1-vpn-instance-vpn1] quit

[Spoke-PE1] interface gigabitethernet 0/0/1

[Spoke-PE1-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[Spoke-PE1-GigabitEthernet0/0/1] ip address 10.1.1.2 24

[Spoke-PE1-GigabitEthernet0/0/1] quit

# 配置Spoke-PE 2。

[Spoke-PE2] ip vpn-instance vpn1

[Spoke-PE2-vpn-instance-vpn1] route-distinguisher 100:2

[Spoke-PE2-vpn-instance-vpn1] vpn-target 111:1 import-extcommunity

[Spoke-PE2-vpn-instance-vpn1] vpn-target 222:2 export-extcommunity

[Spoke-PE2-vpn-instance-vpn1] quit

[Spoke-PE2] interface gigabitethernet 0/0/1

[Spoke-PE2-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[Spoke-PE2-GigabitEthernet0/0/1] ip address 10.2.1.2 24

[Spoke-PE2-GigabitEthernet0/0/1] quit

# 配置Hub-PE。

[Hub-PE] ip vpn-instance vpn1-in

[Hub-PE-vpn-instance-vpn1-in] route-distinguisher 100:3

[Hub-PE-vpn-instance-vpn1-in] vpn-target 222:2 import-extcommunity

[Hub-PE-vpn-instance-vpn1-in] quit

[Hub-PE] ip vpn-instance vpn1-out

[Hub-PE-vpn-instance-vpn1-out] route-distinguisher 100:4

[Hub-PE-vpn-instance-vpn1-out] vpn-target 111:1 export-extcommunity

[Hub-PE-vpn-instance-vpn1-out] quit

[Hub-PE] interface gigabitethernet 0/0/1

[Hub-PE-GigabitEthernet0/0/1] ip binding vpn-instance vpn1-in

[Hub-PE-GigabitEthernet0/0/1] ip address 10.3.1.2 24

[Hub-PE-GigabitEthernet0/0/1] quit

[Hub-PE] interface gigabitethernet 0/0/2

[Hub-PE-GigabitEthernet0/0/2] ip binding vpn-instance vpn1-out

[Hub-PE-GigabitEthernet0/0/2] ip address 10.4.1.2 24

[Hub-PE-GigabitEthernet0/0/2] quit

# 按圖1-28配置各CE的接口IP地址,配置過程略。

配置完成後,在PE設備上執行display ip vpn-instance命令可以看到VPN實例的配置情況。各PE能ping通自己接入的CE。

(4)     在PE與CE之間建立EBGP對等體,引入VPN路由

# 配置Spoke-CE 1。

<Spoke-CE1> system-view

[Spoke-CE1] bgp 65410

[Spoke-CE1-bgp-default] peer 10.1.1.2 as-number 100

[Spoke-CE1-bgp-default] address-family ipv4

[Spoke-CE1-bgp-default-ipv4] peer 10.1.1.2 enable

[Spoke-CE1-bgp-default-ipv4] import-route direct

[Spoke-CE1-bgp-default-ipv4] quit

[Spoke-CE1-bgp-default] quit

# 配置Spoke-CE 2。

<Spoke-CE2> system-view

[Spoke-CE2] bgp 65420

[Spoke-CE2-bgp-default] peer 10.2.1.2 as-number 100

[Spoke-CE2-bgp-default] address-family ipv4

[Spoke-CE2-bgp-default-ipv4] peer 10.2.1.2 enable

[Spoke-CE2-bgp-default-ipv4] import-route direct

[Spoke-CE2-bgp-default-ipv4] quit

[Spoke-CE2-bgp-default] quit

# 配置Hub-CE。

<Hub-CE> system-view

[Hub-CE] bgp 65430

[Hub-CE-bgp-default] peer 10.3.1.2 as-number 100

[Hub-CE-bgp-default] peer 10.4.1.2 as-number 100

[Hub-CE-bgp-default] address-family ipv4

[Hub-CE-bgp-default-ipv4] peer 10.3.1.2 enable

[Hub-CE-bgp-default-ipv4] peer 10.4.1.2 enable

[Hub-CE-bgp-default-ipv4] import-route direct

[Hub-CE-bgp-default-ipv4] quit

[Hub-CE-bgp-default] quit

# 配置Spoke-PE 1。

[Spoke-PE1] bgp 100

[Spoke-PE1-bgp-default] ip vpn-instance vpn1

[Spoke-PE1-bgp-default-vpn1] peer 10.1.1.1 as-number 65410

[Spoke-PE1-bgp-default-vpn1] address-family ipv4

[Spoke-PE1-bgp-default-ipv4-vpn1] peer 10.1.1.1 enable

[Spoke-PE1-bgp-default-ipv4-vpn1] quit

[Spoke-PE1-bgp-default-vpn1] quit

[Spoke-PE1-bgp-default] quit

# 配置Spoke-PE 2。

[Spoke-PE2] bgp 100

[Spoke-PE2-bgp-default] ip vpn-instance vpn1

[Spoke-PE2-bgp-default-vpn1] peer 10.2.1.1 as-number 65420

[Spoke-PE2-bgp-default-vpn1] address-family ipv4

[Spoke-PE2-bgp-default-ipv4-vpn1] peer 10.2.1.1 enable

[Spoke-PE2-bgp-default-ipv4-vpn1] quit

[Spoke-PE2-bgp-default-vpn1] quit

[Spoke-PE2-bgp-default] quit

# 配置Hub-PE。

[Hub-PE] bgp 100

[Hub-PE-bgp-default] ip vpn-instance vpn1-in

[Hub-PE-bgp-default-vpn1-in] peer 10.3.1.1 as-number 65430

[Hub-PE-bgp-default-vpn1-in] address-family ipv4

[Hub-PE-bgp-default-ipv4-vpn1-in] peer 10.3.1.1 enable

[Hub-PE-bgp-default-ipv4-vpn1-in] quit

[Hub-PE-bgp-default-vpn1-in] quit

[Hub-PE-bgp-default] ip vpn-instance vpn1-out

[Hub-PE-bgp-default-vpn1-out] peer 10.4.1.1 as-number 65430

[Hub-PE-bgp-default-vpn1-out] address-family ipv4

[Hub-PE-bgp-default-ipv4-vpn1-out] peer 10.4.1.1 enable

[Hub-PE-bgp-default-ipv4-vpn1-out] peer 10.4.1.1 allow-as-loop 2

[Hub-PE-bgp-default-ipv4-vpn1-out] quit

[Hub-PE-bgp-default-vpn1-out] quit

[Hub-PE-bgp-default] quit

配置完成後,在PE設備上執行display bgp peer ipv4 vpn-instance命令,可以看到PE與CE之間的BGP對等體關係已建立,並達到Established狀態。

(5)     在Spoke-PE和Hub-PE之間建立MP-IBGP對等體

# 配置Spoke-PE 1。

[Spoke-PE1] bgp 100

[Spoke-PE1-bgp-default] peer 2.2.2.9 as-number 100

[Spoke-PE1-bgp-default] peer 2.2.2.9 connect-interface loopback 0

[Spoke-PE1-bgp-default] address-family vpnv4

[Spoke-PE1-bgp-default-vpnv4] peer 2.2.2.9 enable

[Spoke-PE1-bgp-default-vpnv4] quit

[Spoke-PE1-bgp-default] quit

# 配置Spoke-PE 2。

[Spoke-PE2] bgp 100

[Spoke-PE2-bgp-default] peer 2.2.2.9 as-number 100

[Spoke-PE2-bgp-default] peer 2.2.2.9 connect-interface loopback 0

[Spoke-PE2-bgp-default] address-family vpnv4

[Spoke-PE2-bgp-default-vpnv4] peer 2.2.2.9 enable

[Spoke-PE2-bgp-default-vpnv4] quit

[Spoke-PE2-bgp-default] quit

# 配置Hub-PE。

[Hub-PE] bgp 100

[Hub-PE-bgp-default] peer 1.1.1.9 as-number 100

[Hub-PE-bgp-default] peer 1.1.1.9 connect-interface loopback 0

[Hub-PE-bgp-default] peer 3.3.3.9 as-number 100

[Hub-PE-bgp-default] peer 3.3.3.9 connect-interface loopback 0

[Hub-PE-bgp-default] address-family vpnv4

[Hub-PE-bgp-default-vpnv4] peer 1.1.1.9 enable

[Hub-PE-bgp-default-vpnv4] peer 3.3.3.9 enable

[Hub-PE-bgp-default-vpnv4] quit

[Hub-PE-bgp-default] quit

配置完成後,在PE設備上執行display bgp peer vpnv4命令,可以看到PE之間的BGP對等體關係已建立,並達到Established狀態。

4. 驗證配置

# 在PE設備上執行display ip routing-table vpn-instance命令,可以看到去往各個CE的路由,且Spoke-PE上到達對端Spoke-CE的路由指向Hub-PE。以Spoke-PE 1為例:

[Spoke-PE1] display ip routing-table vpn-instance vpn1

 

Destinations : 15        Routes : 15

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

10.1.1.0/24        Direct  0   0           10.1.1.2        GE0/0/1

10.1.1.0/32        Direct  0   0           10.1.1.2        GE0/0/1

10.1.1.2/32        Direct  0   0           127.0.0.1       InLoop0

10.1.1.255/32      Direct  0   0           10.1.1.2        GE0/0/1

10.2.1.0/24        BGP     255 0           2.2.2.9         GE0/0/4

10.3.1.0/24        BGP     255 0           2.2.2.9         GE0/0/4

10.4.1.0/24        BGP     255 0           2.2.2.9         GE0/0/4

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0

224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

# Spoke-CE 1和Spoke-CE 2之間可以ping通。從TTL值可以推算出Spoke-CE 1到Spoke-CE 2經過6跳(255-250+1),即Spoke-CE 1和Spoke-CE 2之間的流量需要通過Hub-CE轉發。以Spoke-CE 1為例:

[Spoke-CE1] ping 10.2.1.1

Ping 10.2.1.1 (10.2.1.1): 56 data bytes, press CTRL_C to break

56 bytes from 10.2.1.1: icmp_seq=0 ttl=250 time=1.000 ms

56 bytes from 10.2.1.1: icmp_seq=1 ttl=250 time=2.000 ms

56 bytes from 10.2.1.1: icmp_seq=2 ttl=250 time=0.000 ms

56 bytes from 10.2.1.1: icmp_seq=3 ttl=250 time=1.000 ms

56 bytes from 10.2.1.1: icmp_seq=4 ttl=250 time=0.000 ms

 

--- Ping statistics for 10.2.1.1 ---

5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss

round-trip min/avg/max/std-dev = 0.000/0.800/2.000/0.748 ms

1.28.4  配置跨域VPN-OptionA方式示例

1. 組網需求

·     CE 1和CE 2屬於同一個VPN。

·     CE 1通過AS 100的PE 1接入,CE 2通過AS 200的PE 2接入。

·     采用OptionA方式實現跨域的MPLS L3VPN,即,采用VRF-to-VRF方式管理VPN路由。

·     同一個AS內部的MPLS骨幹網使用OSPF作為IGP。

2. 組網圖

圖1-29 配置跨域VPN-OptionA方式組網圖

設備

接口

IP地址

設備

接口

IP地址

CE 1

GE0/0/1

10.1.1.1/24

CE 2

GE0/0/1

10.2.1.1/24

PE 1

Loop0

1.1.1.9/32

PE 2

Loop0

4.4.4.9/32

 

GE0/0/1

10.1.1.2/24

 

GE0/0/1

10.2.1.2/24

 

GE0/0/4

172.1.1.2/24

 

GE0/0/4

162.1.1.2/24

ASBR-PE1

Loop0

2.2.2.9/32

ASBR-PE2

Loop0

3.3.3.9/32

 

GE0/0/4

172.1.1.1/24

 

GE0/0/4

162.1.1.1/24

 

GE0/0/5

192.1.1.1/24

 

GE0/0/5

192.1.1.2/24

 

3. 配置限製和指導

同一AS內的ASBR-PE與PE的VPN實例的Route Target應能匹配,不同AS的PE的VPN實例的Route Target則不需要匹配。

4. 配置步驟

(1)     在MPLS骨幹網上配置IGP協議,實現骨幹網內互通

本例中采用OSPF發布接口(包括Loopback接口)所在網段的路由,具體配置步驟略。

配置完成後,ASBR-PE與本AS的PE之間應能建立OSPF鄰居,執行display ospf peer命令可以看到鄰居達到FULL狀態,PE之間能學習到對方的Loopback地址。

ASBR-PE與本AS的PE之間能夠互相ping通。

(2)     在MPLS骨幹網上配置MPLS基本能力和MPLS LDP,建立LDP LSP

# 配置PE 1的MPLS基本能力,並在與ASBR-PE 1相連的接口上使能LDP。

<PE1> system-view

[PE1] mpls lsr-id 1.1.1.9

[PE1] mpls ldp

[PE1-ldp] quit

[PE1] interface gigabitethernet 0/0/4

[PE1-GigabitEthernet0/0/4] mpls enable

[PE1-GigabitEthernet0/0/4] mpls ldp enable

[PE1-GigabitEthernet0/0/4] quit

# 配置ASBR-PE 1的MPLS基本能力,並在與PE 1相連的接口上使能LDP。

<ASBR-PE1> system-view

[ASBR-PE1] mpls lsr-id 2.2.2.9

[ASBR-PE1] mpls ldp

[ASBR-PE1-ldp] quit

[ASBR-PE1] interface gigabitethernet 0/0/4

[ASBR-PE1-GigabitEthernet0/0/4] mpls enable

[ASBR-PE1-GigabitEthernet0/0/4] mpls ldp enable

[ASBR-PE1-GigabitEthernet0/0/4] quit

# 配置ASBR-PE 2的MPLS基本能力,並在與PE 2相連的接口上使能LDP。

<ASBR-PE2> system-view

[ASBR-PE2] mpls lsr-id 3.3.3.9

[ASBR-PE2] mpls ldp

[ASBR-PE2-ldp] quit

[ASBR-PE2] interface gigabitethernet 0/0/4

[ASBR-PE2-GigabitEthernet0/0/4] mpls enable

[ASBR-PE2-GigabitEthernet0/0/4] mpls ldp enable

[ASBR-PE2-GigabitEthernet0/0/4] quit

# 配置PE 2的MPLS基本能力,並在與ASBR-PE 2相連的接口上使能LDP。

<PE2> system-view

[PE2] mpls lsr-id 4.4.4.9

[PE2] mpls ldp

[PE2-ldp] quit

[PE2] interface gigabitethernet 0/0/4

[PE2-GigabitEthernet0/0/4] mpls enable

[PE2-GigabitEthernet0/0/4] mpls ldp enable

[PE2-GigabitEthernet0/0/4] quit

上述配置完成後,同一AS的PE和ASBR-PE之間應該建立起LDP鄰居,在各設備上執行display mpls ldp peer命令可以看到LDP會話狀態為“Operational”。

(3)     在PE設備上配置VPN實例,將CE接入PE

# 配置CE 1。

<CE1> system-view

[CE1] interface gigabitethernet 0/0/1

[CE1-GigabitEthernet0/0/1] ip address 10.1.1.1 24

[CE1-GigabitEthernet0/0/1] quit

# 配置PE 1。

[PE1] ip vpn-instance vpn1

[PE1-vpn-instance-vpn1] route-distinguisher 100:2

[PE1-vpn-instance-vpn1] vpn-target 100:1 both

[PE1-vpn-instance-vpn1] quit

[PE1] interface gigabitethernet 0/0/1

[PE1-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[PE1-GigabitEthernet0/0/1] ip address 10.1.1.2 24

[PE1-GigabitEthernet0/0/1] quit

# 配置CE 2。

<CE2> system-view

[CE2] interface gigabitethernet 0/0/1

[CE2-GigabitEthernet0/0/1] ip address 10.2.1.1 24

[CE2-GigabitEthernet0/0/1] quit

# 配置PE 2。

[PE2] ip vpn-instance vpn1

[PE2-vpn-instance-vpn1] route-distinguisher 200:2

[PE2-vpn-instance-vpn1] vpn-target 200:1 both

[PE2-vpn-instance-vpn1] quit

[PE2] interface gigabitethernet 0/0/1

[PE2-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[PE2-GigabitEthernet0/0/1] ip address 10.2.1.2 24

[PE2-GigabitEthernet0/0/1] quit

# 配置ASBR-PE 1:創建VPN實例,並將此實例綁定到連接ASBR-PE 2的接口(ASBR-PE 1認為ASBR-PE 2是自己的CE)。

[ASBR-PE1] ip vpn-instance vpn1

[ASBR-PE1-vpn-instance-vpn1] route-distinguisher 100:1

[ASBR-PE1-vpn-instance-vpn1] vpn-target 100:1 both

[ASBR-PE1-vpn-instance-vpn1] quit

[ASBR-PE1] interface gigabitethernet 0/0/5

[ASBR-PE1-GigabitEthernet0/0/5] ip binding vpn-instance vpn1

[ASBR-PE1-GigabitEthernet0/0/5] ip address 192.1.1.1 24

[ASBR-PE1-GigabitEthernet0/0/5] quit

# 配置ASBR-PE 2:創建VPN實例,並將此實例綁定到連接ASBR-PE 1的接口(ASBR-PE 2認為ASBR-PE 1是自己的CE)。

[ASBR-PE2] ip vpn-instance vpn1

[ASBR-PE2-vpn-instance-vpn1] route-distinguisher 200:1

[ASBR-PE2-vpn-instance-vpn1] vpn-target 200:1 both

[ASBR-PE2-vpn-instance-vpn1] quit

[ASBR-PE2] interface gigabitethernet 0/0/5

[ASBR-PE2-GigabitEthernet0/0/5] ip binding vpn-instance vpn1

[ASBR-PE2-GigabitEthernet0/0/5] ip address 192.1.1.2 24

[ASBR-PE2-GigabitEthernet0/0/5] quit

上述配置完成後,在各PE設備上執行display ip vpn-instance命令能正確顯示VPN實例配置。

各PE能ping通各自的CE。ASBR-PE之間也能互相ping通。

(4)     在PE與CE之間建立EBGP對等體,引入VPN路由

# 配置CE 1。

[CE1] bgp 65001

[CE1-bgp-default] peer 10.1.1.2 as-number 100

[CE1-bgp-default] address-family ipv4 unicast

[CE1-bgp-default-ipv4] peer 10.1.1.2 enable

[CE1-bgp-default-ipv4] import-route direct

[CE1-bgp-default-ipv4] quit

[CE1-bgp-default] quit

# 配置PE 1。

[PE1] bgp 100

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] peer 10.1.1.1 as-number 65001

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] peer 10.1.1.1 enable

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

[PE1-bgp-default] quit

# 配置CE 2。

[CE2] bgp 65002

[CE2-bgp-default] peer 10.2.1.2 as-number 200

[CE2-bgp-default] address-family ipv4 unicast

[CE2-bgp-default-ipv4] peer 10.2.1.2 enable

[CE2-bgp-default-ipv4] import-route direct

[CE2-bgp-default-ipv4] quit

[CE2-bgp-default] quit

# 配置PE 2。

[PE2] bgp 200

[PE2-bgp-default] ip vpn-instance vpn1

[PE2-bgp-default-vpn1] peer 10.2.1.1 as-number 65002

[PE2-bgp-default-vpn1] address-family ipv4 unicast

[PE2-bgp-default-ipv4-vpn1] peer 10.2.1.1 enable

[PE2-bgp-default-ipv4-vpn1] quit

[PE2-bgp-default-vpn1] quit

[PE2-bgp-default] quit

(5)     PE與本AS的ASBR-PE之間建立MP-IBGP對等體,ASBR-PE之間建立EBGP對等體

# 配置PE 1。

[PE1] bgp 100

[PE1-bgp-default] peer 2.2.2.9 as-number 100

[PE1-bgp-default] peer 2.2.2.9 connect-interface loopback 0

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 2.2.2.9 enable

[PE1-bgp-default-vpnv4] peer 2.2.2.9 next-hop-local

[PE1-bgp-default-vpnv4] quit

[PE1-bgp-default] quit

# 配置ASBR-PE 1。

[ASBR-PE1] bgp 100

[ASBR-PE1-bgp-default] ip vpn-instance vpn1

[ASBR-PE1-bgp-default-vpn1] peer 192.1.1.2 as-number 200

[ASBR-PE1-bgp-default-vpn1] address-family ipv4 unicast

[ASBR-PE1-bgp-default-ipv4-vpn1] peer 192.1.1.2 enable

[ASBR-PE1-bgp-default-ipv4-vpn1] quit

[ASBR-PE1-bgp-default-vpn1] quit

[ASBR-PE1-bgp-default] peer 1.1.1.9 as-number 100

[ASBR-PE1-bgp-default] peer 1.1.1.9 connect-interface loopback 0

[ASBR-PE1-bgp-default] address-family vpnv4

[ASBR-PE1-bgp-default-vpnv4] peer 1.1.1.9 enable

[ASBR-PE1-bgp-default-vpnv4] peer 1.1.1.9 next-hop-local

[ASBR-PE1-bgp-default-vpnv4] quit

[ASBR-PE1-bgp-default] quit

# 配置ASBR-PE 2。

[ASBR-PE2] bgp 200

[ASBR-PE2-bgp-default] ip vpn-instance vpn1

[ASBR-PE2-bgp-default-vpn1] peer 192.1.1.1 as-number 100

[ASBR-PE2-bgp-default-vpn1] address-family ipv4 unicast

[ASBR-PE2-bgp-default-ipv4-vpn1] peer 192.1.1.1 enable

[ASBR-PE2-bgp-default-ipv4-vpn1] quit

[ASBR-PE2-bgp-default-vpn1] quit

[ASBR-PE2-bgp-default] peer 4.4.4.9 as-number 200

[ASBR-PE2-bgp-default] peer 4.4.4.9 connect-interface loopback 0

[ASBR-PE2-bgp-default] address-family vpnv4

[ASBR-PE2-bgp-default-vpnv4] peer 4.4.4.9 enable

[ASBR-PE2-bgp-default-vpnv4] peer 4.4.4.9 next-hop-local

[ASBR-PE2-bgp-default-vpnv4] quit

[ASBR-PE2-bgp-default] quit

# 配置PE 2。

[PE2] bgp 200

[PE2-bgp-default] peer 3.3.3.9 as-number 200

[PE2-bgp-default] peer 3.3.3.9 connect-interface loopback 0

[PE2-bgp-default] address-family vpnv4

[PE2-bgp-default-vpnv4] peer 3.3.3.9 enable

[PE2-bgp-default-vpnv4] peer 3.3.3.9 next-hop-local

[PE2-bgp-default-vpnv4] quit

[PE2-bgp-default] quit

5. 驗證配置

上述配置完成後,CE之間能學習到對方的接口路由,CE 1和CE 2能夠相互ping通。

1.28.5  配置跨域VPN-OptionB方式示例

1. 組網需求

·     Site 1和Site 2屬於同一個VPN,Site 1的CE 1通過AS 100的PE 1接入,Site 2的CE 2通過AS 600的PE 2接入;

·     同一自治係統內的PE設備之間運行IS-IS作為IGP;

·     PE 1與ASBR-PE 1間通過MP-IBGP交換VPNv4路由;

·     PE 2與ASBR-PE 2間通過MP-IBGP交換VPNv4路由;

·     ASBR-PE 1與ASBR-PE 2間通過MP-EBGP交換VPNv4路由;

·     ASBR上不對接收的VPNv4路由進行Route Target過濾。

2. 組網圖

圖1-30 配置跨域VPN-OptionB方式組網圖

設備

接口

IP地址

設備

接口

IP地址

PE 1

Loop0

2.2.2.9/32

PE 2

Loop0

5.5.5.9/32

 

GE0/0/1

30.0.0.1/8

 

GE0/0/1

20.0.0.1/8

 

GE0/0/5

1.1.1.2/8

 

GE0/0/5

9.1.1.2/8

ASBR-PE 1

Loop0

3.3.3.9/32

ASBR-PE 2

Loop0

4.4.4.9/32

 

GE0/0/5

1.1.1.1/8

 

GE0/0/5

9.1.1.1/8

 

GE0/0/4

11.0.0.2/8

 

GE0/0/4

11.0.0.1/8

 

3. 配置步驟

(1)     配置PE 1

# 在PE 1上運行IS-IS。

<PE1> system-view

[PE1] isis 1

[PE1-isis-1] network-entity 10.0000.0000.0000.0001.00

[PE1-isis-1] quit

# 配置LSR ID,使能MPLS和LDP。

[PE1] mpls lsr-id 2.2.2.9

[PE1] mpls ldp

[PE1-ldp] quit

# 配置接口GigabitEthernet0/0/5,在接口上運行IS-IS,並使能MPLS和LDP。

[PE1] interface gigabitethernet 0/0/5

[PE1-GigabitEthernet0/0/5] ip address 1.1.1.2 255.0.0.0

[PE1-GigabitEthernet0/0/5] isis enable 1

[PE1-GigabitEthernet0/0/5] mpls enable

[PE1-GigabitEthernet0/0/5] mpls ldp enable

[PE1-GigabitEthernet0/0/5] quit

# 創建Loopback0接口,在接口上運行IS-IS。

[PE1] interface loopback 0

[PE1-LoopBack0] ip address 2.2.2.9 32

[PE1-LoopBack0] isis enable 1

[PE1-LoopBack0] quit

# 創建一個VPN實例,名為vpn1,配置RD和Route Target屬性。

[PE1] ip vpn-instance vpn1

[PE1-vpn-instance-vpn1] route-distinguisher 11:11

[PE1-vpn-instance-vpn1] vpn-target 1:1 2:2 import-extcommunity

[PE1-vpn-instance-vpn1] vpn-target 1:1 export-extcommunity

[PE1-vpn-instance-vpn1] quit

# 將連接CE 1的接口綁定到創建的VPN實例。

[PE1] interface gigabitethernet 0/0/1

[PE1-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[PE1-GigabitEthernet0/0/1] ip address 30.0.0.1 8

[PE1-GigabitEthernet0/0/1] quit

# 在PE 1上運行BGP。

[PE1] bgp 100

# 配置IBGP對等體3.3.3.9為VPNv4對等體。

[PE1-bgp-default] peer 3.3.3.9 as-number 100

[PE1-bgp-default] peer 3.3.3.9 connect-interface loopback 0

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 3.3.3.9 enable

[PE1-bgp-default-vpnv4] quit

# 將直連路由引入vpn1的VPN路由表。

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] import-route direct

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

[PE1-bgp-default] quit

(2)     配置ASBR-PE 1

# 在ASBR-PE 1上運行IS-IS。

<ASBR-PE1> system-view

[ASBR-PE1] isis 1

[ASBR-PE1-isis-1] network-entity 10.0000.0000.0000.0002.00

[ASBR-PE1-isis-1] quit

# 配置LSR ID,使能MPLS和LDP。

[ASBR-PE1] mpls lsr-id 3.3.3.9

[ASBR-PE1] mpls ldp

[ASBR-PE1-ldp] quit

# 配置接口GigabitEthernet0/0/5,在接口上運行IS-IS,並使能MPLS和LDP。

[ASBR-PE1] interface gigabitethernet 0/0/5

[ASBR-PE1-GigabitEthernet0/0/5] ip address 1.1.1.1 255.0.0.0

[ASBR-PE1-GigabitEthernet0/0/5] isis enable 1

[ASBR-PE1-GigabitEthernet0/0/5] mpls enable

[ASBR-PE1-GigabitEthernet0/0/5] mpls ldp enable

[ASBR-PE1-GigabitEthernet0/0/5] quit

# 配置接口GigabitEthernet0/0/4,使能MPLS。

[ASBR-PE1] interface gigabitethernet 0/0/4

[ASBR-PE1-GigabitEthernet0/0/4] ip address 11.0.0.2 255.0.0.0

[ASBR-PE1-GigabitEthernet0/0/4] mpls enable

[ASBR-PE1-GigabitEthernet0/0/4] quit

# 創建Loopback0接口,並運行IS-IS。

[ASBR-PE1] interface loopback 0

[ASBR-PE1-LoopBack0] ip address 3.3.3.9 32

[ASBR-PE1-LoopBack0] isis enable 1

[ASBR-PE1-LoopBack0] quit

# 在ASBR-PE 1上運行BGP。

[ASBR-PE1] bgp 100

[ASBR-PE1-bgp-default] peer 2.2.2.9 as-number 100

[ASBR-PE1-bgp-default] peer 2.2.2.9 connect-interface loopback 0

[ASBR-PE1-bgp-default] peer 11.0.0.1 as-number 600

[ASBR-PE1-bgp-default] peer 11.0.0.1 connect-interface gigabitethernet 0/0/4

# 不對接收的VPNv4路由進行Route target過濾。

[ASBR-PE1-bgp-default] address-family vpnv4

[ASBR-PE1-bgp-default-vpnv4] undo policy vpn-target

# 將IBGP對等體2.2.2.9和EBGP對等體11.0.0.1都配置為VPNv4對等體。

[ASBR-PE1-bgp-default-vpnv4] peer 11.0.0.1 enable

[ASBR-PE1-bgp-default-vpnv4] peer 2.2.2.9 enable

[ASBR-PE1-bgp-default-vpnv4] quit

(3)     配置ASBR-PE 2

# 在ASBR-PE 2上運行IS-IS。

<ASBR-PE2> system-view

[ASBR-PE2] isis 1

[ASBR-PE2-isis-1] network-entity 10.0000.0000.0000.0003.00

[ASBR-PE2-isis-1] quit

# 配置LSR ID,使能MPLS和LDP。

[ASBR-PE2] mpls lsr-id 4.4.4.9

[ASBR-PE2] mpls ldp

[ASBR-PE2-ldp] quit

# 配置接口GigabitEthernet0/0/5,在接口上運行IS-IS,並使能MPLS和LDP。

[ASBR-PE2] interface gigabitethernet 0/0/5

[ASBR-PE2-GigabitEthernet0/0/5] ip address 9.1.1.1 255.0.0.0

[ASBR-PE2-GigabitEthernet0/0/5] isis enable 1

[ASBR-PE2-GigabitEthernet0/0/5] mpls enable

[ASBR-PE2-GigabitEthernet0/0/5] mpls ldp enable

[ASBR-PE2-GigabitEthernet0/0/5] quit

# 配置接口GigabitEthernet0/0/4,使能MPLS。

[ASBR-PE2] interface gigabitethernet 0/0/4

[ASBR-PE2-GigabitEthernet0/0/4] ip address 11.0.0.1 255.0.0.0

[ASBR-PE2-GigabitEthernet0/0/4] mpls enable

[ASBR-PE2-GigabitEthernet0/0/4] quit

# 創建Loopback0接口,並運行IS-IS。

[ASBR-PE2] interface loopback 0

[ASBR-PE2-LoopBack0] ip address 4.4.4.9 32

[ASBR-PE2-LoopBack0] isis enable 1

[ASBR-PE2-LoopBack0] quit

# 在ASBR-PE 2上運行BGP。

[ASBR-PE2] bgp 600

[ASBR-PE2-bgp-default] peer 11.0.0.2 as-number 100

[ASBR-PE2-bgp-default] peer 11.0.0.2 connect-interface gigabitethernet 0/0/4

[ASBR-PE2-bgp-default] peer 5.5.5.9 as-number 600

[ASBR-PE2-bgp-default] peer 5.5.5.9 connect-interface loopback 0

# 不對接收的VPNv4路由進行Route target過濾。

[ASBR-PE2-bgp-default] address-family vpnv4

[ASBR-PE2-bgp-default-vpnv4] undo policy vpn-target

# 將IBGP對等體5.5.5.9和EBGP對等體11.0.0.2都配置為VPNv4對等體。

[ASBR-PE2-bgp-default-vpnv4] peer 11.0.0.2 enable

[ASBR-PE2-bgp-default-vpnv4] peer 5.5.5.9 enable

[ASBR-PE2-bgp-default-vpnv4] quit

[ASBR-PE2-bgp-default] quit

(4)     配置PE 2

# 在PE 2上運行IS-IS。

<PE2> system-view

[PE2] isis 1

[PE2-isis-1] network-entity 10.0000.0000.0000.0004.00

[PE2-isis-1] quit

# 配置LSR ID,使能MPLS和LDP。

[PE2] mpls lsr-id 5.5.5.9

[PE2] mpls ldp

[PE2-ldp] quit

# 配置接口GigabitEthernet0/0/5,在接口上運行IS-IS,並使能MPLS和LDP。

[PE2] interface gigabitethernet 0/0/5

[PE2-GigabitEthernet0/0/5] ip address 9.1.1.2 255.0.0.0

[PE2-GigabitEthernet0/0/5] isis enable 1

[PE2-GigabitEthernet0/0/5] mpls enable

[PE2-GigabitEthernet0/0/5] mpls ldp enable

[PE2-GigabitEthernet0/0/5] quit

# 創建Loopback0接口,在接口上運行IS-IS。

[PE2] interface loopback 0

[PE2-LoopBack0] ip address 5.5.5.9 32

[PE2-LoopBack0] isis enable 1

[PE2-LoopBack0] quit

# 創建一個VPN實例,名為vpn1,配置RD和Route Target屬性。

[PE2] ip vpn-instance vpn1

[PE2-vpn-instance-vpn1] route-distinguisher 12:12

[PE2-vpn-instance-vpn1] vpn-target 1:1 2:2 import-extcommunity

[PE2-vpn-instance-vpn1] vpn-target 2:2 export-extcommunity

[PE2-vpn-instance-vpn1] quit

# 將連接CE 1的接口綁定到創建的VPN實例。

[PE2] interface gigabitethernet 0/0/1

[PE2-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[PE2-GigabitEthernet0/0/1] ip address 20.0.0.1 8

[PE2-GigabitEthernet0/0/1] quit

# 在PE 2上運行BGP。

[PE2] bgp 600

# 配置IBGP對等體4.4.4.9為VPNv4對等體。

[PE2-bgp-default] peer 4.4.4.9 as-number 600

[PE2-bgp-default] peer 4.4.4.9 connect-interface loopback 0

[PE2-bgp-default] address-family vpnv4

[PE2-bgp-default-vpnv4] peer 4.4.4.9 enable

[PE2-bgp-default-vpnv4] quit

# 將直連路由引入vpn1的VPN路由表。

[PE2-bgp-default] ip vpn-instance vpn1

[PE2-bgp-default-vpn1] address-family ipv4 unicast

[PE2-bgp-default-ipv4-vpn1] import-route direct

[PE2-bgp-default-ipv4-vpn1] quit

[PE2-bgp-default-vpn1] quit

[PE2-bgp-default] quit

4. 驗證配置

# 配置完成後,PE 1和PE 2上連接CE的接口GigabitEthernet0/0/1之間可以互相Ping通。以PE 1為例:

[PE1] ping -a 30.0.0.1 -vpn-instance vpn1 20.0.0.1

Ping 20.0.0.1 (20.0.0.1) from 30.0.0.1: 56 data bytes, press CTRL_C to break

56 bytes from 20.0.0.1: icmp_seq=0 ttl=255 time=1.208 ms

56 bytes from 20.0.0.1: icmp_seq=1 ttl=255 time=0.867 ms

56 bytes from 20.0.0.1: icmp_seq=2 ttl=255 time=0.551 ms

56 bytes from 20.0.0.1: icmp_seq=3 ttl=255 time=0.566 ms

56 bytes from 20.0.0.1: icmp_seq=4 ttl=255 time=0.570 ms

 

--- Ping statistics for 20.0.0.1 ---

5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss

round-trip min/avg/max/std-dev = 0.551/0.752/1.208/0.257 ms

1.28.6  配置跨域VPN-OptionC方式示例(方式一)

1. 組網需求

·     Site 1和Site 2屬於同一個VPN,Site 1通過AS 100的PE 1接入,Site 2通過AS 600的PE 2接入;

·     同一自治係統內的PE設備之間運行IS-IS作為IGP;

·     PE 1與ASBR-PE 1間通過IBGP交換標簽IPv4路由;

·     PE 2與ASBR-PE 2間通過IBGP交換標簽IPv4路由;

·     PE 1與PE 2建立MP-EBGP對等體交換VPNv4路由;

·     ASBR-PE 1和ASBR-PE 2上分別配置路由策略,對從對方接收的路由壓入標簽;

·     ASBR-PE 1與ASBR-PE 2間通過EBGP交換標簽IPv4路由。

2. 組網圖

圖1-31 配置跨域VPN-OptionC方式組網圖

設備

接口

IP地址

設備

接口

IP地址

PE 1

Loop0

2.2.2.9/32

PE 2

Loop0

5.5.5.9/32

 

GE0/0/1

30.0.0.1/24

 

GE0/0/1

20.0.0.1/24

 

GE0/0/5

1.1.1.2/8

 

GE0/0/5

9.1.1.2/8

ASBR-PE 1

Loop0

3.3.3.9/32

ASBR-PE 2

Loop0

4.4.4.9/32

 

GE0/0/5

1.1.1.1/8

 

GE0/0/5

9.1.1.1/8

 

GE0/0/4

11.0.0.2/8

 

GE0/0/4

11.0.0.1/8

CE 1

GE0/0/1

30.0.0.2/24

CE 2

GE0/0/1

20.0.0.2/24

 

3. 配置步驟

(1)     配置CE 1

# 配置接口GigabitEthernet0/0/1的IP地址。

<CE1> system-view

[CE1] interface gigabitethernet 0/0/1

[CE1-GigabitEthernet0/0/1] ip address 30.0.0.2 24

[CE1-GigabitEthernet0/0/1] quit

# 配置CE 1與PE 1建立EBGP對等體,並引入VPN路由。

[CE1] bgp 65001

[CE1-bgp-default] peer 30.0.0.1 as-number 100

[CE1-bgp-default] address-family ipv4 unicast

[CE1-bgp-default-ipv4] peer 30.0.0.1 enable

[CE1-bgp-default-ipv4] import-route direct

[CE1-bgp-default-ipv4] quit

[CE1-bgp-default] quit

(2)     配置PE 1

# 在PE 1上運行IS-IS。

<PE1> system-view

[PE1] isis 1

[PE1-isis-1] network-entity 10.0000.0000.0000.0001.00

[PE1-isis-1] quit

# 配置LSR ID,使能MPLS和LDP。

[PE1] mpls lsr-id 2.2.2.9

[PE1] mpls ldp

[PE1-ldp] quit

# 配置接口GigabitEthernet0/0/5,在接口上運行IS-IS,並使能MPLS和LDP。

[PE1] interface gigabitethernet 0/0/5

[PE1-GigabitEthernet0/0/5] ip address 1.1.1.2 255.0.0.0

[PE1-GigabitEthernet0/0/5] isis enable 1

[PE1-GigabitEthernet0/0/5] mpls enable

[PE1-GigabitEthernet0/0/5] mpls ldp enable

[PE1-GigabitEthernet0/0/5] quit

# 創建Loopback0接口,在接口上運行IS-IS。

[PE1] interface loopback 0

[PE1-LoopBack0] ip address 2.2.2.9 32

[PE1-LoopBack0] isis enable 1

[PE1-LoopBack0] quit

# 創建VPN實例,名稱為vpn1,為其配置RD和Route Target屬性。

[PE1] ip vpn-instance vpn1

[PE1-vpn-instance-vpn1] route-distinguisher 11:11

[PE1-vpn-instance-vpn1] vpn-target 1:1 2:2 3:3 import-extcommunity

[PE1-vpn-instance-vpn1] vpn-target 3:3 export-extcommunity

[PE1-vpn-instance-vpn1] quit

# 配置接口GigabitEthernet0/0/1與VPN實例vpn1綁定,並配置該接口的IP地址。

[PE1] interface gigabitethernet 0/0/1

[PE1-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[PE1-GigabitEthernet0/0/1] ip address 30.0.0.1 24

[PE1-GigabitEthernet0/0/1] quit

# 在PE 1上運行BGP。

[PE1] bgp 100

# 配置PE 1向IBGP對等體3.3.3.9發布標簽路由及從3.3.3.9接收標簽路由的能力。

[PE1-bgp-default] peer 3.3.3.9 as-number 100

[PE1-bgp-default] peer 3.3.3.9 connect-interface loopback 0

[PE1-bgp-default] address-family ipv4 unicast

[PE1-bgp-default-ipv4] peer 3.3.3.9 enable

[PE1-bgp-default-ipv4] peer 3.3.3.9 label-route-capability

[PE1-bgp-default-ipv4] quit

# 配置PE 1到EBGP對等體5.5.5.9的最大跳數為10。

[PE1-bgp-default] peer 5.5.5.9 as-number 600

[PE1-bgp-default] peer 5.5.5.9 connect-interface loopback 0

[PE1-bgp-default] peer 5.5.5.9 ebgp-max-hop 10

# 配置對等體5.5.5.9作為VPNv4對等體。

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 5.5.5.9 enable

[PE1-bgp-default-vpnv4] quit

# 配置PE 1與CE 1建立EBGP對等體,將學習到的BGP路由添加到VPN實例的路由表中。

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] peer 30.0.0.2 as-number 65001

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] peer 30.0.0.2 enable

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

[PE1-bgp-default] quit

(3)     配置ASBR-PE1

# 在ASBR-PE1上運行IS-IS。

<ASBR-PE1> system-view

[ASBR-PE1] isis 1

[ASBR-PE1-isis-1] network-entity 10.0000.0000.0000.0002.00

[ASBR-PE1-isis-1] quit

# 配置LSR ID,使能MPLS和LDP。

[ASBR-PE1] mpls lsr-id 3.3.3.9

[ASBR-PE1] mpls ldp

[ASBR-PE1-ldp] quit

# 配置接口GigabitEthernet0/0/5,在接口上運行IS-IS,並使能MPLS和LDP。

[ASBR-PE1] interface gigabitethernet 0/0/5

[ASBR-PE1-GigabitEthernet0/0/5] ip address 1.1.1.1 255.0.0.0

[ASBR-PE1-GigabitEthernet0/0/5] isis enable 1

[ASBR-PE1-GigabitEthernet0/0/5] mpls enable

[ASBR-PE1-GigabitEthernet0/0/5] mpls ldp enable

[ASBR-PE1-GigabitEthernet0/0/5] quit

# 配置接口GigabitEthernet0/0/4,並在接口上使能MPLS。

[ASBR-PE1] interface gigabitethernet 0/0/4

[ASBR-PE1-GigabitEthernet0/0/4] ip address 11.0.0.2 255.0.0.0

[ASBR-PE1-GigabitEthernet0/0/4] mpls enable

[ASBR-PE1-GigabitEthernet0/0/4] quit

# 創建Loopback0接口,在接口上運行IS-IS。

[ASBR-PE1] interface loopback 0

[ASBR-PE1-LoopBack0] ip address 3.3.3.9 32

[ASBR-PE1-LoopBack0] isis enable 1

[ASBR-PE1-LoopBack0] quit

# 創建路由策略。

[ASBR-PE1] route-policy policy1 permit node 1

[ASBR-PE1-route-policy-policy1-1] apply mpls-label

[ASBR-PE1-route-policy-policy1-1] quit

[ASBR-PE1] route-policy policy2 permit node 1

[ASBR-PE1-route-policy-policy2-1] if-match mpls-label

[ASBR-PE1-route-policy-policy2-1] apply mpls-label

[ASBR-PE1-route-policy-policy2-1] quit

# 在ASBR-PE 1上運行BGP,對向IBGP對等體2.2.2.9發布的路由應用已配置的路由策略policy2。

[ASBR-PE1] bgp 100

[ASBR-PE1-bgp-default] peer 2.2.2.9 as-number 100

[ASBR-PE1-bgp-default] peer 2.2.2.9 connect-interface loopback 0

[ASBR-PE1-bgp-default] address-family ipv4 unicast

[ASBR-PE1-bgp-default-ipv4] peer 2.2.2.9 enable

[ASBR-PE1-bgp-default-ipv4] peer 2.2.2.9 route-policy policy2 export

# 向IBGP對等體2.2.2.9發布標簽路由及從2.2.2.9接收標簽路由的能力。

[ASBR-PE1-bgp-default-ipv4] peer 2.2.2.9 label-route-capability

# 引入IS-IS進程1的路由。

[ASBR-PE1-bgp-default-ipv4] import-route isis 1

[ASBR-PE1-bgp-default-ipv4] quit

# 對向EBGP對等體11.0.0.1發布的路由應用已配置的路由策略policy1。

[ASBR-PE1-bgp-default] peer 11.0.0.1 as-number 600

[ASBR-PE1-bgp-default] address-family ipv4 unicast

[ASBR-PE1-bgp-default-ipv4] peer 11.0.0.1 enable

[ASBR-PE1-bgp-default-ipv4] peer 11.0.0.1 route-policy policy1 export

# 向EBGP對等體11.0.0.1發布標簽路由及從11.0.0.1接收標簽路由的能力。

[ASBR-PE1-bgp-default-ipv4] peer 11.0.0.1 label-route-capability

[ASBR-PE1-bgp-default-ipv4] quit

[ASBR-PE1-bgp-default] quit

(4)     配置ASBR-PE 2

# 在ASBR-PE 2上運行IS-IS。

<ASBR-PE2> system-view

[ASBR-PE2] isis 1

[ASBR-PE2-isis-1] network-entity 10.0000.0000.0000.0003.00

[ASBR-PE2-isis-1] quit

# 配置LSR ID,使能MPLS和LDP。

[ASBR-PE2] mpls lsr-id 4.4.4.9

[ASBR-PE2] mpls ldp

[ASBR-PE2-ldp] quit

# 配置接口GigabitEthernet0/0/5,在接口上運行IS-IS,並在接口上使能MPLS和LDP。

[ASBR-PE2] interface gigabitethernet 0/0/5

[ASBR-PE2-GigabitEthernet0/0/5] ip address 9.1.1.1 255.0.0.0

[ASBR-PE2-GigabitEthernet0/0/5] isis enable 1

[ASBR-PE2-GigabitEthernet0/0/5] mpls enable

[ASBR-PE2-GigabitEthernet0/0/5] mpls ldp enable

[ASBR-PE2-GigabitEthernet0/0/5] quit

# 創建Loopback0接口,在接口上運行IS-IS。

[ASBR-PE2] interface loopback 0

[ASBR-PE2-LoopBack0] ip address 4.4.4.9 32

[ASBR-PE2-LoopBack0] isis enable 1

[ASBR-PE2-LoopBack0] quit

# 配置接口GigabitEthernet0/0/4,在接口上使能MPLS。

[ASBR-PE2] interface gigabitethernet 0/0/4

[ASBR-PE2-GigabitEthernet0/0/4] ip address 11.0.0.1 255.0.0.0

[ASBR-PE2-GigabitEthernet0/0/4] mpls enable

[ASBR-PE2-GigabitEthernet0/0/4] quit

# 創建路由策略。

[ASBR-PE2] route-policy policy1 permit node 1

[ASBR-PE2-route-policy-policy1-1] apply mpls-label

[ASBR-PE2-route-policy-policy1-1] quit

[ASBR-PE2] route-policy policy2 permit node 1

[ASBR-PE2-route-policy-policy2-1] if-match mpls-label

[ASBR-PE2-route-policy-policy2-1] apply mpls-label

[ASBR-PE2-route-policy-policy2-1] quit

# 在ASBR-PE 2上運行BGP,向IBGP對等體5.5.5.9發布標簽路由及從5.5.5.9接收標簽路由的能力。

[ASBR-PE2] bgp 600

[ASBR-PE2-bgp-default] peer 5.5.5.9 as-number 600

[ASBR-PE2-bgp-default] peer 5.5.5.9 connect-interface loopback 0

[ASBR-PE2-bgp-default] address-family ipv4 unicast

[ASBR-PE2-bgp-default-ipv4] peer 5.5.5.9 enable

[ASBR-PE2-bgp-default-ipv4] peer 5.5.5.9 label-route-capability

# 對向IBGP對等體5.5.5.9發布的路由應用已配置的路由策略policy2。

[ASBR-PE2-bgp-default-ipv4] peer 5.5.5.9 route-policy policy2 export

# 引入IS-IS進程1的路由。

[ASBR-PE2-bgp-default-ipv4] import-route isis 1

[ASBR-PE2-bgp-default-ipv4] quit

# 對向EBGP對等體11.0.0.2發布的路由應用已配置的路由策略policy1。

[ASBR-PE2-bgp-default] peer 11.0.0.2 as-number 100

[ASBR-PE2-bgp-default] address-family ipv4 unicast

[ASBR-PE2-bgp-default-ipv4] peer 11.0.0.2 enable

[ASBR-PE2-bgp-default-ipv4] peer 11.0.0.2 route-policy policy1 export

# 向EBGP對等體11.0.0.2發布標簽路由及從11.0.0.2接收標簽路由的能力。

[ASBR-PE2-bgp-default-ipv4] peer 11.0.0.2 label-route-capability

[ASBR-PE2-bgp-default-ipv4] quit

[ASBR-PE2-bgp-default] quit

(5)     配置PE 2

# 在PE 2上運行IS-IS。

<PE2> system-view

[PE2] isis 1

[PE2-isis-1] network-entity 10.0000.0000.0000.0004.00

[PE2-isis-1] quit

# 配置LSR ID,使能MPLS和LDP。

[PE2] mpls lsr-id 5.5.5.9

[PE2] mpls ldp

[PE2-ldp] quit

# 配置接口GigabitEthernet0/0/5,在接口上運行IS-IS,並使能MPLS和LDP。

[PE2] interface gigabitethernet 0/0/5

[PE2-GigabitEthernet0/0/5] ip address 9.1.1.2 255.0.0.0

[PE2-GigabitEthernet0/0/5] isis enable 1

[PE2-GigabitEthernet0/0/5] mpls enable

[PE2-GigabitEthernet0/0/5] mpls ldp enable

[PE2-GigabitEthernet0/0/5] quit

# 創建Loopback0接口,在接口上運行IS-IS。

[PE2] interface loopback 0

[PE2-LoopBack0] ip address 5.5.5.9 32

[PE2-LoopBack0] isis enable 1

[PE2-LoopBack0] quit

# 創建VPN實例,名稱為vpn1,為其配置RD和Route Target屬性。

[PE2] ip vpn-instance vpn1

[PE2-vpn-instance-vpn1] route-distinguisher 11:11

[PE2-vpn-instance-vpn1] vpn-target 1:1 2:2 3:3 import-extcommunity

[PE2-vpn-instance-vpn1] vpn-target 3:3 export-extcommunity

[PE2-vpn-instance-vpn1] quit

# 配置接口GigabitEthernet0/0/1與VPN實例vpn1綁定,並配置該接口的IP地址。

[PE2] interface gigabitethernet 0/0/1

[PE2-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[PE2-GigabitEthernet0/0/1] ip address 20.0.0.1 24

[PE2-GigabitEthernet0/0/1] quit

# 在PE 2上運行BGP。

[PE2] bgp 600

# 配置PE 2向IBGP對等體4.4.4.9發布標簽路由及從4.4.4.9接收標簽路由的能力。

[PE2-bgp-default] peer 4.4.4.9 as-number 600

[PE2-bgp-default] peer 4.4.4.9 connect-interface loopback 0

[PE2-bgp-default] address-family ipv4 unicast

[PE2-bgp-default-ipv4] peer 4.4.4.9 enable

[PE2-bgp-default-ipv4] peer 4.4.4.9 label-route-capability

[PE2-bgp-default-ipv4] quit

# 配置PE 2到EBGP對等體2.2.2.9的最大跳數為10。

[PE2-bgp-default] peer 2.2.2.9 as-number 100

[PE2-bgp-default] peer 2.2.2.9 connect-interface loopback 0

[PE2-bgp-default] peer 2.2.2.9 ebgp-max-hop 10

# 配置對等體2.2.2.9作為VPNv4對等體。

[PE2-bgp-default] address-family vpnv4

[PE2-bgp-default-vpnv4] peer 2.2.2.9 enable

[PE2-bgp-default-vpnv4] quit

# 配置PE 2與CE 2建立EBGP對等體,將學習到的BGP路由添加到VPN實例的路由表中。

[PE2-bgp-default] ip vpn-instance vpn1

[PE2-bgp-default-vpn1] peer 20.0.0.2 as-number 65002

[PE2-bgp-default-vpn1] address-family ipv4 unicast

[PE2-bgp-default-ipv4-vpn1] peer 20.0.0.2 enable

[PE2-bgp-default-ipv4-vpn1] quit

[PE2-bgp-default-vpn1] quit

[PE2-bgp-default] quit

(6)     配置CE 2

# 配置接口GigabitEthernet0/0/1的IP地址。

<CE2> system-view

[CE2] interface gigabitethernet 0/0/1

[CE2-GigabitEthernet0/0/1] ip address 20.0.0.2 24

[CE2-GigabitEthernet0/0/1] quit

# 配置CE 2與PE 2建立EBGP對等體,並引入VPN路由。

[CE2] bgp 65002

[CE2-bgp-default] peer 20.0.0.1 as-number 600

[CE2-bgp-default] address-family ipv4 unicast

[CE2-bgp-default-ipv4] peer 20.0.0.1 enable

[CE2-bgp-default-ipv4] import-route direct

[CE2-bgp-default-ipv4] quit

[CE2-bgp-default] quit

4. 驗證配置

# 配置完成後,在CE 1和CE 2上執行display ip routing-table命令可以查看到到達對方的路由,且CE 1和CE 2互相可以ping通。

1.28.7  配置跨域VPN-OptionC方式示例(方式二)

1. 組網需求

·     Site 1和Site 2屬於同一個VPN,Site 1通過AS 100的PE 1接入,Site 2通過AS 600的PE 2接入;

·     同一自治係統內的PE設備之間運行IS-IS作為IGP;

·     PE 1與PE 2建立MP-EBGP對等體交換VPNv4路由;

·     ASBR-PE 1和ASBR-PE 2上分別配置路由策略,對從對方接收的路由壓入標簽;

·     ASBR-PE 1與ASBR-PE 2間通過EBGP交換標簽IPv4路由。

·     ASBR-PE 1和ASBR-PE 2上將IGP路由和BGP路由互相引入。

2. 組網圖

圖1-32 配置跨域VPN-OptionC方式組網圖

設備

接口

IP地址

設備

接口

IP地址

PE 1

Loop0

2.2.2.9/32

PE 2

Loop0

5.5.5.9/32

 

GE0/0/1

30.0.0.1/24

 

GE0/0/1

20.0.0.1/24

 

GE0/0/5

1.1.1.2/8

 

GE0/0/5

9.1.1.2/8

ASBR-PE 1

Loop0

3.3.3.9/32

ASBR-PE 2

Loop0

4.4.4.9/32

 

GE0/0/5

1.1.1.1/8

 

GE0/0/5

9.1.1.1/8

 

GE0/0/4

11.0.0.2/8

 

GE0/0/4

11.0.0.1/8

CE 1

GE0/0/1

30.0.0.2/24

CE 2

GE0/0/1

20.0.0.2/24

 

3. 配置步驟

(1)     配置CE 1

# 配置接口GigabitEthernet0/0/1的IP地址。

<CE1> system-view

[CE1] interface gigabitethernet 0/0/1

[CE1-GigabitEthernet0/0/1] ip address 30.0.0.2 24

[CE1-GigabitEthernet0/0/1] quit

# 配置CE 1與PE 1建立EBGP對等體,並引入VPN路由。

[CE1] bgp 65001

[CE1-bgp-default] peer 30.0.0.1 as-number 100

[CE1-bgp-default] address-family ipv4 unicast

[CE1-bgp-default-ipv4] peer 30.0.0.1 enable

[CE1-bgp-default-ipv4] import-route direct

[CE1-bgp-default-ipv4] quit

[CE1-bgp-default] quit

(2)     配置PE 1

# 在PE 1上運行IS-IS。

<PE1> system-view

[PE1] isis 1

[PE1-isis-1] network-entity 10.0000.0000.0000.0001.00

[PE1-isis-1] quit

# 配置LSR ID,使能MPLS和LDP。

[PE1] mpls lsr-id 2.2.2.9

[PE1] mpls ldp

[PE1-ldp] quit

# 配置接口GigabitEthernet0/0/5,在接口上運行IS-IS,並使能MPLS和LDP。

[PE1] interface gigabitethernet 0/0/5

[PE1-GigabitEthernet0/0/5] ip address 1.1.1.2 255.0.0.0

[PE1-GigabitEthernet0/0/5] isis enable 1

[PE1-GigabitEthernet0/0/5] mpls enable

[PE1-GigabitEthernet0/0/5] mpls ldp enable

[PE1-GigabitEthernet0/0/5] quit

# 創建Loopback0接口,在接口上運行IS-IS。

[PE1] interface loopback 0

[PE1-LoopBack0] ip address 2.2.2.9 32

[PE1-LoopBack0] isis enable 1

[PE1-LoopBack0] quit

# 創建VPN實例,名稱為vpn1,為其配置RD和Route Target屬性。

[PE1] ip vpn-instance vpn1

[PE1-vpn-instance-vpn1] route-distinguisher 11:11

[PE1-vpn-instance-vpn1] vpn-target 1:1 2:2 3:3 import-extcommunity

[PE1-vpn-instance-vpn1] vpn-target 3:3 export-extcommunity

[PE1-vpn-instance-vpn1] quit

# 配置接口GigabitEthernet0/0/1與VPN實例vpn1綁定,並配置該接口的IP地址。

[PE1] interface gigabitethernet 0/0/1

[PE1-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[PE1-GigabitEthernet0/0/1] ip address 30.0.0.1 24

[PE1-GigabitEthernet0/0/1] quit

# 在PE 1上運行BGP。

[PE1] bgp 100

# 配置PE 1到EBGP對等體5.5.5.9的最大跳數為10。

[PE1-bgp-default] peer 5.5.5.9 as-number 600

[PE1-bgp-default] peer 5.5.5.9 connect-interface loopback 0

[PE1-bgp-default] peer 5.5.5.9 ebgp-max-hop 10

# 配置對等體5.5.5.9作為VPNv4對等體。

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 5.5.5.9 enable

[PE1-bgp-default-vpnv4] quit

# 配置PE 1與CE 1建立EBGP對等體,將學習到的BGP路由添加到VPN實例的路由表中。

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] peer 30.0.0.2 as-number 65001

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] peer 30.0.0.2 enable

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

[PE1-bgp-default] quit

(3)     配置ASBR-PE1

# 在ASBR-PE1上運行IS-IS。

<ASBR-PE1> system-view

[ASBR-PE1] isis 1

[ASBR-PE1-isis-1] network-entity 10.0000.0000.0000.0002.00

# 引入BGP的路由。

[ASBR-PE1-isis-1] address-family ipv4 unicast

[ASBR-PE1-isis-1-ipv4] import-route bgp

[ASBR-PE1-isis-1-ipv4] quit

[ASBR-PE1-isis-1] quit

# 配置LSR ID,使能MPLS和LDP。

[ASBR-PE1] mpls lsr-id 3.3.3.9

[ASBR-PE1] mpls ldp

[ASBR-PE1-ldp] quit

# 配置接口GigabitEthernet0/0/5,在接口上運行IS-IS,並使能MPLS和LDP。

[ASBR-PE1] interface gigabitethernet 0/0/5

[ASBR-PE1-GigabitEthernet0/0/5] ip address 1.1.1.1 255.0.0.0

[ASBR-PE1-GigabitEthernet0/0/5] isis enable 1

[ASBR-PE1-GigabitEthernet0/0/5] mpls enable

[ASBR-PE1-GigabitEthernet0/0/5] mpls ldp enable

[ASBR-PE1-GigabitEthernet0/0/5] quit

# 配置接口GigabitEthernet0/0/4,並在接口上使能MPLS。

[ASBR-PE1] interface gigabitethernet 0/0/4

[ASBR-PE1-GigabitEthernet0/0/4] ip address 11.0.0.2 255.0.0.0

[ASBR-PE1-GigabitEthernet0/0/4] mpls enable

[ASBR-PE1-GigabitEthernet0/0/4] quit

# 創建Loopback0接口,在接口上運行IS-IS。

[ASBR-PE1] interface loopback 0

[ASBR-PE1-LoopBack0] ip address 3.3.3.9 32

[ASBR-PE1-LoopBack0] isis enable 1

[ASBR-PE1-LoopBack0] quit

# 創建路由策略。

[ASBR-PE1] route-policy policy1 permit node 1

[ASBR-PE1-route-policy-policy1-1] apply mpls-label

[ASBR-PE1-route-policy-policy1-1] quit

# 在ASBR-PE 1上運行BGP,引入IS-IS進程1的路由。

[ASBR-PE1] bgp 100

[ASBR-PE1-bgp-default] address-family ipv4 unicast

[ASBR-PE1-bgp-default-ipv4] import-route isis 1

[ASBR-PE1-bgp-default-ipv4] quit

# 對向EBGP對等體11.0.0.1發布的路由應用已配置的路由策略policy1。

[ASBR-PE1-bgp-default] peer 11.0.0.1 as-number 600

[ASBR-PE1-bgp-default] address-family ipv4 unicast

[ASBR-PE1-bgp-default-ipv4] peer 11.0.0.1 enable

[ASBR-PE1-bgp-default-ipv4] peer 11.0.0.1 route-policy policy1 export

# 向EBGP對等體11.0.0.1發布標簽路由及從11.0.0.1接收標簽路由的能力。

[ASBR-PE1-bgp-default-ipv4] peer 11.0.0.1 label-route-capability

[ASBR-PE1-bgp-default-ipv4] quit

[ASBR-PE1-bgp-default] quit

(4)     配置ASBR-PE 2

# 在ASBR-PE 2上運行IS-IS。

<ASBR-PE2> system-view

[ASBR-PE2] isis 1

[ASBR-PE2-isis-1] network-entity 10.0000.0000.0000.0003.00

# 引入BGP的路由。

[ASBR-PE2-isis-1] address-family ipv4 unicast

[ASBR-PE2-isis-1-ipv4] import-route bgp

[ASBR-PE2-isis-1-ipv4] quit

[ASBR-PE2-isis-1] quit

# 配置LSR ID,使能MPLS和LDP。

[ASBR-PE2] mpls lsr-id 4.4.4.9

[ASBR-PE2] mpls ldp

[ASBR-PE2-ldp] quit

# 配置接口GigabitEthernet0/0/5,在接口上運行IS-IS,並在接口上使能MPLS和LDP。

[ASBR-PE2] interface gigabitethernet 0/0/5

[ASBR-PE2-GigabitEthernet0/0/5] ip address 9.1.1.1 255.0.0.0

[ASBR-PE2-GigabitEthernet0/0/5] isis enable 1

[ASBR-PE2-GigabitEthernet0/0/5] mpls enable

[ASBR-PE2-GigabitEthernet0/0/5] mpls ldp enable

[ASBR-PE2-GigabitEthernet0/0/5] quit

# 創建Loopback0接口,在接口上運行IS-IS。

[ASBR-PE2] interface loopback 0

[ASBR-PE2-LoopBack0] ip address 4.4.4.9 32

[ASBR-PE2-LoopBack0] isis enable 1

[ASBR-PE2-LoopBack0] quit

# 配置接口GigabitEthernet0/0/4,在接口上使能MPLS。

[ASBR-PE2] interface gigabitethernet 0/0/4

[ASBR-PE2-GigabitEthernet0/0/4] ip address 11.0.0.1 255.0.0.0

[ASBR-PE2-GigabitEthernet0/0/4] mpls enable

[ASBR-PE2-GigabitEthernet0/0/4] quit

# 創建路由策略。

[ASBR-PE2] route-policy policy1 permit node 1

[ASBR-PE2-route-policy-policy1-1] apply mpls-label

[ASBR-PE2-route-policy-policy1-1] quit

# 在ASBR-PE 2上運行BGP,引入IS-IS進程1的路由。

[ASBR-PE2] bgp 600

[ASBR-PE2-bgp-default] address-family ipv4 unicast

[ASBR-PE2-bgp-default-ipv4] import-route isis 1

[ASBR-PE2-bgp-default-ipv4] quit

# 對向EBGP對等體11.0.0.2發布的路由應用已配置的路由策略policy1。

[ASBR-PE2-bgp-default] peer 11.0.0.2 as-number 100

[ASBR-PE2-bgp-default] address-family ipv4 unicast

[ASBR-PE2-bgp-default-ipv4] peer 11.0.0.2 enable

[ASBR-PE2-bgp-default-ipv4] peer 11.0.0.2 route-policy policy1 export

# 向EBGP對等體11.0.0.2發布標簽路由及從11.0.0.2接收標簽路由的能力。

[ASBR-PE2-bgp-default-ipv4] peer 11.0.0.2 label-route-capability

[ASBR-PE2-bgp-default-ipv4] quit

[ASBR-PE2-bgp-default] quit

(5)     配置PE 2

# 在PE 2上運行IS-IS。

<PE2> system-view

[PE2] isis 1

[PE2-isis-1] network-entity 10.0000.0000.0000.0004.00

[PE2-isis-1] quit

# 配置LSR ID,使能MPLS和LDP。

[PE2] mpls lsr-id 5.5.5.9

[PE2] mpls ldp

[PE2-ldp] quit

# 配置接口GigabitEthernet0/0/5,在接口上運行IS-IS,並使能MPLS和LDP。

[PE2] interface gigabitethernet 0/0/5

[PE2-GigabitEthernet0/0/5] ip address 9.1.1.2 255.0.0.0

[PE2-GigabitEthernet0/0/5] isis enable 1

[PE2-GigabitEthernet0/0/5] mpls enable

[PE2-GigabitEthernet0/0/5] mpls ldp enable

[PE2-GigabitEthernet0/0/5] quit

# 創建Loopback0接口,在接口上運行IS-IS。

[PE2] interface loopback 0

[PE2-LoopBack0] ip address 5.5.5.9 32

[PE2-LoopBack0] isis enable 1

[PE2-LoopBack0] quit

# 創建VPN實例,名稱為vpn1,為其配置RD和Route Target屬性。

[PE2] ip vpn-instance vpn1

[PE2-vpn-instance-vpn1] route-distinguisher 11:11

[PE2-vpn-instance-vpn1] vpn-target 1:1 2:2 3:3 import-extcommunity

[PE2-vpn-instance-vpn1] vpn-target 3:3 export-extcommunity

[PE2-vpn-instance-vpn1] quit

# 配置接口GigabitEthernet0/0/1與VPN實例vpn1綁定,並配置該接口的IP地址。

[PE2] interface gigabitethernet 0/0/1

[PE2-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[PE2-GigabitEthernet0/0/1] ip address 20.0.0.1 24

[PE2-GigabitEthernet0/0/1] quit

# 在PE 2上運行BGP。

[PE2] bgp 600

# 配置PE 2到EBGP對等體2.2.2.9的最大跳數為10。

[PE2-bgp-default] peer 2.2.2.9 as-number 100

[PE2-bgp-default] peer 2.2.2.9 connect-interface loopback 0

[PE2-bgp-default] peer 2.2.2.9 ebgp-max-hop 10

# 配置對等體2.2.2.9作為VPNv4對等體。

[PE2-bgp-default] address-family vpnv4

[PE2-bgp-default-vpnv4] peer 2.2.2.9 enable

[PE2-bgp-default-vpnv4] quit

# 配置PE 2與CE 2建立EBGP對等體,將學習到的BGP路由添加到VPN實例的路由表中。

[PE2-bgp-default] ip vpn-instance vpn1

[PE2-bgp-default-vpn1] peer 20.0.0.2 as-number 65002

[PE2-bgp-default-vpn1] address-family ipv4 unicast

[PE2-bgp-default-ipv4-vpn1] peer 20.0.0.2 enable

[PE2-bgp-default-ipv4-vpn1] quit

[PE2-bgp-default-vpn1] quit

[PE2-bgp-default] quit

(6)     配置CE 2

# 配置接口GigabitEthernet0/0/1的IP地址。

<CE2> system-view

[CE2] interface gigabitethernet 0/0/1

[CE2-GigabitEthernet0/0/1] ip address 20.0.0.2 24

[CE2-GigabitEthernet0/0/1] quit

# 配置CE 2與PE 2建立EBGP對等體,並引入VPN路由。

[CE2] bgp 65002

[CE2-bgp-default] peer 20.0.0.1 as-number 600

[CE2-bgp-default] address-family ipv4 unicast

[CE2-bgp-default-ipv4] peer 20.0.0.1 enable

[CE2-bgp-default-ipv4] import-route direct

[CE2-bgp-default-ipv4] quit

[CE2-bgp-default] quit

4. 驗證配置

# 配置完成後,在CE 1和CE 2上執行display ip routing-table命令可以查看到到達對方的路由,且CE 1和CE 2互相可以ping通。

 

1.28.8  配置運營商的運營商(相同AS)示例

1. 組網需求

二級運營商向自己的客戶提供MPLS L3VPN服務。

圖1-33中:

·     PE 1和PE 2是一級運營商骨幹網的PE設備;

·     CE 1和CE 2是二級運營商的設備,作為CE接入一級運營商的骨幹網;

·     PE 3和PE 4是二級運營商的設備,為二級運營商的客戶提供接入;

·     CE 3和CE 4是二級運營商的客戶;

·     一級運營商和二級運營商位於同一個AS。

運營商的運營商的配置關鍵在於理解兩類路由的交換過程,即:

·     二級運營商VPN內部路由在一級運營商骨幹網上的交換:一級運營商將二級運營商作為自己的CE接入;

·     二級運營商本身客戶的VPN路由在二級運營商PE設備間的交換:需要在二級運營商PE設備(PE 3和PE 4)間建立MP-IBGP對等體關係。

2. 組網圖

圖1-33 配置Carriers’ carriers(相同AS)組網圖

設備

接口

IP地址

設備

接口

IP地址

CE 3

GE0/0/1

100.1.1.1/24

CE 4

GE0/0/1

120.1.1.1/24

PE 3

Loop0

1.1.1.9/32

PE 4

Loop0

6.6.6.9/32

 

GE0/0/1

100.1.1.2/24

 

GE0/0/1

120.1.1.2/24

 

GE0/0/5

10.1.1.1/24

 

GE0/0/5

20.1.1.2/24

CE 1

Loop0

2.2.2.9/32

CE 2

Loop0

5.5.5.9/32

 

GE0/0/4

10.1.1.2/24

 

GE0/0/4

21.1.1.2/24

 

GE0/0/5

11.1.1.1/24

 

GE0/0/5

20.1.1.1/24

PE 1

Loop0

3.3.3.9/32

PE 2

Loop0

4.4.4.9/32

 

GE0/0/4

11.1.1.2/24

 

GE0/0/4

30.1.1.2/24

 

GE0/0/5

30.1.1.1/24

 

GE0/0/5

21.1.1.1/24

 

3. 配置步驟

(1)     配置一級運營商骨幹網的MPLS L3VPN,使用IS-IS作為骨幹網的IGP協議,PE 1和PE 2之間使能LDP,並建立MP-IBGP對等體關係

# 配置PE 1。

<PE1> system-view

[PE1] interface loopback 0

[PE1-LoopBack0] ip address 3.3.3.9 32

[PE1-LoopBack0] quit

[PE1] mpls lsr-id 3.3.3.9

[PE1] mpls ldp

[PE1-ldp] quit

[PE1] isis 1

[PE1-isis-1] network-entity 10.0000.0000.0000.0004.00

[PE1-isis-1] quit

[PE1] interface loopback 0

[PE1-LoopBack0] isis enable 1

[PE1-LoopBack0] quit

[PE1] interface gigabitethernet 0/0/5

[PE1-GigabitEthernet0/0/5] ip address 30.1.1.1 24

[PE1-GigabitEthernet0/0/5] isis enable 1

[PE1-GigabitEthernet0/0/5] mpls enable

[PE1-GigabitEthernet0/0/5] mpls ldp enable

[PE1-GigabitEthernet0/0/5] mpls ldp transport-address interface

[PE1-GigabitEthernet0/0/5] quit

[PE1] bgp 100

[PE1-bgp-default] peer 4.4.4.9 as-number 100

[PE1-bgp-default] peer 4.4.4.9 connect-interface loopback 0

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 4.4.4.9 enable

[PE1-bgp-default-vpnv4] quit

[PE1-bgp-default] quit

# PE 2的配置與PE 1類似,配置過程省略。

配置完成後,在PE 1或PE 2上執行display mpls ldp peer命令可以看到LDP會話建立成功,狀態為Operational;執行display bgp peer vpnv4命令可以看到BGP對等體關係已建立,並達到Established狀態;執行display isis peer命令可以看到IS-IS鄰居關係已建立,狀態為up。

(2)     配置二級運營商網絡:使用IS-IS作為IGP協議,PE 3和CE 1、PE 4和CE 2之間分別使能LDP

# 配置PE 3。

<PE3> system-view

[PE3] interface loopback 0

[PE3-LoopBack0] ip address 1.1.1.9 32

[PE3-LoopBack0] quit

[PE3] mpls lsr-id 1.1.1.9

[PE3] mpls ldp

[PE3-ldp] quit

[PE3] isis 2

[PE3-isis-2] network-entity 10.0000.0000.0000.0001.00

[PE3-isis-2] quit

[PE3] interface loopback 0

[PE3-LoopBack0] isis enable 2

[PE3-LoopBack0] quit

[PE3] interface gigabitethernet 0/0/5

[PE3-GigabitEthernet0/0/5] ip address 10.1.1.1 24

[PE3-GigabitEthernet0/0/5] isis enable 2

[PE3-GigabitEthernet0/0/5] mpls enable

[PE3-GigabitEthernet0/0/5] mpls ldp enable

[PE3-GigabitEthernet0/0/5] mpls ldp transport-address interface

[PE3-GigabitEthernet0/0/5] quit

# 配置CE 1。

<CE1> system-view

[CE1] interface loopback 0

[CE1-LoopBack0] ip address 2.2.2.9 32

[CE1-LoopBack0] quit

[CE1] mpls lsr-id 2.2.2.9

[CE1] mpls ldp

[CE1-ldp] quit

[CE1] isis 2

[CE1-isis-2] network-entity 10.0000.0000.0000.0002.00

[CE1-isis-2] quit

[CE1] interface loopback 0

[CE1-LoopBack0] isis enable 2

[CE1-LoopBack0] quit

[CE1] interface gigabitethernet 0/0/4

[CE1-GigabitEthernet0/0/4] ip address 10.1.1.2 24

[CE1-GigabitEthernet0/0/4] isis enable 2

[CE1-GigabitEthernet0/0/4] mpls enable

[CE1-GigabitEthernet0/0/4] mpls ldp enable

[CE1-GigabitEthernet0/0/4] mpls ldp transport-address interface

[CE1-GigabitEthernet0/0/4] quit

配置完成後,PE 3和CE 1之間應能建立LDP和IS-IS鄰居關係。

# PE 4和CE 2之間的配置與PE 3和CE 1之間的配置類似,配置過程省略。

(3)     配置二級運營商CE接入到一級運營商的PE,並在PE上配置IS-IS引入BGP路由、BGP引入IS-IS路由

# 配置PE1。

[PE1] ip vpn-instance vpn1

[PE1-vpn-instance-vpn1] route-distinguisher 200:1

[PE1-vpn-instance-vpn1] vpn-target 1:1

[PE1-vpn-instance-vpn1] quit

[PE1] mpls ldp

[PE1-ldp] vpn-instance vpn1

[PE1-ldp-vpn-instance-vpn1] quit

[PE1-ldp] quit

[PE1] isis 2 vpn-instance vpn1

[PE1-isis-2] network-entity 10.0000.0000.0000.0003.00

[PE1-isis-2] address-family ipv4

[PE1-isis-2-ipv4] import-route bgp

[PE1-isis-2-ipv4] quit

[PE1-isis-2] quit

[PE1] interface gigabitethernet 0/0/4

[PE1-GigabitEthernet0/0/4] ip binding vpn-instance vpn1

[PE1-GigabitEthernet0/0/4] ip address 11.1.1.2 24

[PE1-GigabitEthernet0/0/4] isis enable 2

[PE1-GigabitEthernet0/0/4] mpls enable

[PE1-GigabitEthernet0/0/4] mpls ldp enable

[PE1-GigabitEthernet0/0/4] mpls ldp transport-address interface

[PE1-GigabitEthernet0/0/4] quit

[PE1] bgp 100

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] import isis 2

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

[PE1-bgp-default] quit

# 配置CE1。

[CE1] interface gigabitethernet 0/0/5

[CE1-GigabitEthernet0/0/5] ip address 11.1.1.1 24

[CE1-GigabitEthernet0/0/5] isis enable 2

[CE1-GigabitEthernet0/0/5] mpls enable

[CE1-GigabitEthernet0/0/5] mpls ldp enable

[CE1-GigabitEthernet0/0/5] mpls ldp transport-address interface

[CE1-GigabitEthernet0/0/5] quit

配置完成後,PE 1和CE 1之間應能建立LDP和IS-IS鄰居關係。

# PE 2和CE 2之間的配置與PE 1和CE 1之間的配置類似,配置過程省略。

(4)     配置二級運營商的客戶接入PE

# 配置CE 3。

<CE3> system-view

[CE3] interface gigabitethernet 0/0/1

[CE3-GigabitEthernet0/0/1] ip address 100.1.1.1 24

[CE3-GigabitEthernet0/0/1] quit

[CE3] bgp 65410

[CE3-bgp-default] peer 100.1.1.2 as-number 100

[CE3-bgp-default] address-family ipv4 unicast

[CE3-bgp-default-ipv4] peer 100.1.1.2 enable

[CE3-bgp-default-ipv4] import-route direct

[CE3-bgp-default-ipv4] quit

[CE3-bgp-default] quit

# 配置PE 3。

[PE3] ip vpn-instance vpn1

[PE3-vpn-instance-vpn1] route-distinguisher 100:1

[PE3-vpn-instance-vpn1] vpn-target 1:1

[PE3-vpn-instance-vpn1] quit

[PE3] interface gigabitethernet 0/0/1

[PE3-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[PE3-GigabitEthernet0/0/1] ip address 100.1.1.2 24

[PE3-GigabitEthernet0/0/1] quit

[PE3] bgp 100

[PE3-bgp-default] ip vpn-instance vpn1

[PE3-bgp-default-vpn1] peer 100.1.1.1 as-number 65410

[PE3-bgp-default-vpn1] address-family ipv4 unicast

[PE3-bgp-default-ipv4-vpn1] peer 100.1.1.1 enable

[PE3-bgp-default-ipv4-vpn1] quit

[PE3-bgp-default-vpn1] quit

[PE3-bgp-default] quit

# PE 4和CE 4之間的配置與PE 3和CE 3之間的配置類似,配置過程省略。

(5)     在二級運營商的PE之間建立MP-IBGP對等體關係,交換二級運營商的客戶的VPN路由

# 配置PE 3。

[PE3] bgp 100

[PE3-bgp-default] peer 6.6.6.9 as-number 100

[PE3-bgp-default] peer 6.6.6.9 connect-interface loopback 0

[PE3-bgp-default] address-family vpnv4

[PE3-bgp-default-vpnv4] peer 6.6.6.9 enable

[PE3-bgp-default-vpnv4] quit

[PE3-bgp-default] quit

# PE 4的配置與PE 3類似,配置過程省略。

4. 驗證配置

# 在PE 1和PE 2上執行display ip routing-table命令,可以看到PE 1和PE 2的公網路由表中隻有一級運營商網絡的路由。以PE 1為例:

[PE1] display ip routing-table

 

Destinations : 14        Routes : 14

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

3.3.3.9/32         Direct  0   0           127.0.0.1       InLoop0

4.4.4.9/32         IS_L1   15  10          30.1.1.2        GE0/0/5

30.1.1.0/24        Direct  0   0           30.1.1.1        GE0/0/5

30.1.1.0/32        Direct  0   0           30.1.1.1        GE0/0/5

30.1.1.1/32        Direct  0   0           127.0.0.1       InLoop0

30.1.1.255/32      Direct  0   0           30.1.1.1        GE0/0/5

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0

224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

# 在PE 1和PE 2上執行display ip routing-table vpn-instance命令,可以看到VPN路由表中有二級運營商網絡的內部路由,但沒有二級運營商維護的VPN路由。以PE 1為例:

[PE1] display ip routing-table vpn-instance vpn1

 

Destinations : 18        Routes : 18

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

1.1.1.9/32         IS_L1   15  20          11.1.1.1        GE0/0/4

2.2.2.9/32         IS_L1   15  10          11.1.1.1        GE0/0/4

5.5.5.9/32         BGP     255 10          4.4.4.9         GE0/0/5

6.6.6.9/32         BGP     255 20          4.4.4.9         GE0/0/5

10.1.1.0/24        IS_L1   15  20          11.1.1.1        GE0/0/4

11.1.1.0/24        Direct  0   0           11.1.1.2        GE0/0/4

11.1.1.0/32        Direct  0   0           11.1.1.2        GE0/0/4

11.1.1.2/32        Direct  0   0           127.0.0.1       InLoop0

11.1.1.255/32      Direct  0   0           11.1.1.2        GE0/0/4

20.1.1.0/24        BGP     255 20          4.4.4.9         GE0/0/5

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0

224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

# 在CE 1和CE 2上執行display ip routing-table命令,可以看到公網路由表中有二級運營商網絡的內部路由,但沒有二級運營商維護的VPN路由。以CE 1為例:

[CE1] display ip routing-table

 

Destinations : 21        Routes : 21

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

1.1.1.9/32         IS_L1   15  10          10.1.1.1        GE0/0/4

2.2.2.9/32         Direct  0   0           127.0.0.1       InLoop0

5.5.5.9/32         IS_L2   15  74          11.1.1.2        GE0/0/5

6.6.6.9/32         IS_L2   15  74          11.1.1.2        GE0/0/5

10.1.1.0/24        Direct  0   0           10.1.1.2        GE0/0/4

10.1.1.0/32        Direct  0   0           10.1.1.2        GE0/0/4

10.1.1.2/32        Direct  0   0           127.0.0.1       InLoop0

10.1.1.255/32      Direct  0   0           10.1.1.2        GE0/0/4

11.1.1.0/24        Direct  0   0           11.1.1.1        GE0/0/5

11.1.1.0/32        Direct  0   0           11.1.1.1        GE0/0/5

11.1.1.1/32        Direct  0   0           127.0.0.1       InLoop0

11.1.1.255/32      Direct  0   0           11.1.1.1        GE0/0/5

20.1.1.0/24        IS_L2   15  74          11.1.1.2        GE0/0/5

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0

224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

# 在PE 3和PE 4上執行display ip routing-table命令,可以看到公網路由表中有二級運營商網絡的內部路由。以PE 3為例:

[PE3] display ip routing-table

 

Destinations : 18        Routes : 18

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

1.1.1.9/32         Direct  0   0           127.0.0.1       InLoop0

2.2.2.9/32         IS_L1   15  10          10.1.1.2        GE0/0/5

5.5.5.9/32         IS_L2   15  84          10.1.1.2        GE0/0/5

6.6.6.9/32         IS_L2   15  84          10.1.1.2        GE0/0/5

10.1.1.0/24        Direct  0   0           10.1.1.1        GE0/0/5

10.1.1.0/32        Direct  0   0           10.1.1.1        GE0/0/5

10.1.1.1/32        Direct  0   0           127.0.0.1       InLoop0

10.1.1.255/32      Direct  0   0           10.1.1.1        GE0/0/5

11.1.1.0/24        IS_L1   15  20          10.1.1.2        GE0/0/5

20.1.1.0/24        IS_L2   15  84          10.1.1.2        GE0/0/5

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0

224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

# 在PE 3和PE 4上執行display ip routing-table vpn-instance命令,可以看到VPN路由表中有遠端VPN客戶的路由。以PE 3為例:

[PE3] display ip routing-table vpn-instance vpn1

 

Destinations : 13        Routes : 13

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

100.1.1.0/24       Direct  0   0           100.1.1.2       GE0/0/1

100.1.1.0/32       Direct  0   0           100.1.1.2       GE0/0/1

100.1.1.2/32       Direct  0   0           127.0.0.1       InLoop0

100.1.1.255/32     Direct  0   0           100.1.1.2       GE0/0/1

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

120.1.1.0/24       BGP     255 0           6.6.6.9         GE0/0/5

224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0

224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

# PE 3和PE 4可以相互Ping通。

# CE 3和CE 4可以互相Ping通。

1.28.9  配置運營商的運營商(不同AS)示例

1. 組網需求

二級運營商向自己的客戶提供MPLS L3VPN服務。

圖1-34中:

·     PE 1和PE 2是一級運營商骨幹網的PE設備;

·     CE 1和CE 2是二級運營商的設備,作為CE接入一級運營商的骨幹網;

·     PE 3和PE 4是二級運營商的設備,為二級運營商的客戶提供接入;

·     CE 3和CE 4是二級運營商的客戶;

·     一級運營商和二級運營商位於不同的AS。

運營商的運營商的配置關鍵在於理解兩類路由的交換過程,即:

·     二級運營商VPN內部路由在一級運營商骨幹網上的交換:一級運營商將二級運營商作為自己的CE接入;

·     二級運營商本身客戶的VPN路由在二級運營商PE設備間的交換:需要在二級運營商PE設備(PE 3和PE 4)間建立MP-EBGP對等體關係。

2. 組網圖

圖1-34 配置Carriers’ carriers(不同AS)組網圖

設備

接口

IP地址

設備

接口

IP地址

CE 3

GE0/0/1

100.1.1.1/24

CE 4

GE0/0/1

120.1.1.1/24

PE 3

Loop0

1.1.1.9/32

PE 4

Loop0

6.6.6.9/32

 

GE0/0/1

100.1.1.2/24

 

GE0/0/1

120.1.1.2/24

 

GE0/0/5

10.1.1.1/24

 

GE0/0/5

20.1.1.2/24

CE 1

Loop0

2.2.2.9/32

CE 2

Loop0

5.5.5.9/32

 

GE0/0/4

10.1.1.2/24

 

GE0/0/4

21.1.1.2/24

 

GE0/0/5

11.1.1.1/24

 

GE0/0/5

20.1.1.1/24

PE 1

Loop0

3.3.3.9/32

PE 2

Loop0

4.4.4.9/32

 

GE0/0/4

11.1.1.2/24

 

GE0/0/4

30.1.1.2/24

 

GE0/0/5

30.1.1.1/24

 

GE0/0/5

21.1.1.1/24

 

3. 配置步驟

(1)     配置一級運營商骨幹網的MPLS L3VPN,使用IS-IS作為骨幹網的IGP協議,PE 1和PE 2之間使能LDP,並建立MP-IBGP對等體關係

# 配置PE 1。

<PE1> system-view

[PE1] interface loopback 0

[PE1-LoopBack0] ip address 3.3.3.9 32

[PE1-LoopBack0] quit

[PE1] mpls lsr-id 3.3.3.9

[PE1] mpls ldp

[PE1-ldp] quit

[PE1] isis 1

[PE1-isis-1] network-entity 10.0000.0000.0000.0004.00

[PE1-isis-1] quit

[PE1] interface loopback 0

[PE1-LoopBack0] isis enable 1

[PE1-LoopBack0] quit

[PE1] interface gigabitethernet 0/0/5

[PE1-GigabitEthernet0/0/5] ip address 30.1.1.1 24

[PE1-GigabitEthernet0/0/5] isis enable 1

[PE1-GigabitEthernet0/0/5] mpls enable

[PE1-GigabitEthernet0/0/5] mpls ldp enable

[PE1-GigabitEthernet0/0/5] mpls ldp transport-address interface

[PE1-GigabitEthernet0/0/5] quit

[PE1] bgp 200

[PE1-bgp-default] peer 4.4.4.9 as-number 200

[PE1-bgp-default] peer 4.4.4.9 connect-interface loopback 0

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 4.4.4.9 enable

[PE1-bgp-default-vpnv4] quit

[PE1-bgp-default] quit

# PE 2的配置與PE 1類似,配置過程省略。

配置完成後,在PE 1或PE 2上執行display mpls ldp peer命令可以看到LDP會話建立成功,狀態為Operational;執行display bgp peer vpnv4命令可以看到BGP對等體關係已建立,並達到Established狀態;執行display isis peer命令可以看到IS-IS鄰居關係已建立,狀態為up。

(2)     配置二級運營商網絡:使用IS-IS作為IGP協議,PE 3和CE 1、PE 4和CE 2之間分別使能LDP

# 配置PE 3。

<PE3> system-view

[PE3] interface loopback 0

[PE3-LoopBack0] ip address 1.1.1.9 32

[PE3-LoopBack0] quit

[PE3] mpls lsr-id 1.1.1.9

[PE3] mpls ldp

[PE3-ldp] quit

[PE3] isis 2

[PE3-isis-2] network-entity 10.0000.0000.0000.0001.00

[PE3-isis-2] quit

[PE3] interface loopback 0

[PE3-LoopBack0] isis enable 2

[PE3-LoopBack0] quit

[PE3] interface gigabitethernet 0/0/5

[PE3-GigabitEthernet0/0/5] ip address 10.1.1.1 24

[PE3-GigabitEthernet0/0/5] isis enable 2

[PE3-GigabitEthernet0/0/5] mpls enable

[PE3-GigabitEthernet0/0/5] mpls ldp enable

[PE3-GigabitEthernet0/0/5] mpls ldp transport-address interface

[PE3-GigabitEthernet0/0/5] quit

# 配置CE 1。

<CE1> system-view

[CE1] interface loopback 0

[CE1-LoopBack0] ip address 2.2.2.9 32

[CE1-LoopBack0] quit

[CE1] mpls lsr-id 2.2.2.9

[CE1] mpls ldp

[CE1-ldp] import bgp

[CE1-ldp] quit

[CE1] isis 2

[CE1-isis-2] network-entity 10.0000.0000.0000.0002.00

[CE1-isis-2] address-family ipv4

[CE1-isis-2-ipv4] import-route bgp

[CE1-isis-2-ipv4] quit

[CE1-isis-2] quit

[CE1] interface loopback 0

[CE1-LoopBack0] isis enable 2

[CE1-LoopBack0] quit

[CE1] interface gigabitethernet 0/0/4

[CE1-GigabitEthernet0/0/4] ip address 10.1.1.2 24

[CE1-GigabitEthernet0/0/4] isis enable 2

[CE1-GigabitEthernet0/0/4] mpls enable

[CE1-GigabitEthernet0/0/4] mpls ldp enable

[CE1-GigabitEthernet0/0/4] mpls ldp transport-address interface

[CE1-GigabitEthernet0/0/4] quit

配置完成後,PE 3和CE 1之間應能建立LDP和IS-IS鄰居關係。

# PE 4和CE 2之間的配置與PE 3和CE 1之間的配置類似,配置過程省略。

(3)     配置二級運營商CE接入到一級運營商的PE

# 配置PE 1。

[PE1] ip vpn-instance vpn1

[PE1-vpn-instance-vpn1] route-distinguisher 200:1

[PE1-vpn-instance-vpn1] vpn-target 1:1

[PE1-vpn-instance-vpn1] quit

[PE1] interface gigabitethernet 0/0/4

[PE1-GigabitEthernet0/0/4] ip binding vpn-instance vpn1

[PE1-GigabitEthernet0/0/4] ip address 11.1.1.2 24

[PE1-GigabitEthernet0/0/4] mpls enable

[PE1-GigabitEthernet0/0/4] quit

[PE1] bgp 200

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] peer 11.1.1.1 as-number 100

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] peer 11.1.1.1 enable

[PE1-bgp-default-ipv4-vpn1] peer 11.1.1.1 label-route-capability

[PE1-bgp-default-ipv4-vpn1] peer 11.1.1.1 route-policy csc export

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

[PE1-bgp-default] quit

[PE1] route-policy csc permit node 0

[PE1-route-policy-csc-0] apply mpls-label

[PE1-route-policy-csc-0] quit

# 配置CE 1。

[CE1] interface gigabitethernet 0/0/5

[CE1-GigabitEthernet0/0/5] ip address 11.1.1.1 24

[CE1-GigabitEthernet0/0/5] mpls enable

[CE1-GigabitEthernet0/0/5] quit

[CE1] bgp 100

[CE1-bgp-default] peer 11.1.1.2 as-number 200

[CE1-bgp-default] address-family ipv4 unicast

[CE1-bgp-default-ipv4] peer 11.1.1.2 enable

[CE1-bgp-default-ipv4] peer 11.1.1.2 label-route-capability

[CE1-bgp-default-ipv4] peer 11.1.1.2 route-policy csc export

[CE1-bgp-default-ipv4] import isis 2

[CE1-bgp-default-ipv4] quit

[CE1-bgp-default] quit

[CE1] route-policy csc permit node 0

[CE1-route-policy-csc-0] apply mpls-label

[CE1-route-policy-csc-0] quit

配置完成後,PE 1和CE 1之間應能建立BGP會話,且可以通過BGP交互帶標簽的IPv4單播路由。

# PE 2和CE 2之間的配置與PE 1和CE 1之間的配置類似,配置過程省略。

(4)     配置二級運營商的客戶接入PE

# 配置CE 3。

<CE3> system-view

[CE3] interface gigabitethernet 0/0/1

[CE3-GigabitEthernet0/0/1] ip address 100.1.1.1 24

[CE3-GigabitEthernet0/0/1] quit

[CE3] bgp 65410

[CE3-bgp-default] peer 100.1.1.2 as-number 100

[CE3-bgp-default] address-family ipv4 unicast

[CE3-bgp-default-ipv4] peer 100.1.1.2 enable

[CE3-bgp-default-ipv4] import-route direct

[CE3-bgp-default-ipv4] quit

[CE3-bgp-default] quit

# 配置PE 3。

[PE3] ip vpn-instance vpn1

[PE3-vpn-instance-vpn1] route-distinguisher 100:1

[PE3-vpn-instance-vpn1] vpn-target 1:1

[PE3-vpn-instance-vpn1] quit

[PE3] interface gigabitethernet 0/0/1

[PE3-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[PE3-GigabitEthernet0/0/1] ip address 100.1.1.2 24

[PE3-GigabitEthernet0/0/1] quit

[PE3] bgp 100

[PE3-bgp-default] ip vpn-instance vpn1

[PE3-bgp-default-vpn1] peer 100.1.1.1 as-number 65410

[PE3-bgp-default-vpn1] address-family ipv4 unicast

[PE3-bgp-default-ipv4-vpn1] peer 100.1.1.1 enable

[PE3-bgp-default-ipv4-vpn1] quit

[PE3-bgp-default-vpn1] quit

[PE3-bgp-default] quit

# PE 4和CE 4之間的配置與PE 3和CE 3之間的配置類似,配置過程省略。

(5)     在二級運營商的PE之間建立MP-EBGP對等體關係,交換二級運營商的客戶的VPN路由

# 配置PE 3。

[PE3] bgp 100

[PE3-bgp-default] peer 6.6.6.9 as-number 300

[PE3-bgp-default] peer 6.6.6.9 connect-interface loopback 0

[PE3-bgp-default] peer 6.6.6.9 ebgp-max-hop 10

[PE3-bgp-default] address-family vpnv4

[PE3-bgp-default-vpnv4] peer 6.6.6.9 enable

[PE3-bgp-default-vpnv4] quit

[PE3-bgp-default] quit

# PE 4的配置與PE 3類似,配置過程省略。

4. 驗證配置

# 在PE 1和PE 2上執行display ip routing-table命令,可以看到PE 1和PE 2的公網路由表中隻有一級運營商網絡的路由。以PE 1為例:

[PE1] display ip routing-table

 

Destinations : 14        Routes : 14

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

3.3.3.9/32         Direct  0   0           127.0.0.1       InLoop0

4.4.4.9/32         IS_L1   15  10          30.1.1.2        GE0/0/5

30.1.1.0/24        Direct  0   0           30.1.1.1        GE0/0/5

30.1.1.0/32        Direct  0   0           30.1.1.1        GE0/0/5

30.1.1.1/32        Direct  0   0           127.0.0.1       InLoop0

30.1.1.255/32      Direct  0   0           30.1.1.1        GE0/0/5

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0

224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

# 在PE 1和PE 2上執行display ip routing-table vpn-instance命令,可以看到VPN路由表中有二級運營商網絡的內部路由,但沒有二級運營商維護的VPN路由。以PE 1為例:

[PE1] display ip routing-table vpn-instance vpn1

 

Destinations : 14        Routes : 14

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

1.1.1.9/32         BGP     255 10          11.1.1.1        GE0/0/4

6.6.6.9/32         BGP     255 10          4.4.4.9         GE0/0/5

11.1.1.0/24        Direct  0   0           11.1.1.2        GE0/0/4

11.1.1.0/32        Direct  0   0           11.1.1.2        GE0/0/4

11.1.1.2/32        Direct  0   0           127.0.0.1       InLoop0

11.1.1.255/32      Direct  0   0           11.1.1.2        GE0/0/4

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0

224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

# 在CE 1和CE 2上執行display ip routing-table命令,可以看到公網路由表中有二級運營商網絡的內部路由,但沒有二級運營商維護的VPN路由。以CE 1為例:

[CE1] display ip routing-table

 

Destinations : 19        Routes : 19

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

1.1.1.9/32         IS_L1   15  10          10.1.1.1        GE0/0/4

2.2.2.9/32         Direct  0   0           127.0.0.1       InLoop0

6.6.6.9/32         BGP     255 0           11.1.1.2        GE0/0/5

10.1.1.0/24        Direct  0   0           10.1.1.2        GE0/0/4

10.1.1.0/32        Direct  0   0           10.1.1.2        GE0/0/4

10.1.1.2/32        Direct  0   0           127.0.0.1       InLoop0

10.1.1.255/32      Direct  0   0           10.1.1.2        GE0/0/4

11.1.1.0/24        Direct  0   0           11.1.1.1        GE0/0/5

11.1.1.0/32        Direct  0   0           11.1.1.1        GE0/0/5

11.1.1.1/32        Direct  0   0           127.0.0.1       InLoop0

11.1.1.255/32      Direct  0   0           11.1.1.1        GE0/0/5

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0

224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

# 在PE 3和PE 4上執行display ip routing-table命令,可以看到公網路由表中有二級運營商網絡的內部路由。以PE 3為例:

[PE3] display ip routing-table

 

Destinations : 15        Routes : 15

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

1.1.1.9/32         Direct  0   0           127.0.0.1       InLoop0

2.2.2.9/32         IS_L1   15  10          10.1.1.2        GE0/0/5

6.6.6.9/32         IS_L2   15  74          10.1.1.2        GE0/0/5

10.1.1.0/24        Direct  0   0           10.1.1.1        GE0/0/5

10.1.1.0/32        Direct  0   0           10.1.1.1        GE0/0/5

10.1.1.1/32        Direct  0   0           127.0.0.1       InLoop0

10.1.1.255/32      Direct  0   0           10.1.1.1        GE0/0/5

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0

224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

# 在PE 3和PE 4上執行display ip routing-table vpn-instance命令,可以看到VPN路由表中有遠端VPN客戶的路由。以PE 3為例:

[PE3] display ip routing-table vpn-instance vpn1

 

Destinations : 13        Routes : 13

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

100.1.1.0/24       Direct  0   0           100.1.1.2       GE0/0/1

100.1.1.0/32       Direct  0   0           100.1.1.2       GE0/0/1

100.1.1.2/32       Direct  0   0           127.0.0.1       InLoop0

100.1.1.255/32     Direct  0   0           100.1.1.2       GE0/0/1

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

120.1.1.0/24       BGP     255 0           6.6.6.9         GE0/0/5

224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0

224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

# PE 3和PE 4可以相互Ping通。

# CE 3和CE 4可以互相Ping通。

1.28.10  配置嵌套VPN示例

1. 組網需求

運營商向用戶提供嵌套VPN服務。如圖1-35所示:

·     PE 1和PE 2是運營商骨幹網的PE設備,支持嵌套VPN功能;

·     CE 1和CE 2是運營商CE設備,接入運營商的骨幹網,該CE設備支持發送VPNv4路由;

·     PE 3和PE 4是用戶網絡內部的PE設備,支持MPLS L3VPN;

·     CE 3、CE 4、CE 5和CE 6是用戶網絡內部子VPN的CE設備。

配置嵌套VPN的關鍵在於理解子VPN路由在運營商PE設備上的處理過程:

·     運營商PE(PE 1和PE 2)收到運營商CE(CE 1和CE 2)發送來的VPNv4路由時,需要將該VPNv4路由的RD更換為運營商CE所處VPN的RD,同時將運營商CE所處VPN的Export Target添加到路由的擴展團體屬性列表中,然後再按照一般的VPNv4路由發送出去;

·     為了實現用戶網絡內部子VPN的路由在用戶PE和運營商PE間交換,需要在運營商PE和運營商CE間建立MP-EBGP對等體關係。

2. 組網圖

圖1-35 嵌套VPN組網圖

設備

接口

IP地址

設備

接口

IP地址

CE 1

Loop0

2.2.2.9/32

CE 2

Loop0

5.5.5.9/32

 

GE0/0/4

10.1.1.2/24

 

GE0/0/4

21.1.1.2/24

 

GE0/0/5

11.1.1.1/24

 

GE0/0/5

20.1.1.1/24

CE 3

GE0/0/1

100.1.1.1/24

CE 4

GE0/0/1

120.1.1.1/24

CE 5

GE0/0/1

110.1.1.1/24

CE 6

GE0/0/1

130.1.1.1/24

PE 1

Loop0

3.3.3.9/32

PE 2

Loop0

4.4.4.9/32

 

GE0/0/4

11.1.1.2/24

 

GE0/0/4

30.1.1.2/24

 

GE0/0/5

30.1.1.1/24

 

GE0/0/5

21.1.1.1/24

PE 3

Loop0

1.1.1.9/32

PE 4

Loop0

6.6.6.9/32

 

GE0/0/1

100.1.1.2/24

 

GE0/0/1

120.1.1.2/24

 

GE0/0/2

110.1.1.2/24

 

GE0/0/2

130.1.1.2/24

 

GE0/0/5

10.1.1.1/24

 

GE0/0/5

20.1.1.2/24

 

3. 配置步驟

(1)     配置運營商骨幹網的MPLS L3VPN,使用IS-IS作為骨幹網的IGP協議,PE 1和PE 2之間使能LDP,並建立MP-IBGP對等體關係

# 配置PE 1。

<PE1> system-view

[PE1] interface loopback 0

[PE1-LoopBack0] ip address 3.3.3.9 32

[PE1-LoopBack0] quit

[PE1] mpls lsr-id 3.3.3.9

[PE1] mpls ldp

[PE1-ldp] quit

[PE1] isis 1

[PE1-isis-1] network-entity 10.0000.0000.0000.0004.00

[PE1-isis-1] quit

[PE1] interface loopback 0

[PE1-LoopBack0] isis enable 1

[PE1-LoopBack0] quit

[PE1] interface gigabitethernet 0/0/5

[PE1-GigabitEthernet0/0/5] ip address 30.1.1.1 24

[PE1-GigabitEthernet0/0/5] isis enable 1

[PE1-GigabitEthernet0/0/5] mpls enable

[PE1-GigabitEthernet0/0/5] mpls ldp enable

[PE1-GigabitEthernet0/0/5] mpls ldp transport-address interface

[PE1-GigabitEthernet0/0/5] quit

[PE1] bgp 100

[PE1-bgp-default] peer 4.4.4.9 as-number 100

[PE1-bgp-default] peer 4.4.4.9 connect-interface loopback 0

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 4.4.4.9 enable

[PE1-bgp-default-vpnv4] quit

[PE1-bgp-default] quit

# PE 2的配置與PE 1類似,配置過程略。

配置完成後,在PE 1或PE 2上執行display mpls ldp peer命令可以看到LDP會話建立成功,LDP會話狀態為Operational;執行display bgp peer vpnv4命令可以看到BGP對等體關係已建立,並達到Established狀態;執行display isis peer命令可以看到IS-IS鄰居關係已建立,狀態為up。

(2)     配置用戶網絡:使用IS-IS作為IGP協議,PE 3和CE 1、PE 4和CE 2之間分別使能LDP

# 配置PE 3。

<PE3> system-view

[PE3] interface loopback 0

[PE3-LoopBack0] ip address 1.1.1.9 32

[PE3-LoopBack0] quit

[PE3] mpls lsr-id 1.1.1.9

[PE3] mpls ldp

[PE3-ldp] quit

[PE3] isis 2

[PE3-isis-2] network-entity 10.0000.0000.0000.0001.00

[PE3-isis-2] quit

[PE3] interface loopback 0

[PE3-LoopBack0] isis enable 2

[PE3-LoopBack0] quit

[PE3] interface gigabitethernet 0/0/5

[PE3-GigabitEthernet0/0/5] ip address 10.1.1.1 24

[PE3-GigabitEthernet0/0/5] isis enable 2

[PE3-GigabitEthernet0/0/5] mpls enable

[PE3-GigabitEthernet0/0/5] mpls ldp enable

[PE3-GigabitEthernet0/0/5] quit

# 配置CE 1。

<CE1> system-view

[CE1] interface loopback 0

[CE1-LoopBack0] ip address 2.2.2.9 32

[CE1-LoopBack0] quit

[CE1] mpls lsr-id 2.2.2.9

[CE1] mpls ldp

[CE1-ldp] quit

[CE1] isis 2

[CE1-isis-2] network-entity 10.0000.0000.0000.0002.00

[CE1-isis-2] quit

[CE1] interface loopback 0

[CE1-LoopBack0] isis enable 2

[CE1-LoopBack0] quit

[CE1] interface gigabitethernet 0/0/4

[CE1-GigabitEthernet0/0/4] ip address 10.1.1.2 24

[CE1-GigabitEthernet0/0/4] isis enable 2

[CE1-GigabitEthernet0/0/4] mpls enable

[CE1-GigabitEthernet0/0/4] mpls ldp enable

[CE1-GigabitEthernet0/0/4] quit

配置完成後,PE 3和CE 1之間可以建立LDP和IS-IS鄰居關係。

# PE 4和CE 2之間的配置與PE 3和CE 1之間的配置類似,配置過程略。

(3)     配置運營商CE接入到運營商的PE

# 配置PE 1。

[PE1] ip vpn-instance vpn1

[PE1-vpn-instance-vpn1] route-distinguisher 200:1

[PE1-vpn-instance-vpn1] vpn-target 1:1

[PE1-vpn-instance-vpn1] quit

[PE1] interface gigabitethernet 0/0/4

[PE1-GigabitEthernet0/0/4] ip binding vpn-instance vpn1

[PE1-GigabitEthernet0/0/4] ip address 11.1.1.2 24

[PE1-GigabitEthernet0/0/4] mpls enable

[PE1-GigabitEthernet0/0/4] quit

[PE1] bgp 100

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] peer 11.1.1.1 as-number 200

[PE1-bgp-default-vpn1] address-family ipv4

[PE1-bgp-default-ipv4-vpn1] peer 11.1.1.1 enable

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

[PE1-bgp-default] quit

# 配置CE 1。

[CE1] interface gigabitethernet 0/0/5

[CE1-GigabitEthernet0/0/5] ip address 11.1.1.1 24

[CE1-GigabitEthernet0/0/5] mpls enable

[CE1-GigabitEthernet0/0/5] quit

[CE1] bgp 200

[CE1-bgp-default] peer 11.1.1.2 as-number 100

[CE1-bgp-default] address-family ipv4

[CE1-bgp-default-ipv4] peer 11.1.1.2 enable

[CE1-bgp-default-ipv4] quit

[CE1-bgp-default] quit

# PE 2和CE 2之間的配置與PE 1和CE 1之間的配置類似,配置過程省略。

(4)     配置用戶CE接入用戶網絡的PE

# 配置CE 3。

<CE3> system-view

[CE3] interface gigabitethernet 0/0/1

[CE3-GigabitEthernet0/0/1] ip address 100.1.1.1 24

[CE3-GigabitEthernet0/0/1] quit

[CE3] bgp 65410

[CE3-bgp-default] peer 100.1.1.2 as-number 200

[CE3-bgp-default] address-family ipv4 unicast

[CE3-bgp-default-ipv4] peer 100.1.1.2 enable

[CE3-bgp-default-ipv4] import-route direct

[CE3-bgp-default-ipv4] quit

[CE3-bgp-default] quit

# 配置CE 5。

<CE5> system-view

[CE5] interface gigabitethernet 0/0/1

[CE5-GigabitEthernet0/0/1] ip address 110.1.1.1 24

[CE5-GigabitEthernet0/0/1] quit

[CE5] bgp 65411

[CE5-bgp-default] peer 110.1.1.2 as-number 200

[CE5-bgp-default] address-family ipv4 unicast

[CE5-bgp-default-ipv4] peer 110.1.1.2 enable

[CE5-bgp-default-ipv4] import-route direct

[CE5-bgp-default-ipv4] quit

[CE5-bgp-default] quit

# 配置PE 3。

[PE3] ip vpn-instance SUB_VPN1

[PE3-vpn-instance-SUB_VPN1] route-distinguisher 100:1

[PE3-vpn-instance-SUB_VPN1] vpn-target 2:1

[PE3-vpn-instance-SUB_VPN1] quit

[PE3] interface gigabitethernet 0/0/1

[PE3-GigabitEthernet0/0/1] ip binding vpn-instance SUB_VPN1

[PE3-GigabitEthernet0/0/1] ip address 100.1.1.2 24

[PE3-GigabitEthernet0/0/1] quit

[PE3] ip vpn-instance SUB_VPN2

[PE3-vpn-instance-SUB_VPN2] route-distinguisher 101:1

[PE3-vpn-instance-SUB_VPN2] vpn-target 2:2

[PE3-vpn-instance-SUB_VPN2] quit

[PE3] interface gigabitethernet 0/0/2

[PE3-GigabitEthernet0/0/2] ip binding vpn-instance SUB_VPN2

[PE3-GigabitEthernet0/0/2] ip address 110.1.1.2 24

[PE3-GigabitEthernet0/0/2] quit

[PE3] bgp 200

[PE3-bgp-default] ip vpn-instance SUB_VPN1

[PE3-bgp-default-SUB_VPN1] peer 100.1.1.1 as-number 65410

[PE3-bgp-default-SUB_VPN1] address-family ipv4 unicast

[PE3-bgp-default-ipv4-SUB_VPN1] peer 100.1.1.1 enable

[PE3-bgp-default-ipv4-SUB_VPN1] quit

[PE3-bgp-default-SUB_VPN1] quit

[PE3-bgp-default] ip vpn-instance SUB_VPN2

[PE3-bgp-default-SUB_VPN2] peer 110.1.1.1 as-number 65411

[PE3-bgp-default-SUB_VPN2] address-family ipv4 unicast

[PE3-bgp-default-ipv4-SUB_VPN2] peer 110.1.1.1 enable

[PE3-bgp-default-ipv4-SUB_VPN2] quit

[PE3-bgp-default-SUB_VPN2] quit

[PE3-bgp-default] quit

# PE 4和CE 4,CE 6之間的配置與PE 3和CE 3,CE 5之間的配置類似,配置過程省略。

(5)     在運營商的PE和運營商CE之間建立MP-EBGP對等體關係,交換用戶的VPNv4路由

# 在PE 1上使能嵌套VPN功能,並使能PE 1與CE 1交互VPNv4路由的能力。

[PE1] bgp 100

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] nesting-vpn

[PE1-bgp-default-vpnv4] quit

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] address-family vpnv4

[PE1-bgp-default-vpnv4-vpn1] peer 11.1.1.1 enable

[PE1-bgp-default-vpnv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

[PE1-bgp-default] quit

# 在CE 1上使能其與PE 1交互VPNv4路由的能力。

[CE1] bgp 200

[CE1-bgp-default] address-family vpnv4

[CE1-bgp-default-vpnv4] peer 11.1.1.2 enable

# 在CE 1上配置允許本地AS號在所接收的路由的AS_PATH屬性中出現。

[CE1-bgp-default-vpnv4] peer 11.1.1.2 allow-as-loop 2

# 在CE 1上配置接收所有VPNv4路由。

[CE1-bgp-default-vpnv4] undo policy vpn-target

[CE1-bgp-default-vpnv4] quit

[CE1-bgp-default] quit

# PE 2和CE 2之間的配置與PE 1和CE 1之間的配置類似,配置過程省略。

(6)     在用戶PE和運營商CE之間建立MP-IBGP對等體關係,交換用戶內部子VPN的VPNv4路由

# 配置PE 3。

[PE3] bgp 200

[PE3-bgp-default] peer 2.2.2.9 as-number 200

[PE3-bgp-default] peer 2.2.2.9 connect-interface loopback 0

[PE3-bgp-default] address-family vpnv4

[PE3-bgp-default-vpnv4] peer 2.2.2.9 enable

# 配置允許本地AS號在所接收的路由的AS_PATH屬性中出現。

[PE3-bgp-default-vpnv4] peer 2.2.2.9 allow-as-loop 2

[PE3-bgp-default-vpnv4] quit

[PE3-bgp-default] quit

# 配置CE 1。

[CE1] bgp 200

[CE1-bgp-default] peer 1.1.1.9 as-number 200

[CE1-bgp-default] peer 1.1.1.9 connect-interface loopback 0

[CE1-bgp-default] address-family vpnv4

[CE1-bgp-default-vpnv4] peer 1.1.1.9 enable

[CE1-bgp-default-vpnv4] undo policy vpn-target

[CE1-bgp-default-vpnv4] quit

[CE1-bgp-default] quit

# PE 4和CE 2之間的配置與PE 3和CE 1之間的配置類似,配置過程省略。

4. 驗證配置

# 在PE 1和PE 2上執行display ip routing-table命令,可以看到PE 1和PE 2的公網路由表中隻有運營商網絡的路由。以PE 1為例:

[PE1] display ip routing-table

 

Destinations : 14        Routes : 14

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

3.3.3.9/32         Direct  0   0           127.0.0.1       InLoop0

4.4.4.9/32         IS_L1   15  10          30.1.1.2        GE0/0/5

30.1.1.0/24        Direct  0   0           30.1.1.1        GE0/0/5

30.1.1.0/32        Direct  0   0           30.1.1.1        GE0/0/5

30.1.1.1/32        Direct  0   0           127.0.0.1       InLoop0

30.1.1.255/32      Direct  0   0           30.1.1.1        GE0/0/5

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0

224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

# 在PE 1和PE 2上執行display ip routing-table vpn-instance命令,可以看到VPN路由表中有用戶子VPN網絡的路由。以PE 1為例:

[PE1] display ip routing-table vpn-instance vpn1

 

Destinations : 16        Routes : 16

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

11.1.1.0/24        Direct  0   0           11.1.1.2        GE0/0/4

11.1.1.0/32        Direct  0   0           11.1.1.2        GE0/0/4

11.1.1.2/32        Direct  0   0           127.0.0.1       InLoop0

11.1.1.255/32      Direct  0   0           11.1.1.2        GE0/0/4

100.1.1.0/24       BGP     255 0           11.1.1.1        GE0/0/4

110.1.1.0/24       BGP     255 0           11.1.1.1        GE0/0/4

120.1.1.0/24       BGP     255 0           4.4.4.9         GE0/0/5

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

130.1.1.0/24       BGP     255 0           4.4.4.9         GE0/0/5

224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0

224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

# 在CE 1和CE 2上執行display bgp routing-table vpnv4命令,可以看到用戶網絡中VPNv4路由表中有所有子VPN網絡的內部路由。以CE 1為例:

[CE1] display bgp routing-table vpnv4

 

 BGP local router ID is 2.2.2.9

 Status codes: * - valid, > - best, d - dampened, h - history,

               s - suppressed, S - stale, i - internal, e - external

               Origin: i - IGP, e - EGP, ? - incomplete

 

 Total number of routes from all PEs: 4

 

 Route distinguisher: 100:1

 Total number of routes: 1

 

     Network            NextHop         MED        LocPrf     PrefVal Path/Ogn

 

* >i 100.1.1.0/24       1.1.1.9         0          100        0       200 65410?

 

 Route distinguisher: 101:1

 Total number of routes: 1

 

     Network            NextHop         MED        LocPrf     PrefVal Path/Ogn

 

* >i 110.1.1.0/24       1.1.1.9         0          100        0       200 65411?

 

 Route distinguisher: 200:1

 Total number of routes: 1

 

     Network            NextHop         MED        LocPrf     PrefVal Path/Ogn

 

* >e 120.1.1.0/24       11.1.1.2                              0       100 200

                                                                      65420?

 

 Route Distinguisher: 201:1

 Total number of routes: 1

 

     Network            NextHop         MED        LocPrf     PrefVal Path/Ogn

 

* >e 130.1.1.0/24       11.1.1.2                              0       100 200

                                                                      65421?

# 在PE 3和PE 4上執行display ip routing-table vpn-instance SUB_VPN1命令,可以看到私網路由表中有從運營商PE發布到用戶網絡子VPN內部的路由。以PE 3為例:

[PE3] display ip routing-table vpn-instance SUB_VPN1

 

Destinations : 13        Routes : 13

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

100.1.1.0/24       Direct  0   0           100.1.1.2       GE0/0/1

100.1.1.0/32       Direct  0   0           100.1.1.2       GE0/0/1

100.1.1.2/32       Direct  0   0           127.0.0.1       InLoop0

100.1.1.255/32     Direct  0   0           100.1.1.2       GE0/0/1

120.1.1.0/24       BGP     255 0           2.2.2.9         GE0/0/5

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0

224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

# 在CE 3和CE 4上執行display ip routing-table命令,可以看到路由表中有遠端子VPN的路由。以CE 3為例:

[CE3] display ip routing-table

 

Destinations : 13        Routes : 13

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

100.1.1.0/24       Direct  0   0           100.1.1.1       GE0/0/1

100.1.1.0/32       Direct  0   0           100.1.1.1       GE0/0/1

100.1.1.1/32       Direct  0   0           127.0.0.1       InLoop0

100.1.1.255/24     Direct  0   0           100.1.1.1       GE0/0/1

120.1.1.0/24       BGP     255 0           100.1.1.2       GE0/0/1

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0

224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

# 在CE 5和CE 6上執行display ip routing-table命令,可以看到路由表中有遠端子VPN的路由。以CE 5為例:

[CE5] display ip routing-table

 

Destinations : 13        Routes : 13

 

Destination/Mask   Proto   Pre Cost        NextHop         Interface

0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0

110.1.1.0/24       Direct  0   0           110.1.1.1       GE0/0/1

110.1.1.0/32       Direct  0   0           110.1.1.1       GE0/0/1

110.1.1.1/32       Direct  0   0           127.0.0.1       InLoop0

110.1.1.255/32     Direct  0   0           110.1.1.1       GE0/0/1

127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0

127.0.0.0/32       Direct  0   0           127.0.0.1       InLoop0

127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0

127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

130.1.1.0/24       BGP     255 0           110.1.1.2       GE0/0/1

224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0

224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

# CE 3和CE 4可以互相Ping通。

# CE 5和CE 6可以互相Ping通。

# CE 3和CE 6不能互相Ping通。

1.28.11  配置多角色主機示例

1. 組網需求

·     主機Host A通過CE 1接入,其IP地址為100.1.1.2。Host A可以訪問VPN 1和VPN 2。

·     主機Host B通過CE 1接入,其IP地址為100.1.1.3。Host B隻可以訪問VPN 1。

2. 組網圖

圖1-36 配置多角色主機組網圖

3. 配置步驟

(1)     配置CE 1

# 配置CE 1的接口IP地址。

<CE1> system-view

[CE1] interface gigabitethernet 0/0/1

[CE1-GigabitEthernet0/0/1] ip address 100.1.1.1 24

[CE1-GigabitEthernet0/0/1] quit

[CE1] interface gigabitethernet 0/0/5

[CE1-GigabitEthernet0/0/5] ip address 1.1.1.2 24

[CE1-GigabitEthernet0/0/5] quit

# 在CE 1上配置一條指向PE 1的缺省路由。

[CE1] ip route-static 0.0.0.0 0 1.1.1.1

(2)     配置PE 1

# 在PE 1上為VPN 1和VPN 2分別創建VPN實例,並配置RD和不同的Route Target屬性。

<PE1> system-view

[PE1] ip vpn-instance vpn1

[PE1-vpn-instance-vpn1] route-distinguisher 100:1

[PE1-vpn-instance-vpn1] vpn-target 100:1 both

[PE1-vpn-instance-vpn1] quit

[PE1] ip vpn-instance vpn2

[PE1-vpn-instance-vpn2] route-distinguisher 100:2

[PE1-vpn-instance-vpn2] vpn-target 100:2 both

[PE1-vpn-instance-vpn2] quit

# 將PE 1與CE 1相連的接口關聯到VPN 1。

[PE1] interface gigabitethernet 0/0/4

[PE1-GigabitEthernet0/0/4] ip binding vpn-instance vpn1

[PE1-GigabitEthernet0/0/4] ip address 1.1.1.1 255.255.255.0

[PE1-GigabitEthernet0/0/4] quit

# 配置靜態路由,並引入到BGP中,使Host A訪問VPN 2的返回報文能夠在PE 1的VPN實例vpn1中找到正確的路由,返回到Host A。

[PE1] ip route-static vpn-instance vpn2 100.1.1.0 24 vpn-instance vpn1 1.1.1.2

[PE1] bgp 100

[PE1-bgp-default] ip vpn-instance vpn2

[PE1-bgp-default-vpn2] address-family ipv4

[PE1-bgp-default-ipv4-vpn2] import-route static

[PE1-bgp-default-ipv4-vpn2] quit

[PE1-bgp-default-vpn2] quit

[PE1-bgp-default] quit

# 配置策略路由,對於Host A發出的報文,如果在本接口所屬的VPN實例vpn1中沒有找到路由,就在名為vpn2的VPN實例中查找私網路由並轉發。

[PE1] acl advanced 3001

[PE1-acl-ipv4-adv-3001] rule 0 permit ip vpn-instance vpn1 source 100.1.1.2 0

[PE1-acl-ipv4-adv-3001] quit

[PE1] policy-based-route policy1 permit node 10

[PE1-policy-based-route] if-match acl 3001

[PE1-policy-based-route] apply access-vpn vpn-instance vpn1 vpn2

[PE1-policy-based-route] quit

# 在接口GigabitEthernet0/0/4上應用定義的策略路由。

[PE1] interface gigabitethernet 0/0/4

[PE1-GigabitEthernet0/0/4] ip policy-based-route policy1

(3)     配置基本MPLS L3VPN。(配置過程略)

4. 驗證配置

配置完成後,在Host A上可以ping通Host C,在Host B上無法ping通Host C。

1.28.12  配置HoVPN示例

1. 組網需求

以一個包括省骨幹和地市的MPLS VPN網絡為例:

·     SPE作為省網的PE設備,接入地市的MPLS VPN網絡;

·     UPE作為下層地市網絡的PE設備,最終接入VPN客戶。對UPE的性能要求低於對SPE的性能要求。

·     SPE將通過路由策略的路由發送給UPE,限製不同Site之間的互相訪問權限,使得VPN 1內的CE 1和CE 3可以互相訪問,VPN 2內的CE 2和CE 4不能互相訪問。

2. 組網圖

圖1-37 配置HoVPN組網圖

設備

接口

IP地址

設備

接口

IP地址

CE 1

GE0/0/1

10.2.1.1/24

CE 3

GE0/0/1

10.1.1.1/24

CE 2

GE0/0/1

10.4.1.1/24

CE 4

GE0/0/1

10.3.1.1/24

UPE 1

Loop0

1.1.1.9/32

UPE 2

Loop0

4.4.4.9/32

 

GE0/0/1

10.2.1.2/24

 

GE0/0/1

172.2.1.1/24

 

GE0/0/2

10.4.1.2/24

 

GE0/0/2

10.1.1.2/24

 

GE0/0/3

172.1.1.1/24

 

GE0/0/3

10.3.1.2/24

SPE 1

Loop0

2.2.2.9/32

SPE 2

Loop0

3.3.3.9/32

 

GE0/0/1

172.1.1.2/24

 

GE0/0/1

180.1.1.2/24

 

GE0/0/2

180.1.1.1/24

 

GE0/0/2

172.2.1.2/24

 

3. 配置步驟

(1)     配置UPE 1

# 配置MPLS基本能力和MPLS LDP能力,建立LDP LSP。

<UPE1> system-view

[UPE1] interface loopback 0

[UPE1-LoopBack0] ip address 1.1.1.9 32

[UPE1-LoopBack0] quit

[UPE1] mpls lsr-id 1.1.1.9

[UPE1] mpls ldp

[UPE1-ldp] quit

[UPE1] interface gigabitethernet 0/0/3

[UPE1-GigabitEthernet0/0/3] ip address 172.1.1.1 24

[UPE1-GigabitEthernet0/0/3] mpls enable

[UPE1-GigabitEthernet0/0/3] mpls ldp enable

[UPE1-GigabitEthernet0/0/3] quit

# 配置IGP協議,以OSPF為例。

[UPE1] ospf

[UPE1-ospf-1] area 0

[UPE1-ospf-1-area-0.0.0.0] network 172.1.1.0 0.0.0.255

[UPE1-ospf-1-area-0.0.0.0] network 1.1.1.9 0.0.0.0

[UPE1-ospf-1-area-0.0.0.0] quit

[UPE1-ospf-1] quit

# 配置VPN實例vpn1和vpn2,將CE 1和CE 2接入UPE 1。

[UPE1] ip vpn-instance vpn1

[UPE1-vpn-instance-vpn1] route-distinguisher 100:1

[UPE1-vpn-instance-vpn1] vpn-target 100:1 both

[UPE1-vpn-instance-vpn1] quit

[UPE1] ip vpn-instance vpn2

[UPE1-vpn-instance-vpn2] route-distinguisher 100:2

[UPE1-vpn-instance-vpn2] vpn-target 100:2 both

[UPE1-vpn-instance-vpn2] quit

[UPE1] interface gigabitethernet 0/0/1

[UPE1-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[UPE1-GigabitEthernet0/0/1] ip address 10.2.1.2 24

[UPE1-GigabitEthernet0/0/1] quit

[UPE1] interface gigabitethernet 0/0/2

[UPE1-GigabitEthernet0/0/2] ip binding vpn-instance vpn2

[UPE1-GigabitEthernet0/0/2] ip address 10.4.1.2 24

[UPE1-GigabitEthernet0/0/2] quit

# 配置UPE 1與SPE 1建立MP-IBGP對等體。

[UPE1] bgp 100

[UPE1-bgp-default] peer 2.2.2.9 as-number 100

[UPE1-bgp-default] peer 2.2.2.9 connect-interface loopback 0

[UPE1-bgp-default] address-family vpnv4

[UPE1-bgp-default-vpnv4] peer 2.2.2.9 enable

[UPE1-bgp-default-vpnv4] quit

# 配置UPE 1與CE 1建立EBGP對等體。

[UPE1-bgp-default] ip vpn-instance vpn1

[UPE1-bgp-default-vpn1] peer 10.2.1.1 as-number 65410

[UPE1-bgp-default-vpn1] address-family ipv4 unicast

[UPE1-bgp-default-ipv4-vpn1] peer 10.2.1.1 enable

[UPE1-bgp-default-ipv4-vpn1] quit

[UPE1-bgp-default-vpn1] quit

# 配置UPE 1與CE 2建立EBGP對等體。

[UPE1-bgp-default] ip vpn-instance vpn2

[UPE1-bgp-default-vpn2] peer 10.4.1.1 as-number 65420

[UPE1-bgp-default-vpn2] address-family ipv4 unicast

[UPE1-bgp-default-ipv4-vpn2] peer 10.4.1.1 enable

[UPE1-bgp-default-ipv4-vpn2] quit

[UPE1-bgp-default-vpn2] quit

[UPE1-bgp-default] quit

(2)     配置CE 1

<CE1> system-view

[CE1] interface gigabitethernet 0/0/1

[CE1-GigabitEthernet0/0/1] ip address 10.2.1.1 255.255.255.0

[CE1-GigabitEthernet0/0/1] quit

[CE1] bgp 65410

[CE1-bgp-default] peer 10.2.1.2 as-number 100

[CE1-bgp-default] address-family ipv4 unicast

[CE1-bgp-default-ipv4] peer 10.2.1.2 enable

[CE1-bgp-default-ipv4] import-route direct

[CE1-bgp-default-ipv4] quit

[CE1-bgp-default] quit

(3)     配置CE 2

<CE2> system-view

[CE2] interface gigabitethernet 0/0/1

[CE2-GigabitEthernet0/0/1] ip address 10.4.1.1 255.255.255.0

[CE2-GigabitEthernet0/0/1] quit

[CE2] bgp 65420

[CE2-bgp-default] peer 10.4.1.2 as-number 100

[CE2-bgp-default] address-family ipv4 unicast

[CE2-bgp-default-ipv4] peer 10.4.1.2 enable

[CE2-bgp-default-ipv4] import-route direct

[CE2-bgp-default-ipv4] quit

[CE2-bgp-default] quit

(4)     配置UPE 2

# 配置MPLS基本能力和MPLS LDP能力,建立LDP LSP。

<UPE2> system-view

[UPE2] interface loopback 0

[UPE2-LoopBack0] ip address 4.4.4.9 32

[UPE2-LoopBack0] quit

[UPE2] mpls lsr-id 4.4.4.9

[UPE2] mpls ldp

[UPE2-ldp] quit

[UPE2] interface gigabitethernet 0/0/1

[UPE2-GigabitEthernet0/0/1] ip address 172.2.1.1 24

[UPE2-GigabitEthernet0/0/1] mpls enable

[UPE2-GigabitEthernet0/0/1] mpls ldp enable

[UPE2-GigabitEthernet0/0/1] quit

# 配置IGP協議,以OSPF為例。

[UPE2] ospf

[UPE2-ospf-1] area 0

[UPE2-ospf-1-area-0.0.0.0] network 172.2.1.0 0.0.0.255

[UPE2-ospf-1-area-0.0.0.0] network 4.4.4.9 0.0.0.0

[UPE2-ospf-1-area-0.0.0.0] quit

[UPE2-ospf-1] quit

# 配置VPN實例vpn1和vpn2,將CE 3和CE 4接入UPE 2。

[UPE2] ip vpn-instance vpn1

[UPE2-vpn-instance-vpn1] route-distinguisher 300:1

[UPE2-vpn-instance-vpn1] vpn-target 100:1 both

[UPE2-vpn-instance-vpn1] quit

[UPE2] ip vpn-instance vpn2

[UPE2-vpn-instance-vpn2] route-distinguisher 400:2

[UPE2-vpn-instance-vpn2] vpn-target 100:2 both

[UPE2-vpn-instance-vpn2] quit

[UPE2] interface gigabitethernet 0/0/2

[UPE2-GigabitEthernet0/0/2] ip binding vpn-instance vpn1

[UPE2-GigabitEthernet0/0/2] ip address 10.1.1.2 24

[UPE2-GigabitEthernet0/0/2] quit

[UPE2] interface gigabitethernet 0/0/3

[UPE2-GigabitEthernet0/0/3] ip binding vpn-instance vpn2

[UPE2-GigabitEthernet0/0/3] ip address 10.3.1.2 24

[UPE2-GigabitEthernet0/0/3] quit

# 配置UPE 2與SPE 2建立MP-IBGP對等體。

[UPE2] bgp 100

[UPE2-bgp-default] peer 3.3.3.9 as-number 100

[UPE2-bgp-default] peer 3.3.3.9 connect-interface loopback 0

[UPE2-bgp-default] address-family vpnv4

[UPE2-bgp-default-vpnv4] peer 3.3.3.9 enable

[UPE2-bgp-default-vpnv4] quit

# 配置UPE 2與CE 3建立EBGP對等體。

[UPE2-bgp-default] ip vpn-instance vpn1

[UPE2-bgp-default-vpn1] peer 10.1.1.1 as-number 65430

[UPE2-bgp-default-vpn1] address-family ipv4 unicast

[UPE2-bgp-default-ipv4-vpn1] peer 10.1.1.1 enable

[UPE2-bgp-default-ipv4-vpn1] quit

[UPE2-bgp-default-vpn1] quit

# 配置UPE 2與CE 4建立EBGP對等體。

[UPE2-bgp-default] ip vpn-instance vpn2

[UPE2-bgp-default-vpn2] peer 10.3.1.1 as-number 65440

[UPE2-bgp-default-vpn2] address-family ipv4 unicast

[UPE2-bgp-default-ipv4-vpn2] peer 10.3.1.1 enable

[UPE2-bgp-default-ipv4-vpn2] quit

[UPE2-bgp-default-vpn2] quit

[UPE2-bgp-default] quit

(5)     配置CE 3

<CE3> system-view

[CE3] interface gigabitethernet 0/0/1

[CE3-GigabitEthernet0/0/1] ip address 10.1.1.1 255.255.255.0

[CE3-GigabitEthernet0/0/1] quit

[CE3] bgp 65430

[CE3-bgp-default] peer 10.1.1.2 as-number 100

[CE3-bgp-default] address-family ipv4 unicast

[CE3-bgp-default-ipv4] peer 10.1.1.2 enable

[CE3-bgp-default-ipv4] import-route direct

[CE3-bgp-default-ipv4] quit

[CE3-bgp-default] quit

(6)     配置CE 4

<CE4> system-view

[CE4] interface gigabitethernet 0/0/1

[CE4-GigabitEthernet0/0/1] ip address 10.3.1.1 255.255.255.0

[CE4-GigabitEthernet0/0/1] quit

[CE4] bgp 65440

[CE4-bgp-default] peer 10.3.1.2 as-number 100

[CE4-bgp-default] address-family ipv4 unicast

[CE4-bgp-default-ipv4] peer 10.3.1.2 enable

[CE4-bgp-default-ipv4] import-route direct

[CE4-bgp-default-ipv4] quit

[CE4-bgp-default] quit

(7)     配置SPE 1

# 配置MPLS基本能力和MPLS LDP能力,建立LDP LSP。

<SPE1> system-view

[SPE1] interface loopback 0

[SPE1-LoopBack0] ip address 2.2.2.9 32

[SPE1-LoopBack0] quit

[SPE1] mpls lsr-id 2.2.2.9

[SPE1] mpls ldp

[SPE1-ldp] quit

[SPE1] interface gigabitethernet 0/0/1

[SPE1-GigabitEthernet0/0/1] ip address 172.1.1.2 24

[SPE1-GigabitEthernet0/0/1] mpls enable

[SPE1-GigabitEthernet0/0/1] mpls ldp enable

[SPE1-GigabitEthernet0/0/1] quit

[SPE1] interface gigabitethernet 0/0/2

[SPE1-GigabitEthernet0/0/2] ip address 180.1.1.1 24

[SPE1-GigabitEthernet0/0/2] mpls enable

[SPE1-GigabitEthernet0/0/2] mpls ldp enable

[SPE1-GigabitEthernet0/0/2] quit

# 配置IGP協議,以OSPF為例。

[SPE1] ospf

[SPE1-ospf-1] area 0

[SPE1-ospf-1-area-0.0.0.0] network 2.2.2.9 0.0.0.0

[SPE1-ospf-1-area-0.0.0.0] network 172.1.1.0 0.0.0.255

[SPE1-ospf-1-area-0.0.0.0] network 180.1.1.0 0.0.0.255

[SPE1-ospf-1-area-0.0.0.0] quit

[SPE1-ospf-1] quit

# 配置VPN實例vpn1和vpn2。

[SPE1] ip vpn-instance vpn1

[SPE1-vpn-instance-vpn1] route-distinguisher 500:1

[SPE1-vpn-instance-vpn1] vpn-target 100:1 both

[SPE1-vpn-instance-vpn1] quit

[SPE1] ip vpn-instance vpn2

[SPE1-vpn-instance-vpn2] route-distinguisher 700:1

[SPE1-vpn-instance-vpn2] vpn-target 100:2 both

[SPE1-vpn-instance-vpn2] quit

# 配置SPE 1與SPE 2、UPE 1建立MP-IBGP對等體,並指定UPE 1為UPE。

[SPE1] bgp 100

[SPE1-bgp-default] peer 1.1.1.9 as-number 100

[SPE1-bgp-default] peer 1.1.1.9 connect-interface loopback 0

[SPE1-bgp-default] peer 3.3.3.9 as-number 100

[SPE1-bgp-default] peer 3.3.3.9 connect-interface loopback 0

[SPE1-bgp-default] address-family vpnv4

[SPE1-bgp-default-vpnv4] peer 3.3.3.9 enable

[SPE1-bgp-default-vpnv4] peer 1.1.1.9 enable

[SPE1-bgp-default-vpnv4] peer 1.1.1.9 upe

[SPE1-bgp-default-vpnv4] peer 1.1.1.9 next-hop-local

[SPE1-bgp-default-vpnv4] quit

# 為VPN實例vpn1和vpn2分別創建BGP-VPN實例,以便根據Route Target屬性將學習到的VPNv4路由添加到相應VPN實例的BGP路由表中。

[SPE1-bgp-default] ip vpn-instance vpn1

[SPE1-bgp-default-vpn1] quit

[SPE1-bgp-default] ip vpn-instance vpn2

[SPE1-bgp-default-vpn2] quit

[SPE1-bgp-default] quit

# 配置SPE 1向UPE 1發送通過策略的路由信息,允許CE 3的路由發送給UPE 1。

[SPE1] ip prefix-list hope index 10 permit 10.1.1.1 24

[SPE1] route-policy hope permit node 0

[SPE1-route-policy-hope-0] if-match ip address prefix-list hope

[SPE1-route-policy-hope-0] quit

[SPE1] bgp 100

[SPE1-bgp-default] address-family vpnv4

[SPE1-bgp-default-vpnv4] peer 1.1.1.9 upe route-policy hope export

(8)     配置SPE 2

# 配置MPLS基本能力和MPLS LDP能力,建立LDP LSP。

<SPE2> system-view

[SPE2] interface loopback 0

[SPE2-LoopBack0] ip address 3.3.3.9 32

[SPE2-LoopBack0] quit

[SPE2] mpls lsr-id 3.3.3.9

[SPE2] mpls ldp

[SPE2-ldp] quit

[SPE2] interface gigabitethernet 0/0/1

[SPE2-GigabitEthernet0/0/1] ip address 180.1.1.2 24

[SPE2-GigabitEthernet0/0/1] mpls enable

[SPE2-GigabitEthernet0/0/1] mpls ldp enable

[SPE2-GigabitEthernet0/0/1] quit

[SPE2] interface gigabitethernet 0/0/2

[SPE2-GigabitEthernet0/0/2] ip address 172.2.1.2 24

[SPE2-GigabitEthernet0/0/2] mpls enable

[SPE2-GigabitEthernet0/0/2] mpls ldp enable

[SPE2-GigabitEthernet0/0/2] quit

# 配置IGP協議,以OSPF為例。

[SPE2] ospf

[SPE2-ospf-1] area 0

[SPE2-ospf-1-area-0.0.0.0] network 3.3.3.9 0.0.0.0

[SPE2-ospf-1-area-0.0.0.0] network 172.2.1.0 0.0.0.255

[SPE2-ospf-1-area-0.0.0.0] network 180.1.1.0 0.0.0.255

[SPE2-ospf-1-area-0.0.0.0] quit

[SPE2-ospf-1] quit

# 配置VPN實例vpn1和vpn2。

[SPE2] ip vpn-instance vpn1

[SPE2-vpn-instance-vpn1] route-distinguisher 600:1

[SPE2-vpn-instance-vpn1] vpn-target 100:1 both

[SPE2-vpn-instance-vpn1] quit

[SPE2] ip vpn-instance vpn2

[SPE2-vpn-instance-vpn2] route-distinguisher 800:1

[SPE2-vpn-instance-vpn2] vpn-target 100:2 both

[SPE2-vpn-instance-vpn2] quit

# 配置SPE 2與SPE 1、UPE 2建立MP-IBGP對等體,並指定UPE 2為UPE。

[SPE2] bgp 100

[SPE2-bgp-default] peer 4.4.4.9 as-number 100

[SPE2-bgp-default] peer 4.4.4.9 connect-interface loopback 0

[SPE2-bgp-default] peer 2.2.2.9 as-number 100

[SPE2-bgp-default] peer 2.2.2.9 connect-interface loopback 0

[SPE2-bgp-default] address-family vpnv4

[SPE2-bgp-default-vpnv4] peer 2.2.2.9 enable

[SPE2-bgp-default-vpnv4] peer 4.4.4.9 enable

[SPE2-bgp-default-vpnv4] peer 4.4.4.9 upe

[SPE2-bgp-default-vpnv4] peer 4.4.4.9 next-hop-local

[SPE2-bgp-default-vpnv4] quit

# 為VPN實例vpn1和vpn2分別創建BGP-VPN實例,以便根據Route Target屬性將學習到的VPNv4路由添加到相應VPN實例的BGP路由表中。

[SPE2-bgp-default] ip vpn-instance vpn1

[SPE2-bgp-default-vpn1] quit

[SPE2-bgp-default] ip vpn-instance vpn2

[SPE2-bgp-default-vpn2] quit

[SPE2-bgp-default] quit

# 配置SPE 2向UPE 2發送通過策略的路由信息,允許CE 1的路由發送給UPE 2。

[SPE2] ip prefix-list hope index 10 permit 10.2.1.1 24

[SPE2] route-policy hope permit node 0

[SPE2-route-policy-hope-0] if-match ip address prefix-list hope

[SPE2-route-policy-hope-0] quit

[SPE2] bgp 100

[SPE2-bgp-default] address-family vpnv4

[SPE2-bgp-default-vpnv4] peer 4.4.4.9 upe route-policy hope export

4. 驗證配置

上述配置完成後,CE 1和CE 3能夠學習到對方的接口路由,CE 1和CE 3能夠相互ping通;CE 2和CE 4不能學習到對方的接口路由,CE 2和CE 4不能相互ping通。

1.28.13  配置OSPF偽連接

1. 組網需求

·     CE 1和CE 2都屬於VPN 1,它們分別接入PE 1和PE 2;

·     CE 1和CE 2在同一個OSPF區域中;

·     CE 1與CE 2之間的VPN流量通過MPLS骨幹網轉發,不使用OSPF的區域內路由。

2. 組網圖

圖1-38 OSPF偽連接配置組網圖

設備

接口

IP地址

設備

接口

IP地址

CE 1

GE0/0/1

100.1.1.1/24

CE 2

GE0/0/1

120.1.1.1/24

 

GE0/0/4

20.1.1.1/24

 

GE0/0/4

30.1.1.2/24

PE 1

Loop0

1.1.1.9/32

PE 2

Loop0

2.2.2.9/32

 

Loop1

3.3.3.3/32

 

Loop1

5.5.5.5/32

 

GE0/0/1

100.1.1.2/24

 

GE0/0/1

120.1.1.2/24

 

GE0/0/4

10.1.1.1/24

 

GE0/0/5

10.1.1.2/24

Router A

GE0/0/5

30.1.1.1/24

 

 

 

 

GE0/0/4

20.1.1.2/24

 

 

 

 

3. 配置步驟

(1)     配置用戶網絡上的OSPF

在CE 1、Router A、CE 2上配置普通OSPF,發布圖1-38中所示各接口的網段地址,並配置CE 1和Router A、CE 2和Router A之間的鏈路開銷值為2。具體配置過程略。

配置完成後,執行display ip routing-table命令,可以看到CE 1和CE 2學到了到達對端的路由。

(2)     在骨幹網上配置MPLS L3VPN

# 配置PE 1的MPLS基本能力和MPLS LDP能力,建立LDP LSP。

<PE1> system-view

[PE1] interface loopback 0

[PE1-LoopBack0] ip address 1.1.1.9 32

[PE1-LoopBack0] quit

[PE1] mpls lsr-id 1.1.1.9

[PE1] mpls ldp

[PE1-ldp] quit

[PE1] interface gigabitethernet 0/0/4

[PE1-GigabitEthernet0/0/4] ip address 10.1.1.1 24

[PE1-GigabitEthernet0/0/4] mpls enable

[PE1-GigabitEthernet0/0/4] mpls ldp enable

[PE1-GigabitEthernet0/0/4] quit

# 配置PE 1的MP-IBGP對等體為PE2。

[PE1] bgp 100

[PE1-bgp-default] peer 2.2.2.9 as-number 100

[PE1-bgp-default] peer 2.2.2.9 connect-interface loopback 0

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 2.2.2.9 enable

[PE1-bgp-default-vpnv4] quit

[PE1-bgp-default] quit

# 配置PE 1的OSPF。

[PE1] ospf 1

[PE1-ospf-1] area 0

[PE1-ospf-1-area-0.0.0.0] network 1.1.1.9 0.0.0.0

[PE1-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255

[PE1-ospf-1-area-0.0.0.0] quit

[PE1-ospf-1] quit

# 配置PE 2的MPLS基本能力和MPLS LDP能力,建立LDP LSP。

<PE2> system-view

[PE2] interface loopback 0

[PE2-LoopBack0] ip address 2.2.2.9 32

[PE2-LoopBack0] quit

[PE2] mpls lsr-id 2.2.2.9

[PE2] mpls ldp

[PE2-ldp] quit

[PE2] interface gigabitethernet 0/0/5

[PE2-GigabitEthernet0/0/5] ip address 10.1.1.2 24

[PE2-GigabitEthernet0/0/5] mpls enable

[PE2-GigabitEthernet0/0/5] mpls ldp enable

[PE2-GigabitEthernet0/0/5] quit

# 配置PE 2的MP-IBGP對等體為PE1。

[PE2] bgp 100

[PE2-bgp-default] peer 1.1.1.9 as-number 100

[PE2-bgp-default] peer 1.1.1.9 connect-interface loopback 0

[PE2-bgp-default] address-family vpnv4

[PE2-bgp-default-vpnv4] peer 1.1.1.9 enable

[PE2-bgp-default-vpnv4] quit

[PE2-bgp-default] quit

# 配置PE 2的OSPF。

[PE2] ospf 1

[PE2-ospf-1] area 0

[PE2-ospf-1-area-0.0.0.0] network 2.2.2.9 0.0.0.0

[PE2-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255

[PE2-ospf-1-area-0.0.0.0] quit

[PE2-ospf-1] quit

(3)     配置PE接入CE

# 配置PE 1接入CE 1。

[PE1] ip vpn-instance vpn1

[PE1-vpn-instance-vpn1] route-distinguisher 100:1

[PE1-vpn-instance-vpn1] vpn-target 1:1

[PE1-vpn-instance-vpn1] quit

[PE1] interface gigabitethernet 0/0/1

[PE1-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[PE1-GigabitEthernet0/0/1] ip address 100.1.1.2 24

[PE1-GigabitEthernet0/0/1] quit

[PE1] ospf 100 vpn-instance vpn1

[PE1-ospf-100] domain-id 10

[PE1-ospf-100] area 1

[PE1-ospf-100-area-0.0.0.1] network 100.1.1.0 0.0.0.255

[PE1-ospf-100-area-0.0.0.1] quit

[PE1-ospf-100] quit

[PE1] bgp 100

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] import-route ospf 100

[PE1-bgp-default-ipv4-vpn1] import-route direct

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

[PE1-bgp-default] quit

# 配置PE 2接入CE 2。

[PE2] ip vpn-instance vpn1

[PE2-vpn-instance-vpn1] route-distinguisher 100:2

[PE2-vpn-instance-vpn1] vpn-target 1:1

[PE2-vpn-instance-vpn1] quit

[PE2] interface gigabitethernet 0/0/1

[PE2-GigabitEthernet0/0/1] ip binding vpn-instance vpn1

[PE2-GigabitEthernet0/0/1] ip address 120.1.1.2 24

[PE2-GigabitEthernet0/0/1] quit

[PE2] ospf 100 vpn-instance vpn1

[PE2-ospf-100] domain-id 10

[PE2-ospf-100] area 1

[PE2-ospf-100-area-0.0.0.1] network 120.1.1.0 0.0.0.255

[PE2-ospf-100-area-0.0.0.1] quit

[PE2-ospf-100] quit

[PE2] bgp 100

[PE2-bgp-default] ip vpn-instance vpn1

[PE2-bgp-default-vpn1] address-family ipv4 unicast

[PE2-bgp-default-ipv4-vpn1] import-route ospf 100

[PE2-bgp-default-ipv4-vpn1] import-route direct

[PE2-bgp-default-ipv4-vpn1] quit

[PE2-bgp-default-vpn1] quit

[PE2-bgp-default] quit

完成上述配置後,在PE設備上執行display ip routing-table vpn-instance命令,可以看到去往對端CE的路由是通過用戶網絡的OSPF路由,不是通過骨幹網的BGP路由。

(4)     配置Sham-link

# 配置PE 1。

[PE1] interface loopback 1

[PE1-LoopBack1] ip binding vpn-instance vpn1

[PE1-LoopBack1] ip address 3.3.3.3 32

[PE1-LoopBack1] quit

[PE1] ospf 100

[PE1-ospf-100] area 1

[PE1-ospf-100-area-0.0.0.1] sham-link 3.3.3.3 5.5.5.5

[PE1-ospf-100-area-0.0.0.1] quit

[PE1-ospf-100] quit

# 配置PE 2。

[PE2] interface loopback 1

[PE2-LoopBack1] ip binding vpn-instance vpn1

[PE2-LoopBack1] ip address 5.5.5.5 32

[PE2-LoopBack1] quit

[PE2] ospf 100

[PE2-ospf-100] area 1

[PE2-ospf-100-area-0.0.0.1] sham-link 5.5.5.5 3.3.3.3

[PE2-ospf-100-area-0.0.0.1] quit

[PE2-ospf-100] quit

4. 驗證配置

完成上述配置後,在PE設備上再次執行display ip routing-table vpn-instance命令,可以看到去往對端CE的路由變成了通過骨幹網的BGP路由,並且有去往Sham-link目的地址的路由。

在CE設備上執行display ip routing-table命令,可以看到去往對端CE的OSPF路由下一跳變為接入PE的接口GigabitEthernet0/0/1,即去往對端的VPN流量將通過骨幹網轉發。

在PE上執行display ospf sham-link命令可以看到Sham-link的建立情況。

以PE 1為例:

[PE1] display ospf sham-link

 

          OSPF Process 100 with Router ID 100.1.1.2

                  Sham link

 

 Area            Neighbor ID     Source IP       Destination IP  State  Cost

 0.0.0.1         120.1.1.2       3.3.3.3         5.5.5.5         P-2-P  1

執行display ospf sham-link area命令可以看到對端狀態為Full。

[PE1] display ospf sham-link area 1

 

          OSPF Process 100 with Router ID 100.1.1.2

 

 Sham link: 3.3.3.3 --> 5.5.5.5

 Neighbor ID: 120.1.1.2        State: Full

 Area: 0.0.0.1

 Cost: 1  State: P-2-P  Type: Sham

 Timers: Hello 10, Dead 40, Retransmit 5, Transmit Delay 1

 Request list: 0  Retransmit list: 0

1.28.14  配置BGP的AS號替換

1. 組網需求

如圖所示,CE 1和CE 2同屬於VPN 1,分別接入PE 1和PE 2,並且CE 1和CE 2複用AS號600。

2. 組網圖

圖1-39 BGP的AS號替換組網圖

設備

接口

IP地址

設備

接口

IP地址

CE 1

GE0/0/1

10.1.1.1/24

P

Loop0

2.2.2.9/32

 

GE0/0/2

100.1.1.1/24

 

GE0/0/1

20.1.1.2/24

PE 1

Loop0

1.1.1.9/32

 

GE0/0/2

30.1.1.1/24

 

GE0/0/1

10.1.1.2/24

PE 2

Loop0

3.3.3.9/32

 

GE0/0/2

20.1.1.1/24

 

GE0/0/1

10.2.1.2/24

CE 2

GE0/0/1

10.2.1.1/24

 

GE0/0/2

30.1.1.2/24

 

GE0/0/2

200.1.1.1/24

 

 

 

 

3. 配置步驟

(1)     配置基本MPLS L3VPN

¡     在MPLS骨幹網上配置OSPF,PE和P之間能夠學到對方Loopback接口的路由;

¡     在MPLS骨幹網上配置MPLS基本能力和MPLS LDP,建立LDP LSP;

¡     PE之間建立MP-IBGP對等體關係,發布VPN-IPv4路由;

¡     在PE 2上配置VPN 1的VPN實例,接入CE 2;

¡     在PE 1上配置VPN 1的VPN實例,接入CE 1;

¡     PE 1和CE 1、PE 2和CE 2之間配置BGP,將CE的路由引入PE。

上述配置可參考“1.28.1  配置MPLS L3VPN示例”,具體配置過程略。

# 完成上述配置後,在CE 2上執行display ip routing-table命令,可以看到CE 2能夠學到CE 1接入PE 1的接口所在網段(10.1.1.0/24)的路由,但沒有到達CE 1內部VPN(100.1.1.0/24)的路由。CE 1上也存在同樣的現象。

<CE2> display ip routing-table

 

Destinations : 17        Routes : 17

 

Destination/Mask    Proto  Pre  Cost         NextHop         Interface

0.0.0.0/32          Direct 0    0            127.0.0.1       InLoop0

10.1.1.0/24         BGP    255  0            10.2.1.2        GE0/0/1

10.2.1.0/24         Direct 0    0            10.2.1.1        GE0/0/1

10.2.1.0/32         Direct 0    0            10.2.1.1        GE0/0/1

10.2.1.1/32         Direct 0    0            127.0.0.1       InLoop0

10.2.1.255/32       Direct 0    0            10.2.1.1        GE0/0/1

127.0.0.0/8         Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/32        Direct 0    0            127.0.0.1       InLoop0

127.0.0.1/32        Direct 0    0            127.0.0.1       InLoop0

127.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

200.1.1.0/24        Direct 0    0            200.1.1.1       GE0/0/2

200.1.1.0/32        Direct 0    0            200.1.1.1       GE0/0/2

200.1.1.1/32        Direct 0    0            127.0.0.1       InLoop0

200.1.1.255/24      Direct 0    0            200.1.1.1       GE0/0/2

224.0.0.0/4         Direct 0    0            0.0.0.0         NULL0

224.0.0.0/24        Direct 0    0            0.0.0.0         NULL0

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

# 在PE上執行display ip routing-table vpn-instance命令,可以看到PE的VPN實例中有到達對端CE內部VPN的路由。

以PE 2為例:

<PE2> display ip routing-table vpn-instance vpn1

 

Destinations : 15        Routes : 15

 

Destination/Mask    Proto  Pre  Cost         NextHop         Interface

0.0.0.0/32          Direct 0    0            127.0.0.1       InLoop0

10.1.1.0/24         BGP    255  0            1.1.1.9         GE0/0/2

10.2.1.0/24         Direct 0    0            10.2.1.2        GE0/0/1

10.2.1.0/32         Direct 0    0            10.2.1.2        GE0/0/1

10.2.1.2/32         Direct 0    0            127.0.0.1       InLoop0

10.2.1.255/32       Direct 0    0            10.2.1.2        GE0/0/1

100.1.1.0/24        BGP    255  0            1.1.1.9         GE0/0/2

127.0.0.0/8         Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/32        Direct 0    0            127.0.0.1       InLoop0

127.0.0.1/32        Direct 0    0            127.0.0.1       InLoop0

127.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

200.1.1.0/24        BGP    255  0            10.2.1.1        GE0/0/1

224.0.0.0/4         Direct 0    0            0.0.0.0         NULL0

224.0.0.0/24        Direct 0    0            0.0.0.0         NULL0

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

# 在PE 2上打開BGP的Update報文調試信息開關,可以看到PE 2發布了去往100.1.1.0/24的路由,AS路徑信息為“100 600”。

<PE2> terminal monitor

<PE2> terminal logging level 7

<PE2> debugging bgp update vpn-instance vpn1 10.2.1.1 ipv4

<PE2> refresh bgp all export ipv4 vpn-instance vpn1

*Jun 13 16:12:52:096 2012 PE2 BGP/7/DEBUG:

         BGP.vpn1: Send UPDATE to peer 10.2.1.1 for following destinations:

         Origin       : Incomplete

         AS Path      : 100 600

         Next Hop     : 10.2.1.2

         100.1.1.0/24,

# 在CE 2上執行display bgp routing-table ipv4 peer received-routes命令,可以看到CE 2沒有接收100.1.1.0/24的路由。

<CE2> display bgp routing-table ipv4 peer 10.2.1.2 received-routes

 

 Total number of routes: 2

 

 BGP local router ID is 200.1.1.1

 Status codes: * - valid, > - best, d - dampened, h - history,

               s - suppressed, S - stale, i - internal, e - external

               Origin: i - IGP, e - EGP, ? - incomplete

 

     Network            NextHop         MED        LocPrf     PrefVal Path/Ogn

 

* >e 10.1.1.0/24        10.2.1.2                              0       100?

*  e 10.2.1.0/24        10.2.1.2        0                     0       100?

(2)     配置BGP的AS號替換功能

# 在PE 2上配置BGP的AS號替換功能。

<PE2> system-view

[PE2] bgp 100

[PE2-bgp-default] ip vpn-instance vpn1

[PE2-bgp-default-vpn1] peer 10.2.1.1 substitute-as

[PE2-bgp-default-vpn1] address-family ipv4 unicast

[PE2-bgp-default-ipv4-vpn1] peer 10.2.1.1 enable

[PE2-bgp-default-ipv4-vpn1] quit

[PE2-bgp-default-vpn1] quit

[PE2-bgp-default] quit

4. 驗證配置

# 可以看到PE 2向CE 2發布的路由中,100.1.1.0/24的AS路徑信息由“100 600”變為“100 100”:

*Jun 13 16:15:59:456 2012 PE2 BGP/7/DEBUG:

         BGP.vpn1: Send UPDATE to peer 10.2.1.1 for following destinations:

         Origin       : Incomplete

         AS Path      : 100 100

         Next Hop     : 10.2.1.2

         100.1.1.0/24,

# 再次查看CE 2接收的路由信息和路由表。

<CE2> display bgp routing-table ipv4 peer 10.2.1.2 received-routes

 

 Total number of routes: 3

 

 BGP local router ID is 200.1.1.1

 Status codes: * - valid, > - best, d - dampened, h - history,

               s - suppressed, S - stale, i - internal, e - external

               Origin: i - IGP, e - EGP, ? - incomplete

 

     Network            NextHop         MED        LocPrf     PrefVal Path/Ogn

 

* >e 10.1.1.0/24        10.2.1.2                              0       100?

*  e 10.2.1.0/24        10.2.1.2        0                     0       100?

* >e 100.1.1.0/24       10.2.1.2                              0       100 100?

<CE2> display ip routing-table

 

Destinations : 18        Routes : 18

 

Destination/Mask    Proto  Pre  Cost         NextHop         Interface

0.0.0.0/32          Direct 0    0            127.0.0.1       InLoop0

10.1.1.0/24         BGP    255  0            10.2.1.2        GE0/0/1

10.2.1.0/24         Direct 0    0            10.2.1.1        GE0/0/1

10.2.1.0/32         Direct 0    0            10.2.1.1        GE0/0/1

10.2.1.1/32         Direct 0    0            127.0.0.1       InLoop0

10.2.1.255/32       Direct 0    0            10.2.1.1        GE0/0/1

100.1.1.0/24        BGP    255  0            10.2.1.2        GE0/0/1

127.0.0.0/8         Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/32        Direct 0    0            127.0.0.1       InLoop0

127.0.0.1/32        Direct 0    0            127.0.0.1       InLoop0

127.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

200.1.1.0/24        Direct 0    0            200.1.1.1       GE0/0/2

200.1.1.0/32        Direct 0    0            200.1.1.1       GE0/0/2

200.1.1.1/32        Direct 0    0            127.0.0.1       InLoop0

200.1.1.255/32      Direct 0    0            200.1.1.1       GE0/0/2

224.0.0.0/4         Direct 0    0            0.0.0.0         NULL0

224.0.0.0/24        Direct 0    0            0.0.0.0         NULL0

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

# 在PE 1上也配置BGP的AS號替換功能後,CE 1和CE 2的接口GigabitEthernet0/0/2能夠相互Ping通。

1.28.15  配置BGP的AS號替換和SoO屬性

1. 組網需求

·     CE 1、CE 2和CE 3同屬於VPN 1,分別接入PE 1、PE 2和PE 3。

·     CE 1和CE 2位於同一個站點。

·     CE 1、CE 2和CE 3複用AS號600。

·     為了避免路由丟失,在PE上配置AS號替換;為了避免路由在CE 1和CE 2之間產生環路,在PE 1和PE 2上分別為CE 1和CE 2配置相同的SoO屬性。

2. 組網圖

圖1-40 BGP的AS號替換和SoO屬性組網圖

設備

接口

IP地址

設備

接口

IP地址

CE 1

Loop0

100.1.1.1/32

CE 3

Loop0

200.1.1.1 /32

 

GE0/0/1

10.1.1.1/24

 

GE0/0/1

10.3.1.1/24

CE 2

GE0/0/1

10.2.1.1/24

PE 2

Loop0

2.2.2.9/32

PE 1

Loop0

1.1.1.9/32

 

GE0/0/1

10.2.1.2/24

 

GE0/0/1

10.1.1.2/24

 

GE0/0/2

40.1.1.1/24

 

GE0/0/2

20.1.1.1/24

 

GE0/0/3

20.1.1.2/24

 

GE0/0/3

30.1.1.1/24

P

Loop0

3.3.3.9/32

PE 3

Loop0

4.4.4.9/32

 

GE0/0/1

30.1.1.2/24

 

GE0/0/1

10.3.1.2/24

 

GE0/0/2

40.1.1.2/24

 

GE0/0/2

50.1.1.2/24

 

GE0/0/3

50.1.1.1/24

 

3. 配置步驟

(1)     配置基本MPLS L3VPN

¡     在MPLS骨幹網上配置OSPF,PE和P之間能夠學到對方Loopback接口的路由;

¡     在MPLS骨幹網上配置MPLS基本能力和MPLS LDP,建立LDP LSP;

¡     PE之間建立MP-IBGP對等體關係,發布VPNv4路由;

¡     在PE 1上配置VPN 1的VPN實例,接入CE 1;

¡     在PE 2上配置VPN 1的VPN實例,接入CE 2;

¡     在PE 3上配置VPN 1的VPN實例,接入CE 3;

¡     PE 1和CE 1、PE 2和CE 2、PE 3和CE 3之間配置BGP,將CE的路由引入PE。

¡     上述配置可參考“1.28.1  配置MPLS L3VPN示例”,具體配置過程略。

(2)     配置BGP的AS號替換功能

# 在PE 1、PE 2和PE 3上配置BGP的AS號替換功能,具體配置參見“1.28.14  配置BGP的AS號替換”。

# 查看CE 2接收的路由信息,可以看到CE 1發來的路由100.1.1.1/32。可見,由於CE 1和CE 2位於同一站點,造成了路由環路。

<CE2> display bgp routing-table ipv4 peer 10.2.1.2 received-routes

 

Total number of routes: 6

 

 BGP local router ID is 1.1.1.9

 Status codes: * - valid, > - best, d - dampened, h - history,

               s - suppressed, S - stale, i - internal, e - external

               Origin: i - IGP, e - EGP, ? - incomplete

 

     Network            NextHop         MED        LocPrf     PrefVal Path/Ogn

 

* >e 10.1.1.0/24        10.2.1.2                              0       100?

*    10.2.1.0/24        10.2.1.2        0                     0       100?

*    10.2.1.1/32        10.2.1.2        0                     0       100?

* >e 10.3.1.0/24        10.2.1.2                              0       100?

* >e 100.1.1.1/32       10.2.1.2                              0       100 100?

* >e 200.1.1.1/32       10.2.1.2                              0       100 100?

(3)     配置BGP的SoO屬性

# 在PE 1上為對等體CE 1配置SoO屬性為1:100。

<PE1> system-view

[PE1] bgp 100

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] address-family ipv4

[PE1-bgp-default-ipv4-vpn1] peer 10.1.1.1 soo 1:100

# 在PE 2上為對等體CE 2配置SoO屬性為1:100。

<PE2> system-view

[PE2] bgp 100

[PE2-bgp-default] ip vpn-instance vpn1

[PE2-bgp-default-vpn1] address-family ipv4

[PE2-bgp-default-ipv4-vpn1] peer 10.2.1.1 soo 1:100

4. 驗證配置

# 由於配置的SoO屬性相同,PE 2不會將CE 1發過來的路由發布給CE 2。查看CE 2路由表,不會再看到100.1.1.1/32路由。

<CE2> display ip routing-table

 

Destinations : 14        Routes : 14

 

Destination/Mask    Proto  Pre  Cost         NextHop         Interface

0.0.0.0/32          Direct 0    0            127.0.0.1       InLoop0 

10.2.1.0/24         Direct 0    0            10.2.1.1        GE0/0/1

10.2.1.0/32         Direct 0    0            10.2.1.1        GE0/0/1

10.2.1.1/32         Direct 0    0            127.0.0.1       Inloop0

10.2.1.255/32       Direct 0    0            10.2.1.1        GE0/0/1

10.3.1.0/24         BGP    255  0            10.2.1.2        GE0/0/1

127.0.0.0/8         Direct 0    0            127.0.0.1       InLoop0

127.0.0.0/32        Direct 0    0            127.0.0.1       InLoop0

127.0.0.1/32        Direct 0    0            127.0.0.1       InLoop0

127.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

200.1.1.1/32        BGP    255  0            10.2.1.2        GE0/0/1

224.0.0.0/4         Direct 0    0            0.0.0.0         NULL0

224.0.0.0/24        Direct 0    0            0.0.0.0         NULL0

255.255.255.255/32  Direct 0    0            127.0.0.1       InLoop0

1.28.16  配置VPNv4路由備份VPNv4路由方式的MPLS L3VPN快速重路由

1. 組網需求

·     CE 1和CE 2屬於VPN 1。

·     CE與PE之間配置EBGP交換VPN路由信息。

·     PE與PE之間配置OSPF實現PE內部的互通、配置MP-IBGP交換VPNv4路由信息。

·     在PE 1上配置MPLS L3VPN快速重路由功能。PE 1和PE 2之間的路徑正常工作時,CE 1通過路徑CE 1—PE 1—PE 2—CE 2將流量轉發給CE 2;PE 1通過BFD檢測出PE 1到PE 2的公網LSP出現故障後,將流量切換到備份路徑,即CE 1通過路徑CE 1—PE 1—PE 3—CE 2將流量轉發給CE 2,從而縮短故障恢複時間。

2. 組網圖

圖1-41 VPNv4路由備份VPNv4路由組網圖

設備

接口

IP地址

設備

接口

IP地址

CE 1

Loop0

5.5.5.5/32

PE 1

Loop0

1.1.1.1/32

GE0/0/1

10.2.1.1/24

GE0/0/1

10.2.1.2/24

PE 2

Loop0

2.2.2.2/32

GE0/0/2

172.1.1.1/24

GE0/0/1

172.1.1.2/24

GE0/0/3

172.2.1.1/24

GE0/0/2

10.1.1.2/24

CE 2

Loop0

4.4.4.4/32

PE 3

Loop0

3.3.3.3/32

GE0/0/1

10.1.1.1/24

GE0/0/1

172.2.1.3/24

GE0/0/2

10.3.1.1/24

GE0/0/2

10.3.1.2/24

 

3. 配置步驟

(1)     配置各路由器接口的IP地址、BGP路由協議和MPLS L3VPN

請按照上麵的組網圖配置各接口的IP地址和子網掩碼。

完成MPLS L3VPN基本配置,具體配置過程請參見“1.28.1  配置MPLS L3VPN示例”。

(2)     配置MPLS L3VPN快速重路由

# 在PE 1上配置使用BFD檢測到達2.2.2.2/32(PE 1到達PE 2)的公網LSP的連通性。

<PE1> system-view

[PE1] mpls bfd enable

[PE1] mpls bfd 2.2.2.2 32

# 在PE 1上創建路由策略frr,為路由4.4.4.4/32指定快速重路由的備份下一跳地址為3.3.3.3(PE 3的地址)。

[PE1] ip prefix-list abc index 10 permit 4.4.4.4 32

[PE1] route-policy frr permit node 10

[PE1-route-policy-frr-10] if-match ip address prefix-list abc

[PE1-route-policy-frr-10] apply fast-reroute backup-nexthop 3.3.3.3

[PE1-route-policy-frr-10] quit

# 在PE 1上配置VPN實例vpn1的快速重路由功能引用路由策略frr。

[PE1] bgp 100

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] fast-reroute route-policy frr

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

# 在PE 1上配置從PE 2接收到的BGP VPNv4路由的首選值為100,大於從PE 3接收到的路由的首選值0,以保證PE 1優選從PE 2接收到的路由。

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 2.2.2.2 preferred-value 100

[PE1-bgp-default-vpnv4] quit

[PE1-bgp-default] quit

# 在 PE 2上使能MPLS BFD功能。

<PE2> system-view

[PE2] mpls bfd enable

4. 驗證配置

# 在PE 1上查看私網路由4.4.4.4/32,可以看到備份下一跳信息。

[PE1] display ip routing-table vpn-instance vpn1 4.4.4.4 32 verbose

 

Summary Count : 1

 

Destination: 4.4.4.4/32

   Protocol: BGP

 Process ID: 0

  SubProtID: 0x1                    Age: 00h00m03s

       Cost: 0               Preference: 255

      IpPre: N/A             QosLocalID: N/A

        Tag: 0                    State: Active Adv

  OrigTblID: 0x0                OrigVrf: default-vrf

    TableID: 0x102               OrigAs: 300

      NibID: 0x15000002          LastAs: 300

     AttrID: 0x2               Neighbor: 2.2.2.2

      Flags: 0x110060       OrigNextHop: 2.2.2.2

      Label: 1146           RealNextHop: 172.1.1.2

    BkLabel: 1275             BkNextHop: 172.2.1.3

  Tunnel ID: Invalid          Interface: GE0/0/2

BkTunnel ID: Invalid        BkInterface: GE0/0/3

   FtnIndex: 0x0           TrafficIndex: N/A

  Connector: N/A                 PathID: 0x0

  VpnPeerId: N/A                   Dscp: N/A

        Exp: N/A

1.28.17  配置VPNv4路由備份IPv4路由方式的MPLS L3VPN快速重路由

1. 組網需求

·     CE 1和CE 2屬於VPN 1。

·     CE與PE之間配置EBGP交換VPN路由信息。

·     PE與PE之間配置OSPF實現PE內部的互通、配置MP-IBGP交換VPNv4路由信息。

·     在PE 2上配置MPLS L3VPN快速重路由功能。PE 2和CE 2之間的路徑正常工作時,CE 1通過路徑CE 1—PE 1—PE 2—CE 2將流量轉發給CE 2;PE 2通過BFD檢測出PE 2到CE 2這條路徑出現故障後,將流量切換到備份路徑,即CE 1通過路徑CE 1—PE 1—PE 2—PE3—CE 2將流量轉發給CE 2,從而縮短故障恢複時間。

2. 組網圖

圖1-42 配置MPLS L3VPN快速重路由示例二組網圖

設備

接口

IP地址

設備

接口

IP地址

CE 1

Loop0

5.5.5.5/32

PE 2

Loop0

2.2.2.2/32

GE0/0/1

10.2.1.1/24

GE0/0/1

172.1.1.2/24

PE 1

Loop0

1.1.1.1/32

GE0/0/2

10.1.1.2/24

GE0/0/1

10.2.1.2/24

GE0/0/3

172.3.1.2/24

GE0/0/2

172.1.1.1/24

PE 3

Loop0

3.3.3.3/32

GE0/0/3

172.2.1.1/24

GE0/0/1

172.2.1.3/24

CE 2

Loop0

4.4.4.4/32

GE0/0/2

10.3.1.2/24

GE0/0/1

10.1.1.1/24

GE0/0/3

172.3.1.3/24

GE0/0/2

10.3.1.1/24

 

3. 配置步驟

(1)     配置各路由器接口的IP地址、BGP路由協議和MPLS L3VPN

請按照上麵的組網圖配置各接口的IP地址和子網掩碼。

完成MPLS L3VPN基本配置,具體配置過程請參見“1.28.1  配置MPLS L3VPN示例”。

(2)     配置MPLS L3VPN快速重路由

# 在PE 2上配置BFD echo報文的源IP地址為12.1.1.1。

<PE2> system-view

[PE2] bfd echo-source-ip 12.1.1.1

# 在PE 2上創建路由策略frr,為路由4.4.4.4/32指定快速重路由的備份下一跳地址為3.3.3.3(PE 3的地址)。

[PE2] ip prefix-list abc index 10 permit 4.4.4.4 32

[PE2] route-policy frr permit node 10

[PE2-route-policy-frr-10] if-match ip address prefix-list abc

[PE2-route-policy-frr-10] apply fast-reroute backup-nexthop 3.3.3.3

[PE2-route-policy-frr-10] quit

# 在PE 2上配置通過Echo方式的BFD會話檢測主路由的下一跳是否可達。

[PE2] bgp 100

[PE2-bgp-default] primary-path-detect bfd echo

# 在PE 2上配置VPN實例vpn1的快速重路由功能引用路由策略frr。

[PE2-bgp-default] ip vpn-instance vpn1

[PE2-bgp-default-vpn1] address-family ipv4 unicast

[PE2-bgp-default-ipv4-vpn1] fast-reroute route-policy frr

# 在PE 2上配置從CE 2接收到的BGP路由的首選值為200,大於從PE 3接收到的路由的首選值0,以保證PE 2優選從CE 2接收到的路由。

[PE2-bgp-default-ipv4-vpn1] peer 10.1.1.1 preferred-value 200

[PE2-bgp-default-vpn1] quit

[PE2-bgp-default] quit

4. 驗證配置

# 在PE 2上查看私網路由4.4.4.4/32,可以看到備份下一跳信息。

[PE2] display ip routing-table vpn-instance vpn1 4.4.4.4 32 verbose

 

Summary Count : 1

 

Destination: 4.4.4.4/32

   Protocol: BGP

 Process ID: 0

  SubProtID: 0x2                    Age: 01h54m24s

       Cost: 0               Preference: 10

      IpPre: N/A             QosLocalID: N/A

        Tag: 0                    State: Active Adv

  OrigTblID: 0x0                OrigVrf: vpn1

    TableID: 0x102               OrigAs: 300

      NibID: 0x15000002          LastAs: 300

     AttrID: 0x0               Neighbor: 10.1.1.1

      Flags: 0x10060        OrigNextHop: 10.1.1.1

      Label: NULL           RealNextHop: 10.1.1.1

    BkLabel: 1275             BkNextHop: 172.3.1.3

  Tunnel ID: Invalid          Interface: GE0/0/2

BkTunnel ID: 0x409          BkInterface: GE0/0/3

   FtnIndex: 0x0           TrafficIndex: N/A

  Connector: N/A

1.28.18  配置IPv4路由備份VPNv4路由方式的MPLS L3VPN快速重路由

1. 組網需求

·     CE 1和CE 2屬於VPN 1;

·     CE與PE之間配置EBGP交換VPN路由信息;

·     PE與PE之間配置OSPF實現PE內部的互通、配置MP-IBGP交換VPNv4路由信息。

·     在PE 1上配置MPLS L3VPN快速重路由功能。PE 1和PE 2之間的路徑正常工作時,CE 1通過路徑CE 1—PE 1—PE 2—CE 2將流量轉發給CE 2;PE 1通過BFD檢測出PE 1到PE 2這條路徑出現故障後,將流量切換到備份路徑,即CE 1通過路徑CE 1—PE 1—CE 2將流量轉發給CE 2,從而縮短故障恢複時間。

2. 組網圖

圖1-43 IPv4路由備份VPNv4路由組網圖

設備

接口

IP地址

設備

接口

IP地址

CE 1

Loop0

5.5.5.5/32

CE 2

Loop0

4.4.4.4/32

GE0/0/1

10.2.1.1/24

GE0/0/1

10.1.1.1/24

PE 1

Loop0

1.1.1.1/32

GE0/0/2

10.3.1.1/24

GE0/0/1

10.2.1.2/24

PE 2

Loop0

2.2.2.2/32

GE0/0/2

10.1.1.2/24

GE0/0/2

10.3.1.2/24

GE0/0/3

172.2.1.1/24

GE0/0/3

172.2.1.2/24

 

3. 配置步驟

(1)     配置各路由器接口的IP地址、BGP路由協議和MPLS L3VPN

請按照上麵的組網圖配置各接口的IP地址和子網掩碼。

完成MPLS L3VPN基本配置,具體配置過程請參見“1.28.1  配置MPLS L3VPN示例”。

(2)     配置MPLS L3VPN快速重路由

# 在PE 1上配置使用BFD檢測到達2.2.2.2/32(PE 1到達PE 2)的公網LSP的連通性。

<PE1> system-view

[PE1] mpls bfd enable

[PE1] mpls bfd 2.2.2.2 32

# 在PE 1上創建路由策略frr,為路由4.4.4.4/32指定快速重路由的備份下一跳地址為10.1.1.1(CE 2的地址)。

[PE1] ip prefix-list abc index 10 permit 4.4.4.4 32

[PE1] route-policy frr permit node 10

[PE1-route-policy-frr-10] if-match ip address prefix-list abc

[PE1-route-policy-frr-10] apply fast-reroute backup-nexthop 10.1.1.1

[PE1-route-policy-frr-10] quit

# 在PE 1上配置VPN實例vpn1的快速重路由功能引用路由策略frr。

[PE1] bgp 100

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] fast-reroute route-policy frr

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

# 在PE 1上配置從PE 2接收到的BGP VPNv4路由的首選值為200,大於從CE 2接收到的IPv4單播路由的首選值0,以保證PE 1優選從PE 2接收到的路由。

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 2.2.2.2 preferred-value 200

[PE1-bgp-default-vpnv4] quit

[PE1-bgp-default] quit

# 在 PE 2上使能MPLS BFD功能。

<PE2> system-view

[PE2] mpls bfd enable

4. 驗證配置

# 在PE 1上查看私網路由4.4.4.4/32,可以看到備份下一跳信息。

[PE1] display ip routing-table vpn-instance vpn1 4.4.4.4 32 verbose

 

Summary Count : 1

 

Destination: 4.4.4.4/32

   Protocol: BGP

 Process ID: 0

  SubProtID: 0x1                    Age: 00h00m04s

       Cost: 0               Preference: 255

      IpPre: N/A             QosLocalID: N/A

        Tag: 0                    State: Active Adv

  OrigTblID: 0x0                OrigVrf: default-vrf

    TableID: 0x102               OrigAs: 300

      NibID: 0x15000004          LastAs: 300

     AttrID: 0x1               Neighbor: 2.2.2.2

      Flags: 0x110060       OrigNextHop: 2.2.2.2

      Label: 1275           RealNextHop: 172.2.1.2

    BkLabel: NULL             BkNextHop: 10.1.1.1

  Tunnel ID: 0x409            Interface: GE0/0/3

BkTunnel ID: Invalid        BkInterface: GE0/0/2

   FtnIndex: 0x0           TrafficIndex: N/A

  Connector: N/A                 PathID: 0x0

  VpnPeerId: N/A                   Dscp: N/A

        Exp: N/A

 

不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!

BOB登陆
官網
聯係我們