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

23-Segment Routing配置指導

目錄

05-IP L3VPN over SRv6配置

本章節下載 05-IP L3VPN over SRv6配置  (797.25 KB)

05-IP L3VPN over SRv6配置

目 

1 IP L3VPN over SRv6

1.1 IP L3VPN over SRv6簡介

1.1.1 IP L3VPN over SRv6基本原理

1.1.2 路由信息發布

1.1.3 報文轉發

1.2 SRv6網絡與MPLS網絡互通

1.2.1 HoVPN

1.2.2 Option B跨域VPN

1.3 SRv6網絡與EVPN L3VPN網絡互通

1.4 SRv6 VPN網絡跨域互通

1.4.1 跨域IP L3VPN over SRv6網絡中轉代理SRv6 SID(邊界設備部署VPN實例方式)

1.5 IP L3VPN over SRv6快速重路由

1.6 IP L3VPN over SRv6配置任務簡介

1.7 配置SRv6 SID

1.8 配置BGP引用Locator段

1.9 配置PE-PE間交互BGP VPNv4/VPNv6路由

1.10 配置IPv6對等體之間交換SRv6 SID

1.11 配置為私網路由按下一跳分配End.DX4 SID/End.DX6 SID

1.12 配置BGP VPNv4/VPNv6路由

1.12.1 配置限製和指導

1.12.2 控製BGP VPNv4/VPNv6路由的接收和保存

1.12.3 配置BGP VPNv4/VPNv6路由的首選值

1.12.4 配置BGP VPNv4/VPNv6路由反射

1.12.5 配置BGP VPNv4/VPNv6路由屬性

1.12.6 配置BGP VPNv4/VPNv6路由過濾

1.13 配置路由迭代方式

1.14 配置封裝的IPv6報文頭的源地址

1.15 開啟對等體/對等體組之間的SRv6 VPN兼容功能

1.16 配置路由重生成

1.17 配置修改VPNv4/VPNv6/EVPN路由

1.18 Option B跨域VPN

1.19 配置SRv6網絡與EVPN L3VPN網絡互通

1.20 配置跨域IP L3VPN over SRv6網絡中轉代理SRv6 SID

1.21 配置IP L3VPN over SRv6快速重路由

1.21.1 功能簡介

1.21.2 配置限製和指導

1.21.3 配置步驟

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

1.23 IP L3VPN over SRv6顯示和維護

1.23.1 複位BGP會話

1.23.2 顯示和維護IP L3VPN over SRv6的運行狀態

1.24 IP L3VPN over SRv6典型配置舉例

1.24.1 IPv4 L3VPN over SRv6配置舉例

1.24.2 IPv4 L3VPN HoVPN over MPLS-to-SRv6配置舉例

1.24.3 Option B跨域VPN配置舉例

 


1 IP L3VPN over SRv6

1.1  IP L3VPN over SRv6簡介

IP L3VPN over SRv6是指通過SRv6隧道承載IP L3VPN業務,通過IPv6網絡透明傳輸用戶三層數據,實現屬於同一個VPN、位於不同地理位置的用戶互通。

1.1.1  IP L3VPN over SRv6基本原理

圖1-1所示,通過BGP協議在IPv6骨幹網上發布用戶站點的IPv4/IPv6私網路由,使用PE間的單跳SRv6隧道承載私網報文,在骨幹網上根據IGP計算的最優路徑轉發私網報文,從而實現通過IPv6骨幹網連接屬於同一個VPN、位於不同地理位置的用戶。

圖1-1 IP L3VPN over SRv6組網示意圖

 

1.1.2  路由信息發布

IPv4 L3VPN over SRv6和IPv6 L3VPN over SRv6的路由發布過程類似,以IPv4 L3VPN over SRv6為例,如圖1-1所示,CE 1路由發布到CE 2的過程為:

(1)     CE 1使用靜態路由、RIP、OSPF、IS-IS、EBGP或IBGP,將本站點的公網或私網路由發布給PE 1。

(2)     PE 1從CE 1學習到路由信息後,PE 1將私網路由存放到相應的VPN實例1的路由表中。PE 1為私網路由增加RD和RT屬性,並按VPN實例為這些路由分配私網標簽End.DT4 SID、End.DT46 SID(即同一VPN實例的所有私網路由分配相同的End.DT4 SID),或按下一跳分配End.DX4 SID(即VPN實例中相同下一跳的私網路由分配相同的End.DX4 SID),形成VPNv4路由。PE 1通過MP-BGP把VPNv4路由發布給PE 2。

(3)     PE 2收到PE 1發布的VPNv4路由後,將該路由加入到VPN實例1的路由表中並將VPNv4路由轉換成IPv4路由發布給CE 2。

(4)     CE 2收到路由後,學習到路由表中,即CE 2學習到CE 1的路由。

1.1.3  報文轉發

IP L3VPN over SRv6支持SRv6 BE、SRv6 TE和SRv6 TE/SRv6 BE混合三種路由迭代方式。采用不同的路由迭代方式時,報文轉發過程有所不同。

1. SRv6 BE方式

又稱為基於SID的轉發方式。該方式根據封裝的SRv6 SID查找IPv6路由表進行轉發。

IPv4 L3VPN over SRv6和IPv6 L3VPN over SRv6的報文轉發過程類似,以IPv4 L3VPN over SRv6為例,完成路由發布後,報文從CE 2到CE 1的轉發過程為:

(1)     CE 2發送IPv4報文給PE 2。

(2)     PE 2從綁定了VPN實例的接口上收到私網報文後,在VPN實例1的路由表中查找匹配IPv4目的地址的路由,找到對應的End.DT4 SID、End.DT46 SID或End.DX4 SID。然後為報文封裝IPv6報文頭,在IPv6報文頭中End.DT4 SID、End.DT46 SID或End.DX4 SID作為其目的地址。

(3)     PE 2根據End.DT4 SID、End.DT46 SID或End.DX4 SID查找IPv6路由表,通過最優IGP路由將報文轉發給P。

(4)     P根據End.DT4 SID、End.DT46 SID或End.DX4 SID查找IPv6路由表,通過最優IGP路由將報文轉發給PE 1。

(5)     PE 1接收到報文後,根據報文攜帶的SID類型的不同,處理方式不同:

¡     如果報文頭攜帶的是End.DT4 SID或End.DT46 SID,PE 1根據End.DT4 SID查找Local SID表,執行End.DT4 SID或End.DT46 SID對應的轉發動作,即解封裝報文去掉IPv6報文頭,並根據End.DT4 SID或End.DT46 SID匹配VPN實例1,在VPN實例1的路由表中,查表轉發,將報文發送給CE 1。

¡     如果報文頭攜帶的是End.DX4 SID,PE 1根據End.DX4 SID查找Local SID表,執行End.DX4 SID對應的轉發動作,即解封裝報文去掉IPv6報文頭,並按照End.DX4 SID綁定的下一跳和出接口將報文發送給CE 1。

2. SRv6 TE方式

又稱為基於SRv6 TE Policy的轉發方式。該方式根據報文屬性查找匹配的SRv6 TE Policy,為報文添加攜帶SRv6 SID和SRv6 TE Policy SID列表的SRH頭後,通過SRv6 TE Policy轉發該報文。

可以通過如下方式將報文引入到SRv6 TE Policy進行轉發(即SRv6 TE Policy引流):

·     基於Color引流:查找是否存在Color和Endpoint地址與VPN路由的Color擴展團體屬性和下一跳地址完全相同的SRv6 TE Policy。若存在,則將該VPN路由迭代到SRv6 TE Policy。當設備收到匹配該VPN路由的報文時,會通過SRv6 TE Policy轉發該報文。

·     基於隧道策略引流:根據路由下一跳地址在隧道策略中查找匹配的SRv6 TE Policy。通過首選隧道策略或負載分擔隧道策略,可以實現用指定SRv6 TE Policy的路徑作為公網隧道來轉發私網報文。

隧道策略的詳細介紹,請參見“MPLS配置指導”中的“隧道策略”;SRv6 TE Policy的詳細介紹,請參見“Segment Routing配置指導”中的“SRv6 TE Policy”。

3. SRv6 TE/SRv6 BE混合方式

該方式優先通過SRv6 TE方式選擇轉發路徑;如果SRv6 TE方式未找到可用的SRv6 TE Policy,則通過SRv6 BE方式選擇轉發路徑。

4. SRv6 TE快速切換為SRv6 BE方式

該方式下SRv6 TE路徑(SRv6 TE選擇的路徑)和SRv6 BE路徑(SRv6 BE選擇的路徑)形成FRR。其中SRv6 TE路徑為主路徑,SRv6 BE路徑為備份路徑。業務流量優先通過SRv6 TE路徑轉發。當SRv6 TE路徑故障或者不存在SRv6 TE路徑時,可以將業務流量快速切換到SRv6 BE備份路徑轉發,以實現快速保護,避免流量長時間丟失。

1.2  SRv6網絡與MPLS網絡互通

當承載VPN路由的骨幹網跨越SRv6網絡和MPLS網絡時,需要實現SRv6網絡和MPLS網絡互通。目前支持在以下組網中實現互通:

·     HoVPN

·     Option B跨域VPN

1.2.1  HoVPN

HoVPN(Hierarchy of VPN,分層VPN),又稱為HoPE(Hierarchy of PE,分層PE),將一台PE的功能拆分到多台PE上,從而避免PE成為網絡的瓶頸,以便於大規模部署VPN網絡。

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

UPE、MPE和SPE的功能分別為:

·     UPE:直接連接用戶網絡,主要完成用戶接入功能。

·     MPE:連接UPE和SPE,管理大量的UPE發布的路由信息。

·     SPE:位於運營商網絡內部,主要完成VPN路由的管理和發布。

圖1-2所示,在HoVPN網絡中,UPE與MPE間網絡、MPE與SPE間網絡可能會采用不同轉發方式,即SRv6和MPLS。在使用公網承載L3VPN私網數據,並使用HoVPN方案分層部署VPN時,私網數據跨公網轉發的路徑有以下幾種混合組合情況:

·     L3VPN over MPLS-to-SRv6

·     L3VPN over SRv6-to-MPLS

圖1-2 HoVPN方案組網圖

 

HoVPN網絡中,MPE連接MPLS網絡和SRv6網絡。需要在MPE上進行路由重生成,並優選最優路由發布:

·     MPE從MPLS L3VPN網絡接收到VPNv4/VPNv6路由後,如果路由中的Route Target屬性與本地VPN實例的Import Route Target屬性匹配,則修改路由中的RD和RT信息,並為路由分配SRv6 SID,將SRv6 SID和私網標簽關聯,然後將修改路由信息後的路由發布到SRv6網絡。SRv6 SID類型包括End.DT4 SID、End.DT6 SID、End.DT46 SID、End.DX4 SID和End.DX6 SID。

·     MPE從SRv6網絡接收到VPNv4/VPNv6路由後,如果路由中的Route Target屬性與本地VPN實例的Import Route Target屬性匹配,則修改路由中的RD和RT信息,並為路由分配私網標簽,將私網標簽和SRv6 SID關聯,然後將修改路由信息後的路由發布到MPLS L3VPN網絡。

UPE、SPE學習到重新生成的最優路由後,以L3VPN over MPLS-to-SRv6組網為例,根據路由信息轉發報文的過程為:

(2)     UPE接收到CE 1發送的報文後,為報文封裝MPLS標簽將報文轉發給MPE。

(3)     MPE收到報文後,根據私網標簽與SRv6 SID的關聯關係,將報文的私網標簽剝離,然後為報文封裝SRv6 SID,並通過SRv6 BE或SRv6 TE方式將報文發送給SPE。

(4)     SPE收到報文後,根據SRv6 SID解封裝報文,將報文發送給CE 2。

1.2.2  Option B跨域VPN

圖1-3所示,在Option B跨域VPN場景中,如果一個AS內部署MPLS網絡,另一個AS內部署SRv6網絡,為了實現跨域互通,需要實現SRv6 SID與MPLS標簽互相轉換。

圖1-3 跨域VPN-Option B組網示意圖

 

2. End.T SID

在Option B跨域VPN場景中,SRv6網絡中的ASBR會按照FEC(目的IPv4地址/掩碼或目的IPv6地址/前綴長度)分配End.T SID,並通過IGP協議通告給網絡中的其他SRv6節點。End.T SID對應的轉發動作為剝掉外層IPv6頭,並根據End.T SID查找IPv6 FIB表轉發報文。

SRv6網絡中的ASBR會為從SRv6網絡轉發到MPLS網絡的報文封裝End.T SID。

3. 路由發布

圖1-3所示,CE 1路由發布到CE 2的過程為:

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

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

(3)     ASBR 2從ASBR 1接收到VPNv4路由後,通過MP-IBGP將路由發布給PE 2。ASBR 2在發布路由時,將路由的下一跳地址改為自身的地址,為路由分配End.T SID,並為End.T SID和MPLS標簽L2建立關聯。

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

圖1-3所示,CE 2路由發布到CE 1的過程為:

(1)     PE 2從CE 2學習到私網路由後,通過MP-IBGP發布給ASBR 2。PE 2為私網路由分配SRv6 SID。SRv6 SID類型包括End.DT4 SID、End.DT6 SID、End.DT46 SID、End.DX4 SID和End.DX6 SID。

(2)     ASBR 2接收PE 2發布的VPNv4路由,並通過MP-EBGP將VPNv4路由發布給ASBR 1。ASBR 2發布該路由時,將路由的下一跳地址改為自身的地址,為路由分配新的MPLS標簽L2,並為MPLS標簽L2和SRv6 SID建立關聯。

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

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

Option B跨域VPN場景中,ASBR需要接收所有跨域VPN的私網路由,因此,ASBR上不能根據Route Target屬性對接收的VPN-IPv4路由進行過濾。

4. 報文轉發

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

(1)     PE 2接收到報文後,為其封裝End.T SID,並將報文轉發給ASBR 2。

(2)     ASBR 2收到報文後,剝掉外層IPv6頭,並根據End.T SID查找IPv6 FIB表轉發報文,出標簽為L2。ASBR 2為報文重新封裝MPLS標簽L2,並將報文轉發給ASBR 1。ASBR 1和ASBR 2之間的報文隻帶一層MPLS標簽。

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

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

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

(5)     PE 1接收到報文後,為其封裝兩層標簽,私網標簽L1和PE 1到ASBR 1的公網標簽,並將報文轉發給ASBR 1。

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

(7)     ASBR 2收到報文後,將私網標簽L2替換為SRv6 SID,根據SRv6 SID將報文轉發給PE 2。

(8)     PE 2收到報文後,根據SRv6 SID執行對應的轉發動作,將報文轉發給CE 2。

1.3  SRv6網絡與EVPN L3VPN網絡互通

圖1-4所示,數據中心內部署EVPN L3VPN,數據中心之間通過IP L3VPN over SRv6網絡連接。為實現不同數據中心跨IP L3VPN over SRv6網絡互聯,數據中心邊界設備ASBR上需要配置SRv6網絡與EVPN L3VPN網絡互通功能。

圖1-4 SRv6網絡與EVPN L3VPN網絡互通組網圖

 

在ASBR設備上配置SRv6網絡與EVPN L3VPN網絡互通功能後,ASBR將對路由進行如下處理:

·     ASBR從EVPN L3VPN網絡接收到攜帶MPLS標簽的EVPN IP前綴路由後,匹配RT屬性,將其添加到對應VPN實例的路由表中,並重生成為VPNv4路由。ASBR根據該VPN實例的配置為路由分配SRv6 SID,並將攜帶SRv6 SID的VPNv4路由發布到IP L3VPN over SRv6網絡。

·     ASBR從IP L3VPN over SRv6網絡接收到攜帶SRv6 SID的VPNv4路由後,匹配RT屬性,將其添加到對應VPN實例的路由表中,並重生成為EVPN IP前綴路由。ASBR根據該VPN實例的配置為路由分配MPLS標簽,並將攜帶MPLS標簽的EVPN IP前綴路由發布到EVPN L3VPN網絡。

進行路由重生成後,還需要在ASBR上開啟SRv6網絡與MPLS網絡互通功能,使SRv6 SID和MPLS標簽關聯。

圖1-5 SRv6網絡與MPLS L3VPN網絡互通報文轉發過程圖

 

圖1-5所示,PE和ASBR均完成路由學習後,Site 1和Site 2跨數據中心互訪的報文轉發過程為:

(2)     PE 2接收到Site 2內發送的報文後,為報文添加私網標簽。PE 2通過公網隧道將報文轉發給ASBR 2。

(3)     ASBR 2根據私網標簽判斷接收到報文所屬的VPN實例,在VPN實例內查找路由表,為報文封裝SRv6 SID,並通過SRv6 BE或SRv6 TE方式將報文發送給ASBR 1。

(4)     ASBR 1根據SRv6 SID判斷接收到報文所屬的VPN實例,解除SRv6封裝後,在VPN實例內查找路由表,為報文添加私網標簽。ASBR 1通過公網隧道將報文發送給PE 1。

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

1.4  SRv6 VPN網絡跨域互通

1.4.1  跨域IP L3VPN over SRv6網絡中轉代理SRv6 SID(邊界設備部署VPN實例方式)

在多個AS域內均部署了SRv6的跨域SRv6 VPN網絡中,如果要實現跨AS域的用戶互通,通常需要將Locator網段路由信息進行跨域發布(例如將IGP協議發布的Locator網段路由引入到BGP協議中進行跨域發布)。將Locator網段路由信息進行跨域發布後,不同AS域間的PE設備即可以建立起跨域的SRv6轉發路徑。但是在一些場景中,網絡管理員處於安全性考慮,不希望將Locator網段路由信息在AS域間傳遞。此時網絡管理員可以將AS域的邊界設備作為中轉代理設備,通過將路由攜帶的SRv6 SID修改為本地VPN實例的SRv6 SID,使得Locator網段路由無需發布到另一AS域內,不同AS域的PE設備就可以建立起跨域的SRv6轉發路徑。

圖1-6 跨域IP L3VPN over SRv6網絡中轉代理SRv6 SID組網圖

 

圖1-6所示,為了使得PE 1的Locator網段路由信息不發布給PE 2也能實現Site 1和Site 2互通,在ASBR 2設備上配置修改BGP路由攜帶的SRv6 SID功能後,ASBR 2將對BGP路由進行如下處理:

·     ASBR 2從ASBR 1接收到攜帶了SRv6 SID的BGP VPNv4/VPNv6路由後,將這些路由加入到本地RT匹配的VPN實例IP路由表中,並刪除這些路由攜帶的SRv6 SID,在本地RT匹配的VPN實例內為BGP VPNv4/VPNv6路由重新申請SRv6 SID,重新申請的SRv6 SID和原SID類型一致。

提示

不支持重新申請End.DX4 SID和End.DX6 SID類型的SRv6 SID。

 

·     ASBR 2向PE 2轉發收到的BGP VPNv4/VPNv6路由時,隻需要發送重新申請了SRv6 SID的路由。

圖1-7 跨域IP L3VPN over SRv6網絡中轉代理SRv6 SID報文轉發過程圖

 

圖1-7所示,完成路由學習後,Site 2訪問Site 1的報文轉發過程為:

(2)     PE 2接收到Site 2內發送的報文後,在VPN實例內查找路由表,查找到路由對應的SRv6 SID,並為報文封裝SRv6 SID(該SRv6 SID為ASBR 2在本地VPN實例內為BGP路由重新申請的SRv6 SID),通過SRv6 BE或SRv6 TE方式將報文發送給ASBR 2。

(3)     ASBR 2根據SRv6 SID判斷接收到報文所屬的VPN實例,並解除SRv6封裝,在對應VPN實例內查找路由表,查找到路由對應的SRv6 SID,重新為報文封裝SRv6 SID(該SRv6 SID為PE 1發布的原始SRv6 SID),並通過SRv6 BE或SRv6 TE方式將報文發送給PE 1。

(4)     PE 1收到報文後,根據SRv6 SID判斷接收到報文所屬的VPN實例,並解除SRv6封裝,在對應VPN實例內查找路由表轉發報文給Site 1。

在上述過程中,除了ASBR設備需要獲得對端AS域內PE設備發布Locator網段路由信息外,PE設備均無需知曉對端AS域內PE設備發布的Locator網段路由信息,僅需獲得當前AS域的ASBR發布的Locator網段路由即可。ASBR設備的這一“中轉”行為,解決了Locator網段路由未跨域發布時無法進行SRv6網絡間站點用戶互通的問題。

1.5  IP L3VPN over SRv6快速重路由

說明

僅站點網絡屬於私網的IP L3VPN over SRv6支持快速重路由。

 

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

目前,IP L3VPN over SRv6快速重路由的路徑備份方式為VPNv4路由備份VPNv4路由和VPNv6路由備份VPNv6路由。

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

 

IPv4 L3VPN over SRv6和IPv6 L3VPN over SRv6的快速重路由功能類似,以VPNv4路由備份VPNv4路由為例。如圖1-8所示,在入節點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檢測,通過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功能的詳細介紹,請參見“可靠性配置指導”中“BFD”。

1.6  IP L3VPN over SRv6配置任務簡介

IP L3VPN over SRv6配置任務如下:

(1)     配置VPN實例並綁定PE連接CE的接口

在PE設備上執行本配置,配置方法請參見“MPLS配置指導”中的“MPLS L3VPN”。

(2)     配置PE-CE間的路由交換

在PE-CE間配置IPv4路由協議(包括靜態路由、RIP、OSPF、IS-IS、EBGP或IBGP)或IPv6路由協議(包括IPv6靜態路由、RIPng、OSPFv3、IPv6 IS-IS、EBGP或IBGP)

CE使用IPv4路由協議或IPv6路由協議,將本站點的VPN路由發布給PE。在PE上需要為路由協議關聯指定VPN實例,在CE上配置普通路由協議即可。關於各個路由協議的具體配置,請參見“三層技術-IP路由配置指導”。

(3)     配置PE-PE間的路由交換

a.     配置SRv6 SID

本功能用來靜態配置End.DT4 SID、End.DT6 SID、End.DT46 SID、End.DX4 SID或End.DX6 SID。

b.     配置BGP引用Locator段

通過引用Locator段後,BGP路由才可以通告Locator段內的SRv6 SID。

c.     配置PE-PE間交互BGP VPNv4/VPNv6路由

d.     配置IPv6對等體之間交換SRv6 SID

隻有配置本功能後,PE設備之間交換VPNv4/VPNv6路由時才可以交換私網標簽End.DT4 SID/End.DT6 SID/End.DT46 SID/End.DX4 SID/End.DX6 SID。

e.     (可選)配置為私網路由按下一跳分配End.DX4 SID/End.DX6 SID

配置本功能後,PE設備可以為BGP私網路由按下一跳分配End.DX4 SID/End.DX6 SID。

f.     (可選)配置BGP VPNv4/VPNv6路由

(4)     配置路由迭代方式

(5)     配置封裝的IPv6報文頭的源地址

本功能用來指定IP L3VPN over SRv6骨幹網中報文封裝的IPv6報文頭的源地址。

(6)     (可選)開啟對等體/對等體組之間的SRv6 VPN兼容功能

(7)     (可選)配置SRv6網絡和MPLS網絡互通

¡     配置路由重生成

¡     配置修改VPNv4/VPNv6/EVPN路由

¡     Option B跨域VPN

(8)     (可選)配置SRv6網絡與EVPN L3VPN網絡互通

(9)     (可選)配置跨域IP L3VPN over SRv6網絡中轉代理SRv6 SID

(10)     (可選)配置IP L3VPN over SRv6快速重路由

1.7  配置SRv6 SID

1. 配置限製和指導

PE之間傳遞BGP VPNv4/VPNv6路由信息時,配置Opcode段必須指定VPN實例。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     開啟SRv6功能,並進入SRv6視圖。

segment-routing ipv6

(3)     配置Locator段,並進入SRv6 Locator視圖。

locator locator-name [ ipv6-prefix ipv6-address prefix-length [ args args-length | static static-length ] * ]

(4)     配置Opcode段。

¡     配置End.DT4 SID。

opcode { opcode | hex hex-opcode } end-dt4 [ vpn-instance vpn-instance-name ]

指定的VPN實例必須已經存在。不同VPN實例不能配置相同End.DT4 SID。

¡     配置End.DT6 SID。

opcode { opcode | hex hex-opcode } end-dt6 [ vpn-instance vpn-instance-name ]

指定的VPN實例必須已經存在。不同VPN實例不能配置相同End.DT6 SID。

¡     配置End.DT46 SID。

opcode { opcode | hex hex-opcode } end-dt46 [ vpn-instance vpn-instance-name ]

指定的VPN實例必須已經存在。不同VPN實例不能配置相同End.DT46 SID。

¡     配置End.DX4 SID。

opcode { opcode | hex hex-opcode } end-dx4 interface interface-type interface-number nexthop nexthop-ipv4-address [ vpn-instance vpn-instance-name ]

指定的VPN實例必須已經存在。不同下一跳和出接口不能配置相同End.DX4 SID。

¡     配置End.DX6 SID。

opcode { opcode | hex hex-opcode } end-dx6 interface interface-type interface-number nexthop nexthop-ipv6-address [ vpn-instance vpn-instance-name ]

指定的VPN實例必須已經存在。不同下一跳和出接口不能配置相同End.DX6 SID。

1.8  配置BGP引用Locator段

1. 功能簡介

在IP L3VPN over SRv6組網場景中,在指定VPN實例的BGP-VPN IPv4/IPv6單播地址族視圖下配置本功能後,PE設備將為指定VPN實例的私網路由在引用的Locator段內申請SRv6 SID。

使用End.DT4 SID/End.DT6 SID/End.DT46 SID/End.DX4 SID/End.DX6 SID時,都需要執行本配置。

2. 配置限製和指導

配置本功能前,必須滿足以下條件:

·     指定的Locator必須存在。

·     End.DT4 SID/End.DT6 SID/End.DT46 SID/End.DX4 SID/End.DX6 SID所在VPN實例與私網的VPN實例必須相同。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

ip vpn-instance vpn-instance-name

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

¡     進入BGP-VPN IPv4單播地址族視圖。

address-family ipv4 [ unicast ]

¡     進入BGP-VPN IPv6單播地址族視圖。

address-family ipv6 [ unicast ]

(5)     配置BGP引用Locator段。

segment-routing ipv6 locator locator-name [ auto-sid-disable ]

缺省情況下,未引用Locator段。

1.9  配置PE-PE間交互BGP VPNv4/VPNv6路由

1. 配置限製和指導

本節所有命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP”。

PE之間不能同時建立IPv4和IPv6對等體,否則影響路由優選,無法通過SRv6隧道轉發流量。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

peer { group-name | ipv6-address [ prefix-length ] } as-number as-number

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

peer { group-name | ipv6-address [ prefix-length ] } connect-interface interface-type interface-number

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

(5)     進入BGP VPNv4地址族視圖或BGP VPNv6地址族視圖。

¡     創建BGP VPNv4地址族,並進入BGP VPNv4地址族視圖。

address-family vpnv4

¡     創建BGP VPNv6地址族,並進入BGP VPNv6地址族視圖。

address-family vpnv6

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

peer { group-name | ipv6-address [ prefix-length ] } enable

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

1.10  配置IPv6對等體之間交換SRv6 SID

1. 功能簡介

配置本功能後,IPv6對等體之間可以通過VPNv4/VPNv6路由交換SRv6 SID信息。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

¡     進入BGP VPNv4地址族視圖。

address-family vpnv4

¡     進入BGP VPNv6地址族視圖。

address-family vpnv6

(4)     配置與指定IPv6對等體之間交換SRv6 SID信息。

peer { group-name | ipv6-address [ prefix-length ] } prefix-sid

缺省情況下,IPv6對等體之間不能交換SRv6 SID信息。

1.11  配置為私網路由按下一跳分配End.DX4 SID/End.DX6 SID

1. 功能簡介

在IP L3VPN over SRv6場景中,缺省情況下,PE根據VPN實例為BGP私網路由分配相同SID。PE對接收到的報文解封裝後,會在SID標識的VPN實例內查找路由表,將報文轉發給CE。

如果希望不查路由表,直接快速地將報文轉發給下一跳,則可以基於下一跳地址為私網路由分配End.DX4/End.DX6 SID。

2. 配置限製和指導

本功能不會為直連路由分配End.DX4 SID或者End.DX6 SID。

3. 配置準備

配置本功能前,必須先在BGP-VPN IPv4單播地址族視圖或BGP-VPN IPv6單播地址族引用Locator段。

4. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

ip vpn-instance vpn-instance-name

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

¡     進入BGP-VPN IPv4單播地址族視圖。

address-family ipv4 [ unicast ]

¡     進入BGP-VPN IPv6單播地址族視圖。

address-family ipv6 [ unicast ]

(5)     配置根據下一跳分配End.DX4 SID或End.DX6 SID。請選擇其中一項進行配置。

¡     配置BGP私網路由為所有下一跳分配End.DX4/End.DX6 SID。

segment-routing ipv6 apply-sid all-nexthop

¡     依次執行以下命令,配置BGP私網路由為指定下一跳分配End.DX4/End.DX6 SID。

segment-routing ipv6 apply-sid specify-nexthop

nexthop nexthop-address interface interface-type interface-number

缺省情況下,根據VPN實例為私網路由分配SID。

 

1.12  配置BGP VPNv4/VPNv6路由

1.12.1  配置限製和指導

本節所有命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP”。

1.12.2  控製BGP VPNv4/VPNv6路由的接收和保存

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

¡     進入BGP VPNv4地址族視圖。

address-family vpnv4

¡     進入BGP VPNv6地址族視圖。

address-family vpnv6

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

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

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

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

peer { group-name | ipv6-address [ prefix-length ] } keep-all-routes

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

1.12.3  配置BGP VPNv4/VPNv6路由的首選值

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

¡     進入BGP VPNv4地址族視圖。

address-family vpnv4

¡     進入BGP VPNv6地址族視圖。

address-family vpnv6

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

peer { group-name | ipv6-address [ prefix-length ] } preferred-value value

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

1.12.4  配置BGP VPNv4/VPNv6路由反射

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

¡     進入BGP VPNv4地址族視圖。

address-family vpnv4

¡     進入BGP VPNv6地址族視圖。

address-family vpnv6

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

peer { group-name | ipv6-address [ prefix-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

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

1.12.5  配置BGP VPNv4/VPNv6路由屬性

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

¡     進入BGP VPNv4地址族視圖。

address-family vpnv4

¡     進入BGP VPNv6地址族視圖。

address-family vpnv6

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

peer { group-name | ipv6-address [ prefix-length ] } next-hop-local

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

(5)     配置AS_PATH屬性。

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

peer { group-name | ipv6-address [ prefix-length ] } allow-as-loop [ number ]

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

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

peer { group-name | ipv6-address [ prefix-length ] } public-as-only

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

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

peer { group-name | ipv6-address [ prefix-length ] } advertise-community

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

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

peer { group-name | ipv6-address [ prefix-length ] } soo site-of-origin

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

1.12.6  配置BGP VPNv4/VPNv6路由過濾

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

¡     進入BGP VPNv4地址族視圖。

address-family vpnv4

¡     進入BGP VPNv6地址族視圖。

address-family vpnv6

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

filter-policy { ipv4-acl-number | name ipv4-acl-name | prefix-list prefix-list-name } export [ protocol process-id ]

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

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

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

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

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

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

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

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

peer { group-name | ipv6-address [ prefix-length ] } route-policy route-policy-name { export | import }

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

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

policy vpn-target

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

1.13  配置路由迭代方式

1. 功能簡介

IP L3VPN over SRv6網絡中,設備為用戶流量封裝SRv6 SID後,可以根據如下路由迭代方式為封裝後的報文查找轉發路徑:

·     SRv6 BE方式

·     SRv6 TE方式

·     SRv6 TE/SRv6 BE混合方式

·     SRv6 TE快速切換為SRv6 BE方式

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

ip vpn-instance vpn-instance-name

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

¡     進入BGP-VPN IPv4單播地址族視圖。

address-family ipv4 [ unicast ]

¡     進入BGP-VPN IPv6單播地址族視圖。

address-family ipv6 [ unicast ]

(5)     配置路由迭代方式

segment-routing ipv6 { best-effort | traffic-engineering | traffic-engineering best-effort | traffic-engineering best-effort-backup }

缺省情況下,BGP路由不會根據自身攜帶的SRv6 SID進行迭代。

如果SRv6 TE Policy的源節點和目的節點之間存在多條SRv6 BE路徑,則在多條SRv6 BE路徑中選擇下一跳地址最小的SRv6 BE路徑作為備份路徑。

1.14  配置封裝的IPv6報文頭的源地址

1. 配置限製和指導

在IP L3VPN over SRv6和公網IPv4/IPv6 over SRv6組網環境中,必須指定封裝的IPv6報文頭的源地址。否則,無法通過SRv6轉發數據流量。

配置源地址時,不能為環回地址、鏈路本地地址、組播地址和未指定地址。指定的源地址必須為本機地址,且已經由路由協議發布,建議指定本設備的Loopback接口地址。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入SRv6視圖。

segment-routing ipv6

(3)     配置封裝的IPv6報文頭的源地址。

encapsulation source-address ipv6-address [ ip-ttl ttl-value ]

缺省情況下,未指定封裝的IPv6報文頭的源地址。

1.15  開啟對等體/對等體組之間的SRv6 VPN兼容功能

1. 功能簡介

在IP L3VPN over SRv6網絡中,不同廠商的PE設備可能使用不同的格式將SRv6 SID封裝在VPNv4/VPNv6路由中,造成不同廠商設備無法識別對方發送的VPNv4/VPNv6路由,從而導致路由信息發布失敗。為了解決這一問題,可以配置本功能,修改H3C設備發送的BGP路由中SRv6 SID的封裝格式,使其與對端PE設備的SRv6 SID封裝格式相同,以實現H3C設備與其他廠商設備的互通。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

¡     進入BGP VPNv4地址族視圖。

address-family vpnv4

¡     進入BGP VPNv6地址族視圖。

address-family vpnv6

(4)     開啟對等體/對等體組之間的SRv6 VPN兼容功能。

peer { group-name | ipv6-address [ prefix-length ] } srv6-vpn compatible [ srv6-sid-transposition ]

缺省情況下,SRv6 VPN兼容功能處於關閉狀態,設備按照RFC 9252中指定的非Transposition Scheme格式,對發送的BGP路由中攜帶的SRv6 SID進行封裝。

1.16  配置路由重生成

1. 功能簡介

MPE作為邊界設備同時連接MPLS L3VPN網絡與L3VPN over SRv6網絡時,需要在MPE上完成VPNv4/VPNv6路由信息的轉換,以實現MPLS網絡和SRv6網絡的互通。

管理員可以在MPE設備上配置路由重生成功能,當MPE設備收到VPNv4/VPNv6路由後,如果路由中的RT屬性與本地VPN實例的Import Route Target屬性匹配,則在本地VPN實例下將攜帶私網標簽或SRv6 SID最優路由重新生成後向VPNv4/VPNv6對等體發布,以實現MPLS網絡和SRv6網絡的互通。

2. 配置限製和指導

本節所有配置均需要在MPE上進行。

配置本功能後,重生成路由攜帶VPN實例下配置的RD,並在源路由基礎上添加VPN實例下的RT。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

ip vpn-instance vpn-instance-name

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

¡     進入BGP-VPN IPv4單播地址族視圖。

address-family ipv4 [ unicast ]

¡     進入BGP-VPN IPv6單播地址族視圖。

address-family ipv6 [ unicast ]

(5)     配置在VPN實例下將最優路由重生成並向VPNv4或VPNv6對等體發布。

advertise route-reoriginate

缺省情況下,在VPN實例下未將最優路由重生成後向VPNv4或VPNv6對等體發布,而是發布源VPNv4/VPNv6路由。

1.17  配置修改VPNv4/VPNv6/EVPN路由

1. 功能簡介

MPE作為邊界設備同時連接MPLS L3VPN網絡與L3VPN over SRv6網絡時,需要在PE上完成VPNv4/VPNv6路由信息的轉換,以實現MPLS網絡和SRv6網絡的互通。因此,在PE節點上需要修改路由信息:

·     MPE節點從MPLS L3VPN網絡接收到VPNv4/VPNv6路由後,如果路由中的Route Target屬性與本地VPN實例的Import Route Target屬性匹配,則修改路由中的RD和RT信息,並為路由分配SRv6 SID,將SRv6 SID和私網標簽關聯,然後將修改路由信息後的路由發布到SRv6網絡。

·     MPE節點從SRv6網絡接收到VPNv4/VPNv6路由後,如果路由中的Route Target屬性與本地VPN實例的Import Route Target屬性匹配,則修改路由中的RD和RT信息,並為路由分配MPLS標簽,將私網標簽和SRv6 SID關聯,然後將修改路由信息後的路由發布到MPLS L3VPN網絡。

2. 配置限製和指導

本節所有配置均需要在MPE上進行。

除本配置外,還需要根據網絡類型,在UPE、MPE和SPE上執行其他配置。如果位於MPLS網絡,則進行MPLS L3VPN基本配置;如果位於SRv6網絡,則進行MPLS L3VPN over SRv6基本配置。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

¡     進入BGP VPNv4地址族視圖。

address-family vpnv4

¡     進入BGP VPNv6地址族視圖。

address-family vpnv6

(4)     配置從對等體/對等體組接收到BGP VPNv4或VPNv6路由後,修改路由信息。

peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } re-originated [ replace-rt ]

缺省情況下,不修改從對等體/對等體組接收到的VPNv4或VPNv6路由的信息。

(5)     (可選)配置向對等體/對等體組發布源VPNv4/VPNv6路由。

peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } advertise original-route

缺省情況下,通過peer re-originated命令配置修改路由信息後,不向對等體/對等體組發布源VPNv4/VPNv6路由。

(6)     (可選)抑製向對等體/對等體組發送修改路由信息後的VPNv4/VPNv6路由。

peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } suppress re-originated

缺省情況下,通過peer re-originated命令配置修改路由信息後,向對等體/對等體組發送修改路由信息後的VPNv4/VPNv6路由。

1.18  Option B跨域VPN

1. 功能簡介

在Option B跨域VPN場景中,如果一個AS內部署MPLS網絡,另一個AS內部署SRv6網絡,為了實現跨域互通,需要在部署SRv6網絡的AS域的ASBR上開啟SRv6網絡與MPLS網絡互通功能,以實現End.T SID的分配,並建立End.T SID與MPLS標簽的關聯。

2. 配置限製和指導

開啟SRv6網絡與MPLS網絡互通功能後,路由從SRv6網絡發布到MPLS網絡時,會按照每下一跳方式分配標簽,不受label-allocation-mode命令和apply-label命令的影響。有關label-allocation-mode命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP”;有關apply-label命令的詳細介紹,請參見“MPLS命令參考”中的“MPLS L3VPN”。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

¡     進入BGP VPNv4地址族視圖。

address-family vpnv4

¡     進入BGP VPNv6地址族視圖。

address-family vpnv6

(4)     開啟SRv6網絡與MPLS網絡互通功能。

srv6-mpls-interworking enable

缺省情況下,SRv6網絡與MPLS網絡互通功能處於關閉狀態。

(5)     配置BGP引用Locator段。

segment-routing ipv6 locator locator-name [ auto-sid-disable ]

缺省情況下,未引用Locator段。

(6)     配置路由迭代方式。

segment-routing ipv6 { best-effort | traffic-engineering | traffic-engineering best-effort }

缺省情況下,根據路由的下一跳地址查找IPv6路由表進行轉發。

1.19  配置SRv6網絡與EVPN L3VPN網絡互通

1. 功能簡介

數據中心內部署EVPN L3VPN網絡,不同數據中心通過IP L3VPN over SRv6網絡連接時,需要在數據中心的邊界設備ASBR上配置本功能,以實現數據中心之間互聯。

2. 配置準備

需要在ASBR上開啟SRv6網絡與MPLS網絡互通功能。

3. 配置將VPNv4/VPNv6路由重生成為EVPN IP前綴路由

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

¡     進入BGP VPNv4地址族視圖。

address-family vpnv4

¡     進入BGP VPNv6地址族視圖。

address-family vpnv6

(4)     配置從對等體/對等體組接收到BGP路由後,修改路由信息。

peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } re-originated stitch-evpn

缺省情況下,不修改從對等體/對等體組接收到的VPNv4/VPNv6路由的信息。

4. 配置將EVPN IP前綴路由重生成為VPNv4/VPNv6路由

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

address-family l2vpn evpn

(4)     配置從對等體/對等體組接收到BGP路由後,修改路由信息。

peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } re-originated [ ip-prefix ] stitch-l3vpn

缺省情況下,不修改從對等體/對等體組接收到的EVPN路由的信息。

1.20  配置跨域IP L3VPN over SRv6網絡中轉代理SRv6 SID

1. 功能簡介

在跨域SRv6網絡中,網絡管理員不希望Locator網段路由信息傳遞到其他AS域內時,需要在ASBR上配置本功能,通過修改BGP路由攜帶的SRv6 SID的方式為跨域SRv6網絡互通實現中轉代理。

配置本功能後,設備從指定的對等體接收到攜帶了SRv6 SID的BGP VPNv4/VPNv6路由後,會將這些路由加入到本地RT匹配的VPN實例IP路由表中,並刪除這些路由攜帶的SRv6 SID,在本地RT匹配的VPN實例內為BGP VPNv4/VPNv6路由重新申請SRv6 SID,重新申請的SRv6 SID和原SID類型一致。設備轉發收到的BGP VPNv4/VPNv6路由時,隻需要發送重新申請了SRv6 SID的路由。

2. 配置限製和指導

不支持重新申請End.DX4 SID和End.DX6 SID類型的SRv6 SID。

如果需要修改SRv6 SID的路由攜帶的RD屬性值與本地VPN實例的相同,則需要配置routing-table independent enable命令,否則無法修改路由攜帶的SRv6 SID。有關routing-table independent enable命令的詳細介紹,請參見“MPLS命令參考”中的“MPLS L3VPN”。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

(3)     (可選)配置BGP VPNv4/VPNv6路由和BGP-VPN實例路由分離功能。

routing-table independent enable

缺省情況下,BGP VPNv4/VPNv6路由與BGP-VPN路由共用表項,設備從各種方式添加到BGP-VPN實例路由表中的BGP路由也會保存在BGP VPNv4/VPNv6路由表中,並且對於一個VPN實例,其在BGP VPNv4/VPNv6路由表中的優選結果與在BGP-VPN實例路由表中的優選結果相同。

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

¡     進入BGP VPNv4地址族視圖。

address-family vpnv4

¡     進入BGP VPNv6地址族視圖。

address-family vpnv6

(5)     配置從對等體/對等體組接收到BGP路由後,修改路由攜帶的SRv6 SID。

peer { group-name | ipv6-address [ prefix-length ] } re-originated [ replace-rt ] replace-sid

缺省情況下,不修改從對等體/對等體組接收到的VPNv4/VPNv6路由的信息。

 

 

1.21  配置IP L3VPN over SRv6快速重路由

1.21.1  功能簡介

IP L3VPN over SRv6快速重路由功能可以通過開啟指定地址族的快速重路由功能實現。采用這種方式時,設備會為當前地址族下的所有BGP路由自動計算備份下一跳,即隻要從不同BGP對等體學習到了到達同一目的網絡的路由,且這些路由不等價,就會生成主備兩條路由。

1.21.2  配置限製和指導

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

1.21.3  配置步驟

(1)     進入係統視圖。

system-view

(2)     配置靜態BFD檢測。

bfd static session-name [ peer-ipv6 ipv6-address [ vpn-instance vpn-instance-name ] source-ipv6 ipv6-address [ discriminator local local-value remote remote-value ]

(3)     退回係統視圖。

quit

(4)     進入BGP實例視圖。

bgp as-number [ instance instance-name ]

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

primary-path-detect bfd echo

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

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

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

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

ip vpn-instance vpn-instance-name

address-family ipv4 [ unicast ]

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

ip vpn-instance vpn-instance-name

address-family ipv6 [ unicast ]

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

pic

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

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

1.22  配置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的處理模式。

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模式。

本命令的詳細介紹,請參見“MPLS配置指導”中的“MPLS L3VPN”。

 

1.23  IP L3VPN over SRv6顯示和維護

1.23.1  複位BGP會話

當BGP配置變化後,可以通過軟複位或複位BGP會話使新的配置生效。軟複位BGP會話是指在不斷開BGP鄰居關係的情況下,更新BGP路由信息;複位BGP會話是指斷開並重新建立BGP鄰居關係的情況下,更新BGP路由信息。軟複位需要BGP對等體具備路由刷新能力(支持ROUTE-REFRESH消息)。

請在用戶視圖下進行下列操作。下表中各命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP”。

表1-1 複位BGP會話

操作

命令

手工對VPNv4地址族下的BGP會話進行軟複位

refresh bgp [ instance instance-name ] ipv6-address [ prefix-length ] { export | import } vpnv4

複位VPNv4地址族下的BGP會話

reset bgp [ instance instance-name ] ipv6-address [ prefix-length ] vpnv4

 

1.23.2  顯示和維護IP L3VPN over SRv6的運行狀態

在完成上述配置後,在任意視圖下執行display命令可以顯示配置後IP L3VPN over SRv6的運行情況,通過查看顯示信息驗證配置的效果。

在用戶視圖下,用戶可以執行reset命令來清除IP L3VPN over SRv6的相關信息。

display bgp peerdisplay bgp update-groupreset bgp flap-info命令的詳細介紹請參見“三層技術-IP路由命令參考”中的“BGP”。

表1-2 顯示和維護IP L3VPN over SRv6的運行狀態

操作

命令

顯示BGP VPNv4對等體信息

display bgp [ instance instance-name ] peer vpnv4 { ipv6-address prefix-length | ipv6-address { log-info | verbose } }

顯示BGP VPNv6對等體信息

display bgp [ instance instance-name ] peer vpnv6 [ vpn-instance vpn-instance-name ] [ ipv6-address prefix-length | { ipv6-address | group-name group-name } log-info | [ ipv6-address ] verbose ]

顯示BGP VPNv4地址族下打包組的相關信息

display bgp [ instance instance-name ] update-group vpnv4 ipv6-address

顯示BGP VPNv6地址族下打包組的相關信息

display bgp [ instance instance-name ] update-group vpnv6 [ vpn-instance vpn-instance-name ] [ ipv6-address ]

清除BGP VPNv4路由的震蕩統計信息

reset bgp [ instance instance-name ] flap-info vpnv4 [ ipv4-address [ mask | mask-length ] | as-path-acl as-path-acl-number | peer ipv6-address [ prefix-length ] ]

 

1.24  IP L3VPN over SRv6典型配置舉例

1.24.1  IPv4 L3VPN over SRv6配置舉例

1. 組網需求

圖1-9所示,核心網為IPv6網絡,私網為IPv4網絡,在IPv6網絡中PE設備之間部署IP L3VPN over SRv6 BE,通過SRv6隧道傳遞VPNv4數據。

·     CE 1和CE 2均屬於VPN 1。

·     CE與PE之間配置EBGP交換VPN路由信息。

·     同一自治係統內的PE設備之間運行IS-IS實現IPv6網絡互通,配置MP-IBGP交換VPNv4路由信息。

2. 組網圖

圖1-9 IPv4 L3VPN over SRv6配置組網圖

設備

接口

IP地址

設備

接口

IP地址

CE 1

GE1/0/1

10.1.1.2/24

PE 2

Loop0

3::3/128

PE 1

Loop0

1::1/128

 

GE1/0/1

10.2.1.1/24

 

GE1/0/1

10.1.1.1/24

 

GE1/0/2

2002::1/96

 

GE1/0/2

2001::1/96

CE 2

GE1/0/1

10.2.1.2/24

P

Loop0

2::2/128

 

 

 

 

GE1/0/1

2001::2/96

 

 

 

 

GE1/0/2

2002::2/96

 

 

 

 

3. 配置步驟

(1)     在PE和P設備上配置IPv6 IS-IS,實現骨幹網PE和P的互通

# 配置PE 1。

<PE1> system-view

[PE1] isis 1

[PE1-isis-1] is-level level-1

[PE1-isis-1] cost-style wide

[PE1-isis-1] network-entity 10.1111.1111.1111.00

[PE1-isis-1] address-family ipv6 unicast

[PE1-isis-1-ipv6] quit

[PE1-isis-1] quit

[PE1] interface loopback 0

[PE1-LoopBack0] ipv6 address 1::1 128

[PE1-LoopBack0] isis ipv6 enable 1

[PE1-LoopBack0] quit

[PE1] interface gigabitethernet 1/0/2

[PE1-GigabitEthernet1/0/2] ipv6 address 2001::1 96

[PE1-GigabitEthernet1/0/2] isis ipv6 enable

[PE1-GigabitEthernet1/0/2] quit

# 配置P。

<P> system-view

[P] isis

[P-isis-1] is-level level-1

[P-isis-1] cost-style wide

[P-isis-1] network-entity 10.2222.2222.2222.00

[P-isis-1] address-family ipv6 unicast

[P-isis-1-ipv6] quit

[P-isis-1] quit

[P] interface loopback 0

[P-LoopBack0] ipv6 address 2::2 128

[P-LoopBack0] isis ipv6 enable

[P-LoopBack0] quit

[P] interface gigabitethernet 1/0/1

[P-GigabitEthernet1/0/1] ipv6 address 2001::2 96

[P-GigabitEthernet1/0/1] isis ipv6 enable

[P-GigabitEthernet1/0/1] quit

[P] interface gigabitethernet 1/0/2

[P-GigabitEthernet1/0/2] ipv6 address 2002::2 96

[P-GigabitEthernet1/0/2] isis ipv6 enable

[P-GigabitEthernet1/0/2] quit

# 配置PE 2。

<PE2> system-view

[PE2] isis

[PE2-isis-1] is-level level-1

[PE2-isis-1] cost-style wide

[PE2-isis-1] network-entity 10.3333.3333.3333.00

[PE2-isis-1] address-family ipv6 unicast

[PE2-isis-1-ipv6] quit

[PE2-isis-1] quit

[PE2] interface loopback 0

[PE2-LoopBack0] ipv6 address 3::3 128

[PE2-LoopBack0] isis ipv6 enable

[PE2-LoopBack0] quit

[PE2] interface gigabitethernet 1/0/2

[PE2-GigabitEthernet1/0/2] ipv6 address 2002::1 96

[PE2-GigabitEthernet1/0/2] isis ipv6 enable

[PE2-GigabitEthernet1/0/2] quit

配置完成後,PE 1、P、PE 2之間應能建立IPv6 IS-IS鄰居,執行display isis peer命令可以看到鄰居達到Up狀態。執行display isis route ipv6命令可以看到PE之間學習到對方的Loopback接口的路由。

(2)     在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] interface gigabitethernet 1/0/1

[PE1-GigabitEthernet1/0/1] ip binding vpn-instance vpn1

[PE1-GigabitEthernet1/0/1] ip address 10.1.1.1 24

[PE1-GigabitEthernet1/0/1] quit

# 配置PE 2。

[PE2] ip vpn-instance vpn1

[PE2-vpn-instance-vpn1] route-distinguisher 100:1

[PE2-vpn-instance-vpn1] vpn-target 111:1

[PE2-vpn-instance-vpn1] quit

[PE2] interface gigabitethernet 1/0/1

[PE2-GigabitEthernet1/0/1] ip binding vpn-instance vpn1

[PE2-GigabitEthernet1/0/1] ip address 10.2.1.1 24

[PE2-GigabitEthernet1/0/1] quit

# 按圖1-9配置各CE的接口IP地址,配置過程略。

配置完成後,在PE設備上執行display ip vpn-instance命令可以看到VPN實例的配置情況。各PE能ping通自己接入的CE。

以PE 1和CE 1為例:

[PE1] display ip vpn-instance

  Total VPN-Instances configured : 1

  Total IPv4 VPN-Instances configured : 1

  Total IPv6 VPN-Instances configured : 1

  VPN-Instance Name     RD              Address family      Create time

  vpn1                  100:1           N/A                 2019/08/12 13:59:39

[PE1] ping -vpn-instance vpn1 10.1.1.2

Ping 10.1.1.2 (10.1.1.2): 56 data bytes, press CTRL+C to break

56 bytes from 10.1.1.2: icmp_seq=0 ttl=255 time=2.000 ms

56 bytes from 10.1.1.2: icmp_seq=1 ttl=255 time=0.000 ms

56 bytes from 10.1.1.2: icmp_seq=2 ttl=255 time=1.000 ms

56 bytes from 10.1.1.2: icmp_seq=3 ttl=255 time=0.000 ms

56 bytes from 10.1.1.2: icmp_seq=4 ttl=255 time=0.000 ms

 

--- Ping statistics for 10.1.1.2 in VPN instance vpn1 ---

5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss

round-trip min/avg/max/std-dev = 0.000/0.600/2.000/0.800 ms

(3)     在PE與CE之間建立EBGP對等體,引入VPN路由

# 配置CE 1。

<CE1> system-view

[CE1] bgp 65410

[CE1-bgp-default] peer 10.1.1.1 as-number 100

[CE1-bgp-default] address-family ipv4 unicast

[CE1-bgp-default-ipv4] peer 10.1.1.1 enable

[CE1-bgp-default-ipv4] import-route direct

[CE1-bgp-default-ipv4] quit

[CE1-bgp-default] quit

# CE 2配置與CE 1設備配置類似,配置過程省略。

# 配置PE 1。

[PE1] bgp 100

[PE1-bgp-default] router-id 1.1.1.1

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] peer 10.1.1.2 as-number 65410

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] peer 10.1.1.2 enable

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

# PE 2配置與PE 1設備配置類似,配置過程省略。

配置完成後,在PE設備上執行display bgp peer ipv4 vpn-instance命令,可以看到PE與CE之間的BGP對等體關係已建立,並達到Established狀態。

(4)     在PE之間建立MP-IBGP對等體

# 配置PE 1。

[PE1] bgp 100

[PE1-bgp-default] peer 3::3 as-number 100

[PE1-bgp-default] peer 3::3 connect-interface loopback 0

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 3::3 enable

[PE1-bgp-default-vpnv4] quit

[PE1-bgp-default] quit

# 配置PE 2。

[PE2] bgp 100

[PE2-bgp-default] peer 1::1 as-number 100

[PE2-bgp-default] peer 1::1 connect-interface loopback 0

[PE2-bgp-default] address-family vpnv4

[PE2-bgp-default-vpnv4] peer 1::1 enable

[PE2-bgp-default-vpnv4] quit

[PE2-bgp-default] quit

配置完成後,在PE設備上執行display bgp peer vpnv4命令,可以看到PE之間的BGP對等體關係已建立,並達到Established狀態。

(5)     在PE設備上配置IP L3VPN over SRv6封裝的IPv6報文頭的源地址

# 配置PE 1。

[PE1] segment-routing ipv6

[PE1-segment-routing-ipv6] encapsulation source-address 1::1

# 配置PE 2。

[PE2] segment-routing ipv6

[PE2-segment-routing-ipv6] encapsulation source-address 3::3

(6)     在PE設備上配置IP L3VPN over SRv6封裝的IPv6報文頭的目的地址End.DT4 SID

# 配置PE 1。

[PE1-segment-routing-ipv6] locator aaa ipv6-prefix 1:2::1:0 96 static 8

[PE1-segment-routing-ipv6-locator-aaa] quit

[PE1-segment-routing-ipv6] quit

[PE1] isis 1

[PE1-isis-1] address-family ipv6 unicast

[PE1-isis-1-ipv6] segment-routing ipv6 locator aaa

[PE1-isis-1-ipv6] quit

[PE1-isis-1] quit

# 配置PE 2。

[PE2-segment-routing-ipv6] locator bbb ipv6-prefix 6:5::1:0 96 static 8

[PE2-segment-routing-ipv6-locator-bbb] quit

[PE2-segment-routing-ipv6] quit

[PE2] isis 1

[PE2-isis-1] address-family ipv6 unicast

[PE2-isis-1-ipv6] segment-routing ipv6 locator bbb

[PE2-isis-1-ipv6] quit

[PE2-isis-1] quit

配置完成後,在PE設備上執行display ipv6 routing-table命令,可以看到已經將End.DT4 SID引入路由表中,並生成SRv6路由。

以PE 1為例:

[PE1] display ipv6 routing-table protocol srv6

 

Summary count : 1

 

SRv6 Routing table status : <Active>

Summary count : 1

 

Destination: 1:2::101/128                                Protocol  : SRv6

NextHop    : ::1                                         Preference: 4

Interface  : InLoop0                                     Cost      : 0

 

SRv6 Routing table status : <Inactive>

Summary count : 0

(7)     在PE設備上配置為私網路由添加End.DT4 SID

# 配置PE 1。

[PE1] bgp 100

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] segment-routing ipv6 locator aaa

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

[PE1-bgp-default] quit

# 配置PE 2。

[PE2] bgp 100

[PE2-bgp-default] ip vpn-instance vpn1

[PE2-bgp-default-vpn1] address-family ipv4 unicast

[PE2-bgp-default-ipv4-vpn1] segment-routing ipv6 locator bbb

[PE2-bgp-default-ipv4-vpn1] quit

[PE2-bgp-default-vpn1] quit

[PE2-bgp-default] quit

(8)     在PE設備上配置IPv6對等體之間交換End.DT4 SID,同時允許將私網路由迭代到End.DT4 SID的路由條目上

# 配置PE 1。

[PE1] bgp 100

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 3::3 prefix-sid

[PE1-bgp-default-vpnv4] quit

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] segment-routing ipv6 best-effort

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

[PE1-bgp-default] quit

# 配置PE 2。

[PE2] bgp 100

[PE2-bgp-default] address-family vpnv4

[PE2-bgp-default-vpnv4] peer 1::1 prefix-sid

[PE2-bgp-default-vpnv4] quit

[PE2-bgp-default] ip vpn-instance vpn1

[PE2-bgp-default-vpn1] address-family ipv4 unicast

[PE2-bgp-default-ipv4-vpn1] segment-routing ipv6 best-effort

[PE2-bgp-default-ipv4-vpn1] quit

[PE2-bgp-default-vpn1] quit

[PE2-bgp-default] quit

配置完成後,在PE設備上執行display bgp routing-table vpnv4命令查看對端PE發送的路由詳細信息,可以看到對端PE發送的路由攜帶SID屬性數據。

以PE 1為例:

[PE1] display bgp routing-table vpnv4 10.2.1.0

 

 BGP local router ID: 1.1.1.1

 Local AS number: 100

 

 

 Route distinguisher: 100:1(vpn1)

 Total number of routes: 1

 Paths:   1 available, 1 best

 

 BGP routing table information of 10.2.1.0/24:

 From            : 3::3 (3.3.3.3)

 Rely nexthop    : FE80::2A96:34FF:FE9D:216

 Original nexthop: 3::3

 Out interface   : GigabitEthernet1/0/2

 Route age       : 00h14m23s

 OutLabel        : 3

 Ext-Community   : <RT: 111:1>

 RxPathID        : 0x0

 TxPathID        : 0x0

 PrefixSID       : End.DT4 SID <6:5::101>

 AS-path         : 65420

 Origin          : incomplete

 Attribute value : MED 0, localpref 100, pref-val 0

 State           : valid, internal, best

 IP precedence   : N/A

 QoS local ID    : N/A

 Traffic index   : N/A

 Tunnel policy   : NULL

 Rely tunnel IDs : N/A

4. 驗證配置

# 在PE設備上執行display ip routing-table vpn-instance命令,可以看到去往對端CE的路由,並且路由下一跳值為路由攜帶的End.DT4 SID。

以PE 1為例:

[PE1] display ip routing-table vpn-instance vpn1

 

Destinations : 11       Routes : 11

 

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        GE1/0/1

10.1.1.0/32        Direct  0   0           10.1.1.1        GE1/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        GE1/0/1

10.2.1.0/24        BGP     255 0           6:5::101        GE1/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

255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

CE 1和CE 2之間能夠ping通。

1.24.2  IPv4 L3VPN HoVPN over MPLS-to-SRv6配置舉例

1. 組網需求

圖1-10所示,HoVPN網絡中,UPE與MPE之間為MPLS網絡,MPE與SPE之間為SRv6網絡。對於同一VPN用戶,需要跨越不同地域實現互通。

2. 組網圖

圖1-10 IPv4 L3VPN HoVPN over MPLS-to-SRv6配置組網圖

設備

接口

IP地址

設備

接口

IP地址

CE 1

GE1/0/1

10.1.1.2/24

MPE

Loop0

2.2.2.2/32

2::2/128

CE 2

GE1/0/1

10.2.1.2/24

 

GE1/0/1

11.1.1.2/24

UPE

Loop0

1.1.1.1/32

 

GE1/0/2

100::1/96

 

GE1/0/1

10.1.1.1/24

SPE

Loop0

3::3/128

 

GE1/0/2

11.1.1.1/24

 

GE1/0/1

10.2.1.1/24

 

 

 

 

GE1/0/2

100::2/96

 

3. 配置步驟

(1)     配置CE 1

# 與UPE建立EBGP對等體,引入VPN路由。

<CE1> system-view

[CE1] bgp 101

[CE1-bgp-default] peer 10.1.1.1 as-number 100

[CE1-bgp-default] address-family ipv4 unicast

[CE1-bgp-default-ipv4] peer 10.1.1.1 enable

[CE1-bgp-default-ipv4] import-route direct

[CE1-bgp-default-ipv4] quit

[CE1-bgp-default] quit

(2)     配置UPE

# 配置MPLS基本能力和MPLS LDP能力。

<UPE> system-view

[UPE] mpls lsr-id 1.1.1.1

[UPE] mpls ldp

[UPE-ldp] quit

# 配置IS-IS,實現骨幹網互通。

[UPE] isis 1

[UPE-isis-1] is-level level-1

[UPE-isis-1] cost-style wide

[UPE-isis-1] network-entity 10.1111.1111.1111.00

[UPE-isis-1] quit

[UPE] interface loopback 0

[UPE-LoopBack0] ip address 1.1.1.1 32

[UPE-LoopBack0] isis enable 1

[UPE-LoopBack0] quit

[UPE] interface gigabitethernet 1/0/2

[UPE-GigabitEthernet1/0/2] ip address 11.1.1.1 24

[UPE-GigabitEthernet1/0/2] isis enable 1

[UPE-GigabitEthernet1/0/2] mpls enable

[UPE-GigabitEthernet1/0/2] mpls ldp enable

[UPE-GigabitEthernet1/0/2] quit

# 配置VPN實例,將CE接入PE。

[UPE] ip vpn-instance vpn1

[UPE-vpn-instance-vpn1] route-distinguisher 100:1

[UPE-vpn-instance-vpn1] vpn-target 111:1

[UPE-vpn-instance-vpn1] quit

[UPE] interface gigabitethernet 1/0/1

[UPE-GigabitEthernet1/0/1] ip binding vpn-instance vpn1

[UPE-GigabitEthernet1/0/1] ip address 10.1.1.1 24

[UPE-GigabitEthernet1/0/1] quit

# 與CE建立EBGP對等體,引入VPN路由。

[UPE] bgp 100

[UPE-bgp-default] router-id 1.1.1.1

[UPE-bgp-default] ip vpn-instance vpn1

[UPE-bgp-default-vpn1] peer 10.1.1.2 as-number 101

[UPE-bgp-default-vpn1] address-family ipv4 unicast

[UPE-bgp-default-ipv4-vpn1] peer 10.1.1.2 enable

[UPE-bgp-default-ipv4-vpn1] import-route direct

[UPE-bgp-default-ipv4-vpn1] quit

[UPE-bgp-default-vpn1] quit

# 與MPE建立MP-IBGP對等體。

[UPE-bgp-default] peer 2.2.2.2 as-number 100

[UPE-bgp-default] peer 2.2.2.2 connect-interface loopback 0

[UPE-bgp-default] address-family vpnv4

[UPE-bgp-default-vpnv4] peer 2.2.2.2 enable

[UPE-bgp-default-vpnv4] quit

[UPE-bgp-default] quit

(3)     配置MPE

# 配置MPLS基本能力和MPLS LDP能力。

<MPE> system-view

[MPE] mpls lsr-id 2.2.2.2

[MPE] mpls ldp

[MPE-ldp] quit

# 配置IS-IS,實現骨幹網互通。

[MPE] isis 1

[MPE-isis-1] is-level level-1

[MPE-isis-1] cost-style wide

[MPE-isis-1] network-entity 10.2222.2222.2222.00

[MPE-isis-1] address-family ipv6 unicast

[MPE-isis-1-ipv6] quit

[MPE-isis-1] quit

[MPE] interface loopback 0

[MPE-LoopBack0] ip address 2.2.2.2 32

[MPE-LoopBack0] ipv6 address 2::2 128

[MPE-LoopBack0] isis enable 1

[MPE-LoopBack0] isis ipv6 enable 1

[MPE-LoopBack0] quit

[MPE] interface gigabitethernet 1/0/1

[MPE-GigabitEthernet1/0/1] ip address 11.1.1.2 24

[MPE-GigabitEthernet1/0/1] isis enable 1

[MPE-GigabitEthernet1/0/1] mpls enable

[MPE-GigabitEthernet1/0/1] mpls ldp enable

[MPE-GigabitEthernet1/0/1] quit

[MPE] interface gigabitethernet 1/0/2

[MPE-GigabitEthernet1/0/2] ipv6 address 100::1 96

[MPE-GigabitEthernet1/0/2] isis ipv6 enable 1

[MPE-GigabitEthernet1/0/2] quit

# 配置VPN實例。

[MPE] ip vpn-instance vpn2

[MPE-vpn-instance-vpn1] route-distinguisher 200:1

[MPE-vpn-instance-vpn1] vpn-target 111:1

[MPE-vpn-instance-vpn1] quit

# 與UPE和SPE之間建立MP-IBGP對等體。

[MPE] bgp 100

[MPE-bgp-default] router-id 2.2.2.2

[MPE-bgp-default] peer 1.1.1.1 as-number 100

[MPE-bgp-default] peer 1.1.1.1 connect-interface LoopBack0

[MPE-bgp-default] peer 3::3 as-number 100

[MPE-bgp-default] peer 3::3 connect-interface LoopBack0

[MPE-bgp-default] address-family vpnv4

[MPE-bgp-default-vpnv4] peer 1.1.1.1 enable

[MPE-bgp-default-vpnv4] peer 3::3 enable

# 指定UPE。

[MPE-bgp-default-vpnv4] peer 1.1.1.1 upe

[MPE-bgp-default-vpnv4] peer 1.1.1.1 next-hop-local

[MPE-bgp-default-vpnv4] quit

# 配置路由重生成,以實現MPLS L3VPN網絡和IP L3VPN over SRv6網絡的互通。

[MPE-bgp-default] ip vpn-instance vpn2

[MPE-bgp-default-vpn2] address-family ipv4 unicast

[MPE-bgp-default-ipv4-vpn2] advertise route-reoriginate

[MPE-bgp-default-ipv4-vpn2] quit

[MPE-bgp-default-vpn2] quit

[MPE-bgp-default] quit

# 配置MPE向UPE發送通過策略的路由信息,允許CE 2的路由發送給UPE。

[MPE] ip prefix-list hovpn index 10 permit 10.2.1.0 24

[MPE] route-policy hovpn permit node 0

[MPE-route-policy-hovpn-0] if-match ip address prefix-list hovpn

[MPE-route-policy-hovpn-0] quit

[MPE] bgp 100

[MPE-bgp-default] address-family vpnv4

[MPE-bgp-default-vpnv4] peer 1.1.1.1 upe route-policy hovpn export

[MPE-bgp-default-vpnv4] quit

[MPE-bgp-default] quit

# 配置L3VPN over SRv6 BE。

[MPE] segment-routing ipv6

[MPE-segment-routing-ipv6] encapsulation source-address 2::2

[MPE-segment-routing-ipv6] locator hovpn ipv6-prefix 42:1:: 64 static 32

[MPE-segment-routing-ipv6-locator-hovpn] quit

[MPE-segment-routing-ipv6] quit

[MPE] bgp 100

[MPE-bgp-default] address-family vpnv4

[MPE-bgp-default-vpnv4] peer 3::3 prefix-sid

[MPE-bgp-default-vpnv4] quit

[MPE-bgp-default] ip vpn-instance vpn2

[MPE-bgp-default-vpn2] address-family ipv4 unicast

[MPE-bgp-default-ipv4-vpn2] segment-routing ipv6 best-effort

[MPE-bgp-default-ipv4-vpn2] segment-routing ipv6 locator hovpn

[MPE-bgp-default-ipv4-vpn2] quit

[MPE-bgp-default-vpn2] quit

[MPE-bgp-default] quit

[MPE] isis 1

[MPE-isis-1] address-family ipv6 unicast

[MPE-isis-1-ipv6] segment-routing ipv6 locator hovpn

[MPE-isis-1-ipv6] quit

[MPE-isis-1] quit

(4)     配置SPE

# 配置IPv6 IS-IS,實現骨幹網互通。

<SPE> system-view

[SPE] isis 1

[SPE-isis-1] is-level level-1

[SPE-isis-1] cost-style wide

[SPE-isis-1] network-entity 10.3333.3333.3333.00

[SPE-isis-1] address-family ipv6 unicast

[SPE-isis-1-ipv6] quit

[SPE-isis-1] quit

[SPE] interface loopback 0

[SPE-LoopBack0] ipv6 address 3::3 128

[SPE-LoopBack0] isis ipv6 enable 1

[SPE-LoopBack0] quit

[SPE] interface gigabitethernet 1/0/2

[SPE-GigabitEthernet1/0/2] ipv6 address 100::2 96

[SPE-GigabitEthernet1/0/2] isis ipv6 enable 1

[SPE-GigabitEthernet1/0/2] quit

# 配置VPN實例,將CE接入PE。

[SPE] ip vpn-instance vpn1

[SPE-vpn-instance-vpn1] route-distinguisher 100:1

[SPE-vpn-instance-vpn1] vpn-target 111:1

[SPE-vpn-instance-vpn1] quit

[SPE] interface gigabitethernet 1/0/1

[SPE-GigabitEthernet1/0/1] ip binding vpn-instance vpn1

[SPE-GigabitEthernet1/0/1] ip address 10.2.1.1 24

[SPE-GigabitEthernet1/0/1] quit

# 與CE建立EBGP對等體,引入VPN路由。

[SPE] bgp 100

[SPE-bgp-default] router-id 3.3.3.3

[SPE-bgp-default] ip vpn-instance vpn1

[SPE-bgp-default-vpn1] peer 10.2.1.2 as-number 102

[SPE-bgp-default-vpn1] address-family ipv4 unicast

[SPE-bgp-default-ipv4-vpn1] peer 10.2.1.2 enable

[SPE-bgp-default-ipv4-vpn1] import-route direct

[SPE-bgp-default-ipv4-vpn1] quit

[SPE-bgp-default-vpn1] quit

# 與MPE間建立MP-IBGP對等體。

[SPE] bgp 100

[SPE-bgp-default] peer 2::2 as-number 100

[SPE-bgp-default] peer 2::2 connect-interface loopback 0

[SPE-bgp-default] address-family vpnv4

[SPE-bgp-default-vpnv4] peer 2::2 enable

[SPE-bgp-default-vpnv4] quit

[SPE-bgp-default] quit

# 配置L3VPN over SRv6 BE。

[SPE] segment-routing ipv6

[SPE-segment-routing-ipv6] encapsulation source-address 3::3

[SPE-segment-routing-ipv6] locator hovpn ipv6-prefix 43:1:: 64 static 32

[SPE-segment-routing-ipv6-locator-hovpn] quit

[SPE-segment-routing-ipv6] quit

[SPE] bgp 100

[SPE-bgp-default] address-family vpnv4

[SPE-bgp-default-vpnv4] peer 2::2 prefix-sid

[SPE-bgp-default-vpnv4] quit

[SPE-bgp-default] ip vpn-instance vpn1

[SPE-bgp-default-vpn1] address-family ipv4 unicast

[SPE-bgp-default-ipv4-vpn1] segment-routing ipv6 best-effort

[SPE-bgp-default-ipv4-vpn1] segment-routing ipv6 locator hovpn

[SPE-bgp-default-ipv4-vpn1] quit

[SPE-bgp-default-vpn1] quit

[SPE-bgp-default] quit

[SPE] isis 1

[SPE-isis-1] address-family ipv6 unicast

[SPE-isis-1-ipv6] segment-routing ipv6 locator hovpn

[SPE-isis-1-ipv6] quit

[SPE-isis-1] quit

(5)     配置CE 2

# 與SPE建立EBGP對等體,引入VPN路由。

<CE2> system-view

[CE2] bgp 102

[CE2-bgp-default] peer 10.2.1.1 as-number 100

[CE2-bgp-default] address-family ipv4 unicast

[CE2-bgp-default-ipv4] peer 10.2.1.1 enable

[CE2-bgp-default-ipv4] import-route direct

[CE2-bgp-default-ipv4] quit

[CE2-bgp-default] quit

4. 驗證配置

# 在MPE設備上執行display bgp routing-table vpnv4命令,可以看到去往CE 2的路由10.2.1.0/24和去往CE 1的路由10.1.1.0/24已經建立了SRv6 SID和MPLS標簽的關聯關係。

[MPE] display bgp routing-table vpnv4 10.2.1.0 24

 

 BGP local router ID: 2.2.2.2

 Local AS number: 100

 

 

 Route distinguisher: 100:1

 Total number of routes: 1

 Paths:   1 available, 1 best

 

 BGP routing table information of 10.2.1.0/24:

 From            : 3::3 (3.3.3.3)

 Rely nexthop    : FE80::9885:31FF:FE87:317

 Original nexthop: 3::3

 Out interface   : GigabitEthernet1/0/2

 Route age       : 03h16m43s

 OutLabel        : 3

 Ext-Community   : <RT: 111:1>

 RxPathID        : 0x0

 TxPathID        : 0x0

 PrefixSID       : End.DT4 SID <43:1::1:0:2>

 AS-path         : (null)

 Origin          : incomplete

 Attribute value : MED 0, localpref 100, pref-val 0

 State           : valid, internal, best

 IP precedence   : N/A

 QoS local ID    : N/A

 Traffic index   : N/A

 Tunnel policy   : NULL

 Rely tunnel IDs : N/A

 

 

 Route distinguisher: 200:1(vpn2)

 Total number of routes: 1

 Paths:   1 available, 1 best

 

 BGP routing table information of 10.2.1.0/24:

 From            : 3::3 (3.3.3.3)

 Rely nexthop    : FE80::9885:31FF:FE87:317

 Original nexthop: 3::3

 Out interface   : GigabitEthernet1/0/2

 Route age       : 03h16m43s

 OutLabel        : 3

 Ext-Community   : <RT: 111:1>

 RxPathID        : 0x0

 TxPathID        : 0x0

 PrefixSID       : End.DT4 SID <43:1::1:0:2>

 AS-path         : (null)

 Origin          : incomplete

 Attribute value : MED 0, localpref 100, pref-val 0

 State           : valid, internal, best, remoteredist, reoriginated

 IP precedence   : N/A

 QoS local ID    : N/A

 Traffic index   : N/A

 Tunnel policy   : NULL

 Rely tunnel IDs : N/A

 

[MPE] display bgp routing-table vpnv4 10.1.1.0 24

 

 BGP local router ID: 2.2.2.2

 Local AS number: 100

 

 

 Route distinguisher: 100:1

 Total number of routes: 1

 Paths:   1 available, 1 best

 

 BGP routing table information of 10.1.1.0/24:

 From            : 1.1.1.1 (1.1.1.1)

 Rely nexthop    : 11.1.1.1

 Original nexthop: 1.1.1.1

 Out interface   : GigabitEthernet1/0/1

 Route age       : 00h44m22s

 OutLabel        : 600126

 Ext-Community   : <RT: 111:1>

 RxPathID        : 0x0

 TxPathID        : 0x0

 AS-path         : (null)

 Origin          : incomplete

 Attribute value : MED 0, localpref 100, pref-val 0

 State           : valid, internal, best

 IP precedence   : N/A

 QoS local ID    : N/A

 Traffic index   : N/A

 Tunnel policy   : NULL

 Rely tunnel IDs : 3

 

 

 Route distinguisher: 200:1(vpn2)

 Total number of routes: 1

 Paths:   1 available, 1 best

 

 BGP routing table information of 10.1.1.0/24:

 From            : 1.1.1.1 (1.1.1.1)

 Rely nexthop    : 11.1.1.1

 Original nexthop: 1.1.1.1

 Out interface   : GigabitEthernet1/0/1

 Route age       : 00h44m22s

 OutLabel        : 600126

 Ext-Community   : <RT: 111:1>

 RxPathID        : 0x0

 TxPathID        : 0x0

 PrefixSID       : End.DT4 SID <42:1::1:0:2>

 AS-path         : (null)

 Origin          : incomplete

 Attribute value : MED 0, localpref 100, pref-val 0

 State           : valid, internal, best, remoteredist, reoriginated

 IP precedence   : N/A

 QoS local ID    : N/A

 Traffic index   : N/A

 Tunnel policy   : NULL

 Rely tunnel IDs : 3

 

# CE 1和CE 2之間能夠ping通。

1.24.3  Option B跨域VPN配置舉例

1. 組網需求

圖1-11所示,AS 100內部署MPLS網絡,AS 200內部署SRv6網絡,需要通過Option B跨域VPN方式,實現不同網絡的同一VPN用戶可以互訪。

2. 組網圖

圖1-11 Option B跨域VPN配置組網圖

設備

接口

IP地址

設備

接口

IP地址

CE 1

GE1/0/1

10.1.1.2/24

CE 2

GE1/0/1

20.1.1.2/24

PE 1

Loop0

1.1.1.1/32

PE 2

Loop0

1::1/128

 

GE1/0/1

10.1.1.1/24

 

GE1/0/1

20.1.1.1/24

 

GE1/0/2

11.1.1.1/24

 

GE1/0/2

100::1/96

ASBR 1

Loop0

2.2.2.2/32

ASBR 2

Loop0

2::2/128

 

GE1/0/1

11.1.1.2/24

 

GE1/0/1

100::2/96

 

GE1/0/2

12.1.1.1/24

 

GE1/0/2

12.1.1.2/24

 

3. 配置步驟

(1)     配置CE 1

# 與PE建立EBGP對等體,引入VPN路由。

<CE1> system-view

[CE1] bgp 101

[CE1-bgp-default] peer 10.1.1.1 as-number 100

[CE1-bgp-default] address-family ipv4 unicast

[CE1-bgp-default-ipv4] peer 10.1.1.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] cost-style wide

[PE1-isis-1] network-entity 10.1111.1111.1111.00

[PE1-isis-1] quit

# 配置LSR ID,使能MPLS和LDP。

[PE1] mpls lsr-id 1.1.1.1

[PE1] mpls ldp

[PE1-ldp] quit

# 配置接口GigabitEthernet1/0/2,在接口上運行IS-IS,並使能MPLS和LDP。

[PE1] interface gigabitethernet 1/0/2

[PE1-GigabitEthernet1/0/2] ip address 11.1.1.1 255.0.0.0

[PE1-GigabitEthernet1/0/2] isis enable 1

[PE1-GigabitEthernet1/0/2] mpls enable

[PE1-GigabitEthernet1/0/2] mpls ldp enable

[PE1-GigabitEthernet1/0/2] quit

# 創建Loopback0接口,在接口上運行IS-IS。

[PE1] interface loopback 0

[PE1-LoopBack0] ip address 2.2.2.2 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 100:1

[PE1-vpn-instance-vpn1] vpn-target 100:1

[PE1-vpn-instance-vpn1] quit

# 將連接CE 1的接口綁定到創建的VPN實例。

[PE1] interface gigabitethernet 1/0/1

[PE1-GigabitEthernet1/0/1] ip binding vpn-instance vpn1

[PE1-GigabitEthernet1/0/1] ip address 10.1.1.1 24

[PE1-GigabitEthernet1/0/1] quit

# 在PE 1上運行BGP。

[PE1] bgp 100

[PE1-bgp-default] router-id 1.1.1.1

# 配置IBGP對等體2.2.2.2為VPNv4對等體。

[PE1-bgp-default] peer 2.2.2.2 as-number 100

[PE1-bgp-default] peer 2.2.2.2 connect-interface loopback 0

[PE1-bgp-default] address-family vpnv4

[PE1-bgp-default-vpnv4] peer 2.2.2.2 enable

[PE1-bgp-default-vpnv4] quit

# 與CE建立EBGP對等體,引入VPN路由。

[PE1-bgp-default] ip vpn-instance vpn1

[PE1-bgp-default-vpn1] peer 10.1.1.2 as-number 101

[PE1-bgp-default-vpn1] address-family ipv4 unicast

[PE1-bgp-default-ipv4-vpn1] peer 10.1.1.2 enable

[PE1-bgp-default-ipv4-vpn1] quit

[PE1-bgp-default-vpn1] quit

(3)     配置ASBR 1

# 在ASBR 1上運行IS-IS。

<ASBR1> system-view

[ASBR1] isis 1

[ASBR1-isis-1] cost-style wide

[ASBR1-isis-1] network-entity 10.2222.2222.2222.00

[ASBR1-isis-1] quit

# 配置LSR ID,使能MPLS和LDP。

[ASBR1] mpls lsr-id 2.2.2.2

[ASBR1] mpls ldp

[ASBR1-ldp] quit

# 配置接口GigabitEthernet1/0/1,在接口上運行IS-IS,並使能MPLS和LDP。

[ASBR1] interface gigabitethernet 1/0/1

[ASBR1-GigabitEthernet1/0/1] ip address 11.1.1.2 255.0.0.0

[ASBR1-GigabitEthernet1/0/1] isis enable 1

[ASBR1-GigabitEthernet1/0/1] mpls enable

[ASBR1-GigabitEthernet1/0/1] mpls ldp enable

[ASBR1-GigabitEthernet1/0/1] quit

# 配置接口GigabitEthernet1/0/2,使能MPLS。

[ASBR1] interface gigabitethernet 1/0/2

[ASBR1-GigabitEthernet1/0/2] ip address 12.1.1.1 255.0.0.0

[ASBR1-GigabitEthernet1/0/2] mpls enable

[ASBR1-GigabitEthernet1/0/2] quit

# 創建Loopback0接口,並運行IS-IS。

[ASBR1] interface loopback 0

[ASBR1-LoopBack0] ip address 2.2.2.2 32

[ASBR1-LoopBack0] isis enable 1

[ASBR1-LoopBack0] quit

# 在ASBR 1上運行BGP。

[ASBR1] bgp 100

[ASBR1-bgp-default] router-id 2.2.2.2

[ASBR1-bgp-default] peer 1.1.1.1 as-number 100

[ASBR1-bgp-default] peer 1.1.1.1 connect-interface loopback 0

[ASBR1-bgp-default] peer 12.1.1.2 as-number 200

[ASBR1-bgp-default] peer 12.1.1.2 connect-interface gigabitethernet 1/0/2

# 不對接收的VPNv4路由進行Route target過濾。

[ASBR1-bgp-default] address-family vpnv4

[ASBR1-bgp-default-vpnv4] undo policy vpn-target

# 將IBGP對等體1.1.1.1和EBGP對等體12.1.1.2都配置為VPNv4對等體。

[ASBR1-bgp-default-vpnv4] peer 12.1.1.2 enable

[ASBR1-bgp-default-vpnv4] peer 1.1.1.1 enable

[ASBR1-bgp-default-vpnv4] quit

[ASBR1-bgp-default] quit

(4)     配置ASBR 2

# 在ASBR 2上運行IPv6 IS-IS。

<ASBR2> system-view

[ASBR2] isis 1

[ASBR2-isis-1] cost-style wide

[ASBR2-isis-1] network-entity 10.3333.3333.3333.00

[ASBR2-isis-1] address-family ipv6 unicast

[ASBR2-isis-1-ipv6] quit

[ASBR2-isis-1] quit

# 配置接口GigabitEthernet1/0/1,在接口上運行IPv6 IS-IS。

[ASBR2] interface gigabitethernet 1/0/1

[ASBR2-GigabitEthernet1/0/1] ipv6 address 100::2 96

[ASBR2-GigabitEthernet1/0/1] isis ipv6 enable 1

[ASBR2-GigabitEthernet1/0/1] quit

# 配置接口GigabitEthernet1/0/2,使能MPLS。

[ASBR2] interface gigabitethernet 1/0/2

[ASBR2-GigabitEthernet1/0/2] ip address 12.1.1.2 255.0.0.0

[ASBR2-GigabitEthernet1/0/2] mpls enable

[ASBR2-GigabitEthernet1/0/2] quit

# 創建Loopback0接口,並運行IPv6 IS-IS。

[ASBR2] interface loopback 0

[ASBR2-LoopBack0] ipv6 address 2::2 128

[ASBR2-LoopBack0] isis ipv6 enable 1

[ASBR2-LoopBack0] quit

# 在ASBR 2上運行BGP。

[ASBR2] bgp 200

[ASBR2-bgp-default] router-id 3.3.3.3

[ASBR2-bgp-default] peer 12.1.1.1 as-number 100

[ASBR2-bgp-default] peer 12.1.1.1 connect-interface gigabitethernet 1/0/2

[ASBR2-bgp-default] peer 1::1 as-number 200

[ASBR2-bgp-default] peer 1::1 connect-interface loopback 0

# 不對接收的VPNv4路由進行Route target過濾。

[ASBR2-bgp-default] address-family vpnv4

[ASBR2-bgp-default-vpnv4] undo policy vpn-target

# 將IBGP對等體1::1和EBGP對等體12.1.1.1都配置為VPNv4對等體。

[ASBR2-bgp-default-vpnv4] peer 12.1.1.1 enable

[ASBR2-bgp-default-vpnv4] peer 1::1 enable

[ASBR2-bgp-default-vpnv4] quit

[ASBR2-bgp-default] quit

# 配置L3VPN over SRv6 BE。

[ASBR2] segment-routing ipv6

[ASBR2-segment-routing-ipv6] encapsulation source-address 2::2

[ASBR2-segment-routing-ipv6] locator abc ipv6-prefix 43:1:: 64 static 32

[ASBR2-segment-routing-ipv6-locator-abc] quit

[ASBR2-segment-routing-ipv6] quit

[ASBR2] bgp 200

[ASBR2-bgp-default] address-family vpnv4

[ASBR2-bgp-default-vpnv4] segment-routing ipv6 best-effort

[ASBR2-bgp-default-vpnv4] segment-routing ipv6 locator abc

[ASBR2-bgp-default-vpnv4] peer 1::1 prefix-sid

# 開啟SRv6網絡和MPLS網絡互通功能。

[ASBR2-bgp-default-vpnv4] srv6-mpls-interworking enable

[ASBR2-bgp-default-vpnv4] quit

[ASBR2-bgp-default] quit

# 配置IS-IS引用Locator段。

[ASBR2] isis 1

[ASBR2-isis-1] address-family ipv6 unicast

[ASBR2-isis-1-ipv6] segment-routing ipv6 locator abc

[ASBR2-isis-1-ipv6] quit

[ASBR2-isis-1] quit

(5)     配置PE 2

# 在PE 2上運行IPv6 IS-IS。

<PE2> system-view

[PE2] isis 1

[PE2-isis-1] cost-style wide

[PE2-isis-1] network-entity 10.4444.4444.4444.00

[PE2-isis-1] address-family ipv6 unicast

[PE2-isis-1-ipv6] quit

[PE2-isis-1] quit

# 配置接口GigabitEthernet1/0/2,在接口上運行IPv6 IS-IS。

[PE2] interface gigabitethernet 1/0/2

[PE2-GigabitEthernet1/0/2] ipv6 address 100::1 96

[PE2-GigabitEthernet1/0/2] isis ipv6 enable 1

[PE2-GigabitEthernet1/0/2] quit

# 創建Loopback0接口,在接口上運行IPv6 IS-IS。

[PE2] interface loopback 0

[PE2-LoopBack0] ipv6 address 1::1 128

[PE2-LoopBack0] isis ipv6 enable 1

[PE2-LoopBack0] quit

# 創建一個VPN實例,名為vpn1,配置RD和Route Target屬性。

[PE2] ip vpn-instance vpn1

[PE2-vpn-instance-vpn1] route-distinguisher 100:1

[PE2-vpn-instance-vpn1] vpn-target 100:1

[PE2-vpn-instance-vpn1] quit

# 將連接CE 1的接口綁定到創建的VPN實例。

[PE2] interface gigabitethernet 1/0/1

[PE2-GigabitEthernet1/0/1] ip binding vpn-instance vpn1

[PE2-GigabitEthernet1/0/1] ip address 20.1.1.1 24

[PE2-GigabitEthernet1/0/1] quit

# 在PE 2上運行BGP。

[PE2] bgp 200

[PE2-bgp-default] router-id 4.4.4.4

# 配置IBGP對等體2::2為VPNv4對等體。

[PE2-bgp-default] peer 2::2 as-number 200

[PE2-bgp-default] peer 2::2 connect-interface loopback 0

[PE2-bgp-default] address-family vpnv4

[PE2-bgp-default-vpnv4] peer 2::2 enable

[PE2-bgp-default-vpnv4] quit

# 與CE建立EBGP對等體,引入VPN路由。

[PE2-bgp-default] ip vpn-instance vpn1

[PE2-bgp-default-vpn1] peer 20.1.1.2 as-number 201

[PE2-bgp-default-vpn1] address-family ipv4 unicast

[PE2-bgp-default-ipv4-vpn1] peer 20.1.1.2 enable

[PE2-bgp-default-ipv4-vpn1] quit

[PE2-bgp-default-vpn1] quit

# 配置L3VPN over SRv6 BE。

[PE2] segment-routing ipv6

[PE2-segment-routing-ipv6] encapsulation source-address 1::1

[PE2-segment-routing-ipv6] locator abc ipv6-prefix 42:1:: 64 static 32

[PE2-segment-routing-ipv6-locator-abc] quit

[PE2-segment-routing-ipv6] quit

[PE2] bgp 200

[PE2-bgp-default] ip vpn-instance vpn1

[PE2-bgp-default-vpn1] address-family ipv4 unicast

[PE2-bgp-default-ipv4-vpn1] segment-routing ipv6 best-effort

[PE2-bgp-default-ipv4-vpn1] segment-routing ipv6 locator abc

[PE2-bgp-default-ipv4-vpn1] quit

[PE2-bgp-default-vpn1] quit

[PE2-bgp-default] address-family vpnv4

[PE2-bgp-default-vpnv4] peer 2::2 prefix-sid

[PE2-bgp-default-vpnv4] quit

[PE2-bgp-default] quit

# 配置IS-IS引用Locator段。

[PE2] isis 1

[PE2-isis-1] address-family ipv6 unicast

[PE2-isis-1-ipv6] segment-routing ipv6 locator abc

[PE2-isis-1-ipv6] quit

[PE2-isis-1] quit

(6)     配置CE 2

# 與PE建立EBGP對等體,引入VPN路由。

<CE2> system-view

[CE2] bgp 201

[CE2-bgp-default] peer 20.1.1.1 as-number 200

[CE2-bgp-default] address-family ipv4 unicast

[CE2-bgp-default-ipv4] peer 20.1.1.1 enable

[CE2-bgp-default-ipv4] import-route direct

[CE2-bgp-default-ipv4] quit

[CE2-bgp-default] quit

4. 驗證配置

# 在ASBR 2上執行display mpls lsp命令,可以看到MPLS標簽和SRv6 SID建立了映射關係,即LSP的出標簽為SRv6 SID。

[ASBR2] display mpls lsp srv6-mpls-interworking

FEC            : 3::3/43:1::1:0:2

Protocol       : BGP

In Label       : 600127

Out SRv6 SID   : 43:1::1:0:2

Path ID        : 0x16000000.1

# 在ASBR 2上執行display bgp routing-table vpnv4命令,可以看到為FEC 10.1.1.0/24分配了End.T SID。

[ASBR2] display bgp routing-table vpnv4 10.1.1.0

 

 BGP local router ID: 3.3.3.3

 Local AS number: 200

 

 

 Route distinguisher: 100:1

 Total number of routes: 1

 Paths:   1 available, 1 best

 

 BGP routing table information of 10.1.1.0/24:

 From            : 12.1.1.1 (2.2.2.2)

 Rely nexthop    : 12.1.1.1

 Original nexthop: 12.1.1.1

 Out interface   : GigabitEthernet1/0/2

 Route age       : 00h03m18s

 OutLabel        : 600126

 Ext-Community   : <RT: 100:1>

 RxPathID        : 0x0

 TxPathID        : 0x0

 PrefixSID       : End.T SID <42:1::1:0:4>

 AS-path         : 100 101

 Origin          : incomplete

 Attribute value : pref-val 0

 State           : valid, external, best

 IP precedence   : N/A

 QoS local ID    : N/A

 Traffic index   : N/A

 Tunnel policy   : NULL

 Rely tunnel IDs : 1

# CE 1和CE 2之間能夠ping通。

 

不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!

BOB登陆
官網
聯係我們