06-EVPN L3VPN over SRv6配置
本章節下載: 06-EVPN L3VPN over SRv6配置 (640.54 KB)
目 錄
1.1.1 EVPN L3VPN over SRv6基本原理
1.3.1 跨域EVPN L3VPN over SRv6網絡中轉代理SRv6 SID(邊界設備部署VPN實例方式)
1.4 EVPN L3VPN over SRv6網絡與IP L3VPN over SRv6網絡互通
1.6 EVPN L3VPN over SRv6硬件適配關係
1.7 EVPN L3VPN over SRv6配置任務簡介
1.10 配置向對等體/對等體組發布SRv6封裝的EVPN路由
1.12 配置為私網路由按下一跳分配End.DX4 SID/End.DX6 SID
1.15 配置EVPN L3VPN over SRv6封裝的IPv6報文頭的源地址
1.19 配置跨域EVPN L3VPN over SRv6網絡中轉代理SRv6 SID
1.20 配置EVPN L3VPN over SRv6網絡與IP L3VPN over SRv6網絡互通
1.22 EVPN L3VPN over SRv6顯示和維護
1.22.2 顯示和維護EVPN L3VPN over SRv6的運行狀態
1.23 EVPN L3VPN over SRv6典型配置舉例
1.23.1 IPv4 EVPN L3VPN over SRv6 BE典型配置舉例
EVPN L3VPN over SRv6是指通過SRv6隧道承載EVPN L3VPN業務,通過IPv6網絡透明傳輸用戶三層數據,實現屬於同一個VPN、位於不同地理位置的用戶互通。EVPN L3VPN的詳細介紹,請參見“EVPN配置指導”中的“EVPN L3VPN”。
如圖1-1所示,通過MP-BGP在IPv6骨幹網上使用EVPN的IP前綴路由發布用戶站點的IPv4/IPv6私網路由,使用PE間的單跳SRv6隧道承載私網報文,在骨幹網上根據IGP計算的最優路徑轉發私網報文,從而實現通過IPv6骨幹網連接屬於同一個VPN、位於不同地理位置的用戶。
圖1-1 EVPN L3VPN over SRv6組網示意圖
IPv4 EVPN L3VPN over SRv6和IPv6 EVPN L3VPN over SRv6的路由發布過程類似,以IPv4 EVPN 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學習到私網路由信息後,將其存放到相應的VPN實例1的路由表中。PE 1為私網路由增加RD和RT屬性,並按VPN實例分配私網標簽End.DT4 SID、End.DT46 SID(即同一VPN實例的所有私網路由分配相同的End.DT4 SID、End.DT46 SID),或按下一跳分配End.DX4 SID(即VPN實例中相同下一跳的私網路由分配相同的End.DX4 SID),形成EVPN的IP前綴路由。PE 1通過MP-BGP把EVPN的IP前綴路由發布給PE 2。
(3) PE 2收到EVPN的IP前綴路由後,將該路由加入到VPN實例1的路由表中並將EVPN的IP前綴路由轉換成IPv4路由發布給CE 2。
(4) CE 2收到路由後,學習到路由表中,即CE 2學習到CE 1的路由。
EVPN L3VPN over SRv6支持SRv6 BE、SRv6 TE和SRv6 TE/SRv6 BE混合三種路由迭代方式。采用不同的路由迭代方式時,報文轉發過程有所不同。
又稱為基於SID的轉發方式。該方式根據封裝的SRv6 SID查找IPv6路由表進行轉發。
IPv4 EVPN L3VPN over SRv6和IPv6 EVPN L3VPN over SRv6的報文轉發過程類似,以IPv4 EVPN 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) 根據報文頭攜帶的SID類型,PE1的處理方式不同:
¡ 如果報文頭攜帶的是End.DT4 SID或End.DT46 SID,PE 1根據End.DT4 SID或End.DT46 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對應的轉發動作,即解封裝報文去掉IPv6報文頭,並按照End.DX4 SID綁定的下一跳和出接口將報文發送給CE 1。
又稱為基於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地址與EVPN路由的Color擴展團體屬性和下一跳地址完全相同的SRv6 TE Policy。若存在,則將該EVPN路由迭代到SRv6 TE Policy。當設備收到匹配該EVPN路由的報文時,會通過SRv6 TE Policy轉發該報文。
· 基於隧道策略引流:根據路由下一跳地址在隧道策略中查找匹配的SRv6 TE Policy。通過首選隧道策略或負載分擔隧道策略,可以實現用指定SRv6 TE Policy的路徑作為公網隧道來轉發私網報文。
隧道策略的詳細介紹,請參見“MPLS配置指導”中的“隧道策略”;SRv6 TE Policy的詳細介紹,請參見“Segment Routing配置指導”中的“SRv6 TE Policy”。
該方式優先通過SRv6 TE方式選擇轉發路徑;如果SRv6 TE方式未找到可用的SRv6 TE Policy,則通過SRv6 BE方式選擇轉發路徑。
該方式下SRv6 TE路徑(SRv6 TE選擇的路徑)和SRv6 BE路徑(SRv6 BE選擇的路徑)形成FRR。其中SRv6 TE路徑為主路徑,SRv6 BE路徑為備份路徑。業務流量優先通過SRv6 TE路徑轉發。當SRv6 TE路徑故障或者不存在SRv6 TE路徑時,可以將業務流量快速切換到SRv6 BE備份路徑轉發,以實現快速保護,避免流量長時間丟失。
當承載VPN路由的骨幹網跨越SRv6網絡和MPLS網絡時,需要實現SRv6網絡和MPLS網絡互通。目前僅支持在Option B跨域VPN組網中實現互通。
如圖1-2所示,在Option B跨域VPN場景中,如果一個AS內部署MPLS網絡,另一個AS內部署SRv6網絡,為了實現跨域互通,需要實現SRv6 SID與MPLS標簽互相轉換。
圖1-2 跨域VPN-Option B組網示意圖
在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。
如圖1-2所示,CE 1路由發布到CE 2的過程為:
(1) PE 1從CE 1學習到私網路由後,通過MP-IBGP發布給ASBR 1。假設PE 1為私網路由分配的MPLS標簽為L1。
(2) ASBR 1接收PE 1發布的EVPN的IP前綴路由,並通過MP-EBGP將EVPN的IP前綴路由發布給ASBR 2。ASBR 1發布該路由時,將路由的下一跳地址改為自身的地址,為路由分配新的MPLS標簽L2,並為MPLS標簽L2和MPLS標簽L1建立關聯。
(3) ASBR 2從ASBR 1接收到EVPN的IP前綴路由後,通過MP-IBGP將路由發布給PE 2。ASBR 2在發布路由時,將路由的下一跳地址改為自身的地址,為路由分配End.T SID,並為End.T SID和MPLS標簽L2建立關聯。
(4) PE 2接收到路由後,將其發布給CE 2。
如圖1-2所示,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發布的EVPN的IP前綴路由,並通過MP-EBGP將EVPN的IP前綴路由發布給ASBR 1。ASBR 2發布該路由時,將路由的下一跳地址改為自身的地址,為路由分配新的MPLS標簽L2,並為MPLS標簽L2和SRv6 SID建立關聯。
(3) ASBR 1從ASBR 2接收到EVPN的IP前綴路由後,通過MP-IBGP將路由發布給PE 2。ASBR 1在發布路由時,將路由的下一跳地址改為自身的地址,為路由分配新的MPLS標簽為L1,並為MPLS標簽L1和MPLS標簽L2建立關聯。
(4) PE 1接收到路由後,將其發布給CE 1。
Option B跨域VPN場景中,ASBR需要接收所有跨域VPN的私網路由,因此,ASBR上不能根據Route Target屬性對接收的EVPN的IP前綴路由進行過濾。
完成路由發布後,報文從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的轉發過程為:
(1) PE 1接收到報文後,為其封裝兩層標簽,私網標簽L1和PE 1到ASBR 1的公網標簽,並將報文轉發給ASBR 1。
(2) ASBR 1收到報文後,剝離公網標簽,將私網標簽L1替換為L2,並將報文發送給ASBR 2。ASBR 1和ASBR 2之間的報文隻帶一層私網標簽。
(3) ASBR 2收到報文後,將私網標簽L2替換為SRv6 SID,根據SRv6 SID將報文轉發給PE 2。
(4) PE 2收到報文後,根據SRv6 SID執行對應的轉發動作,將報文轉發給CE 1。
如圖1-3所示,數據中心內部署MPLS L3VPN,數據中心之間通過EVPN L3VPN over SRv6網絡連接。為實現不同數據中心跨EVPN L3VPN over SRv6網絡互聯,數據中心邊界設備ASBR上需要配置SRv6網絡與MPLS L3VPN網絡互通功能。
圖1-3 SRv6網絡與MPLS L3VPN網絡互通組網圖
在ASBR設備上配置SRv6網絡與MPLS L3VPN網絡互通功能後,ASBR將對路由進行如下處理:
· ASBR從MPLS L3VPN網絡接收到攜帶MPLS標簽的VPNv4路由後,匹配RT屬性,將其添加到對應VPN實例的路由表中,並重生成為EVPN IP前綴路由。ASBR根據該VPN實例的配置為路由分配SRv6 SID,並將攜帶SRv6 SID的EVPN IP前綴路由發布到EVPN L3VPN over SRv6網絡。
· ASBR從EVPN L3VPN over SRv6網絡接收到攜帶SRv6 SID的EVPN IP前綴路由後,匹配RT屬性,將其添加到對應VPN實例的路由表中,並重生成為VPNv4路由。ASBR根據該VPN實例的配置為路由分配MPLS標簽,並將攜帶MPLS標簽的VPNv4路由發布到MPLS L3VPN網絡。
進行路由重生成後,還需要在ASBR上開啟SRv6網絡與MPLS網絡互通功能,使SRv6 SID和MPLS標簽關聯。
圖1-4 SRv6網絡與MPLS L3VPN網絡互通報文轉發過程圖
如圖1-4所示,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。
在多個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-5 跨域EVPN L3VPN over SRv6網絡中轉代理SRv6 SID組網圖
如圖1-5所示,為了使得PE 1的Locator網段路由信息不發布給PE 2也能實現Site 1和Site 2互通,在ASBR 2設備上配置修改BGP路由攜帶的SRv6 SID功能後,ASBR 2將對BGP路由進行如下處理:
· ASBR 2從ASBR 1接收到攜帶了SRv6 SID的IP前綴路由後,將這些路由加入到本地RT匹配的VPN實例IP路由表中,並刪除這些路由攜帶的SRv6 SID,在本地RT匹配的VPN實例內為IP前綴路由重新申請SRv6 SID,重新申請的SRv6 SID和原SID類型一致。
不支持重新申請End.DX4 SID和End.DX6 SID類型的SRv6 SID。
· ASBR 2向PE 2轉發收到的IP前綴路由時,隻需要發送重新申請了SRv6 SID的路由。
圖1-6 跨域EVPN L3VPN over SRv6網絡中轉代理SRv6 SID報文轉發過程圖
如圖1-6所示,完成路由學習後,Site 2訪問Site 1的報文轉發過程為:
(1) PE 2接收到Site 2內發送的報文後,在VPN實例內查找路由表,查找到路由對應的SRv6 SID,並為報文封裝SRv6 SID(該SRv6 SID為ASBR 2在本地VPN實例內為BGP路由重新申請的SRv6 SID),通過SRv6 BE或SRv6 TE方式將報文發送給ASBR 2。
(2) ASBR 2根據SRv6 SID判斷接收到報文所屬的VPN實例,並解除SRv6封裝,在對應VPN實例內查找路由表,查找到路由對應的SRv6 SID,重新為報文封裝SRv6 SID(該SRv6 SID為PE 1發布的原始SRv6 SID),並通過SRv6 BE或SRv6 TE方式將報文發送給PE 1。
(3) PE 1收到報文後,根據SRv6 SID判斷接收到報文所屬的VPN實例,並解除SRv6封裝,在對應VPN實例內查找路由表轉發報文給Site 1。
在上述過程中,除了ASBR設備需要獲得對端AS域內PE設備發布Locator網段路由信息外,PE設備均無需知曉對端AS域內PE設備發布的Locator網段路由信息,僅需獲得當前AS域的ASBR發布的Locator網段路由即可。ASBR設備的這一“中轉”行為,解決了Locator網段路由未跨域發布時無法進行SRv6網絡間站點用戶互通的問題。
如圖1-7所示,ASBR同時連接EVPN L3VPN over SRv6網絡以及IP L3VPN over SRv6網絡。ASBR通過轉換IP前綴路由和BGP VPNv4/VPNv6路由的類型,來將BGP路由發布到其他網絡中,以實現EVPN L3VPN over SRv6網絡和IP L3VPN over SRv6網絡之間的用戶互通。
圖1-7 EVPN L3VPN over SRv6網絡與IP L3VPN over SRv6網絡互通組網圖
在ASBR上配置EVPN L3VPN over SRv6網絡與IP L3VPN over SRv6網絡互通功能後,ASBR將對BGP路由做如下處理:
· ASBR從EVPN L3VPN over SRv6網絡中接收到IP前綴路由後,會在與該IP前綴路由RT匹配的VPN實例中重新生成一條相同前綴的BGP VPNv4/VPNv6路由,並且在VPN實例內重新為生成的BGP VPNv4路由申請SRv6 SID。ASBR將重新生成的BGP VPNv4/VPNv6路由發布給IP L3VPN over SRv6網絡內的PE設備。
· ASBR從IP L3VPN over SRv6網絡中接收到BGP VPNv4/VPNv6路由後,會在與該VPNv4/VPNv6路由RT匹配的VPN實例中重新生成一條相同前綴的IP前綴路由,並且在VPN實例內重新為生成的IP前綴路由申請SRv6 SID。ASBR將重新生成的IP前綴路由發布給EVPN L3VPN over SRv6網絡內的PE設備。
圖1-8 EVPN L3VPN over SRv6與IP L3VPN over SRv6報文轉發圖
如圖1-8所示,完成路由學習後,以Site 2發往Site 1的IPv4報文轉發為例,不同站點間用戶互訪的報文轉發過程為:
(1) PE 2接收到Site 2內發送的報文後,在VPN實例內查找路由表,查找到路由對應的SRv6 SID,並為報文封裝SRv6 SID(該SRv6 SID為ASBR在本地VPN實例內為BGP VPNv4路由重新申請的SRv6 SID),通過SRv6 BE或SRv6 TE方式將報文發送給ASBR 2。
(2) ASBR根據SRv6 SID判斷接收到報文所屬的VPN實例,並解除SRv6封裝,在對應VPN實例內查找路由表,查找到路由對應的SRv6 SID,重新為報文封裝SRv6 SID(該SRv6 SID為PE 1發布的IP前綴路由攜帶的原始SRv6 SID),並通過SRv6 BE或SRv6 TE方式將報文發送給PE 1。
(3) PE 1收到報文後,根據SRv6 SID判斷接收到報文所屬的VPN實例,並解除SRv6封裝,在對應VPN實例內查找路由表,將報文轉發給Site 1。
EVPN L3VPN over SRv6快速重路由功能用來在CE雙歸屬(即一個CE同時連接兩個PE)的組網環境下,通過為流量轉發的主路徑指定一條備份路徑,並通過靜態BFD檢測主路徑的狀態,實現當主路徑出現故障時,將流量迅速切換到備份路徑,大大縮短了故障恢複時間。在使用備份路徑轉發報文的同時,會重新進行路由優選,優選完畢後,使用新的最優路由來轉發報文。
目前,EVPN L3VPN over SRv6快速重路由的路徑備份方式為EVPN路由備份EVPN路由。
圖1-9 EVPN路由備份EVPN路由示意圖
如圖1-9所示,在入節點PE 1上指定VPN 1的FRR備份下一跳為PE 3,則PE 1接收到PE 2和PE 3發布的到達CE 2的EVPN路由後,PE 1會記錄這兩條EVPN路由,並將PE 2發布的EVPN路由當作主路徑,PE 3發布的EVPN路由當作備份路徑。
在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”。
本特性的支持情況與設備型號有關,請以設備實際情況為準。
型號 |
說明 |
MSR610 |
不支持 |
MSR810、MSR810-W、MSR810-W-DB、MSR810-LM、MSR810-W-LM、MSR810-10-PoE、MSR810-LM-HK、MSR810-W-LM-HK、MSR810-LM-CNDE-SJK、MSR810-CNDE-SJK、MSR810-EI、MSR810-LM-EA、MSR810-LM-EI |
支持 |
MSR810-LMS、MSR810-LUS |
不支持 |
MSR810-SI、MSR810-LM-SI |
不支持 |
MSR810-LMS-EA、MSR810-LME |
支持 |
MSR1004S-5G、MSR1004S-5G-CN |
支持 |
MSR1104S-W、MSR1104S-W-CAT6、MSR1104S-5G-CN、MSR1104S-W-5G-CN、MSR1104S-W-5GGL |
支持 |
MSR2600-6-X1、MSR2600-15-X1、MSR2600-15-X1-T |
支持 |
MSR2600-10-X1 |
支持 |
MSR2630-G-X1 |
支持 |
MSR 2630 |
支持 |
MSR3600-28、MSR3600-51 |
支持 |
MSR3600-28-SI、MSR3600-51-SI |
不支持 |
MSR3600-28-X1、MSR3600-28-X1-DP、MSR3600-51-X1、MSR3600-51-X1-DP |
支持 |
MSR3600-28-G-DP、MSR3600-51-G-DP |
支持 |
MSR3600-28-G-X1-DP、MSR3600-51-G-X1-DP |
支持 |
MSR3610-I-DP、MSR3610-IE-DP、MSR3610-IE-ES、MSR3610-IE-EAD、MSR-EAD-AK770、MSR3610-I-IG、MSR3610-IE-IG |
支持 |
MSR-iMC |
支持 |
MSR3610-X1、MSR3610-X1-DP、MSR3610-X1-DC、MSR3610-X1-DP-DC、MSR3620-X1、MSR3640-X1 |
支持 |
MSR3610、MSR3620、MSR3620-DP、MSR3640、MSR3660 |
支持 |
MSR3610-G、MSR3620-G |
支持 |
MSR3640-G |
支持 |
MSR3640-X1-HI |
支持 |
型號 |
說明 |
MSR810-W-WiNet、MSR810-LM-WiNet |
支持 |
MSR830-4LM-WiNet |
支持 |
MSR830-5BEI-WiNet、MSR830-6EI-WiNet、MSR830-10BEI-WiNet |
支持 |
MSR830-6BHI-WiNet、MSR830-10BHI-WiNet |
支持 |
MSR2600-6-WiNet |
支持 |
MSR2600-10-X1-WiNet |
支持 |
MSR2630-WiNet |
支持 |
MSR3600-28-WiNet |
支持 |
MSR3610-X1-WiNet |
支持 |
MSR3620-X1-WiNet |
支持 |
MSR3610-WiNet、MSR3620-10-WiNet、MSR3620-DP-WiNet、MSR3620-WiNet、MSR3660-WiNet |
支持 |
型號 |
說明 |
MSR860-6EI-XS |
支持 |
MSR860-6HI-XS |
支持 |
MSR2630-XS |
支持 |
MSR3600-28-XS |
支持 |
MSR3610-XS |
支持 |
MSR3620-XS |
支持 |
MSR3610-I-XS |
支持 |
MSR3610-IE-XS |
支持 |
MSR3620-X1-XS |
支持 |
MSR3640-XS |
支持 |
MSR3660-XS |
支持 |
型號 |
說明 |
MSR810-LM-GL |
支持 |
MSR810-W-LM-GL |
支持 |
MSR830-6EI-GL |
支持 |
MSR830-10EI-GL |
支持 |
MSR830-6HI-GL |
支持 |
MSR830-10HI-GL |
支持 |
MSR1004S-5G-GL |
支持 |
MSR2600-6-X1-GL |
支持 |
MSR3600-28-SI-GL |
不支持 |
EVPN 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。
通過引用Locator段後,BGP路由才可以通告Locator段內的SRv6 SID。
隻有配置本功能後,VPN路由才能作為EVPN路由發布到對等體/對等體組。
e. (可選)配置為私網路由按下一跳分配End.DX4 SID/End.DX6 SID
配置本功能後,PE設備可以為BGP私網路由按下一跳分配End.DX4 SID/End.DX6 SID。
f. (可選)配置BGP EVPN路由
(4) 配置路由迭代方式
(5) 配置EVPN L3VPN over SRv6封裝的IPv6報文頭的源地址
本功能用來指定EVPN L3VPN over SRv6骨幹網中報文封裝的IPv6報文頭的源地址。
(6) (可選)開啟對等體/對等體組的SRv6 VPN兼容功能
(7) (可選)Option B跨域VPN
(8) (可選)配置SRv6網絡與MPLS L3VPN網絡互通
(9) (可選)配置跨域EVPN L3VPN over SRv6網絡中轉代理SRv6 SID
(10) (可選)配置EVPN L3VPN over SRv6網絡與IP L3VPN over SRv6網絡互通
(11) (可選)配置VPN實例關聯的隧道對TTL的處理模式
(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 end-dt4 vpn-instance vpn-instance-name evpn
指定的VPN實例必須已經存在。不同VPN實例不能配置相同End.DT4 SID。
¡ 配置End.DT6 SID。
opcode opcode end-dt6 vpn-instance vpn-instance-name evpn
指定的VPN實例必須已經存在。不同VPN實例不能配置相同End.DT6 SID。
¡ 配置End.DT46 SID。
opcode opcode end-dt46 vpn-instance vpn-instance-name evpn
指定的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 evpn
指定的VPN實例必須已經存在。不同下一跳和出接口不能配置相同End.DX4 SID。
¡ 配置End.DX6 SID。
opcode opcode end-dx6 interface interface-type interface-number nexthop nexthop-ipv6-address vpn-instance vpn-instance-name evpn
指定的VPN實例必須已經存在。不同下一跳和出接口不能配置相同End.DX6 SID。
在EVPN 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時,都需要執行本配置。
配置本功能前,必須滿足以下條件:
· 指定的Locator必須存在。
· End.DT4 SID/End.DT6 SID所在VPN實例與私網的VPN實例必須相同。
(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 evpn [ auto-sid-disable ]
缺省情況下,未引用Locator。
在EVPN L3VPN over SRv6組網環境中需要配置本功能,否則VPN路由無法作為EVPN路由發布到對等體/對等體組。
本功能通常配置在EVPN承載的L3VPN網絡的邊緣節點和RR(Route Reflector,路由反射器)設備上。
(1) 進入係統視圖。
system-view
(2) 進入BGP實例視圖。
bgp as-number [ instance instance-name ]
(3) 進入BGP EVPN地址族視圖。
address-family l2vpn evpn
(4) 配置向對等體/對等體組發布SRv6封裝的EVPN路由。
peer { group-name | ipv6-address [ prefix-length ] } advertise encap-type srv6
缺省情況下,向對等體/對等體組發布VXLAN封裝的IP前綴路由。
PE之間不能同時建立IPv4和IPv6對等體,否則影響路由優選,無法通過SRv6隧道轉發流量。
(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 EVPN地址族,並進入BGP EVPN地址族視圖。
address-family l2vpn evpn
(6) 使能本地路由器與指定IPv6對等體交換EVPN路由信息的能力。
peer { group-name | ipv6-address [ prefix-length ] } enable
缺省情況下,本地路由器不能與對等體交換EVPN路由信息。
在EVPN L3VPN over SRv6組網場景中,如果配置了End.DT4 SID、End.DT6 SID或End.DT46 SID,則PE根據VPN實例為BGP EVPN私網路由分配相同SID。PE對接收到的報文解封裝後,會在SID標識的VPN實例內查找路由表,將報文轉發給CE。如果希望不查路由表,直接快速地將報文轉發給下一跳,則可以基於下一跳地址為BGP路由分配End.DX4/End.DX6 SID。
配置本功能前,必須先在BGP-VPN IPv4單播地址族視圖或BGP-VPN IPv6單播地址族引用Locator段。
本功能不會為直連路由分配End.DX4 SID或者End.DX6 SID。
(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 EVPN路由為所有下一跳分配End.DX4/End.DX6 SID。
segment-routing ipv6 apply-sid all-nexthop evpn
¡ 依次執行以下命令,配置BGP EVPN路由為指定下一跳分配End.DX4/End.DX6 SID。
segment-routing ipv6 apply-sid specify-nexthop evpn
nexthop nexthop-address interface interface-type interface-number
缺省情況下,根據VPN實例為私網路由分配SID。
本節所有命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP”。
(1) 進入係統視圖。
system-view
(2) 進入BGP實例視圖。
bgp as-number [ instance instance-name ]
(3) 進入BGP EVPN地址族視圖。
address-family l2vpn evpn
(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) 進入係統視圖。
system-view
(2) 進入BGP實例視圖。
bgp as-number [ instance instance-name ]
(3) 進入BGP EVPN地址族視圖。
address-family l2vpn evpn
(4) 配置NEXT_HOP屬性,向對等體/對等體組發布路由時,將下一跳屬性修改為自身的地址。
peer { group-name | ipv6-address [ prefix-length ] } next-hop-local
缺省情況下,向對等體/對等體組發布路由時,將下一跳屬性修改為自身的地址。
(5) 配置對於從對等體/對等體組接收的路由,允許本地AS號在接收路由的AS_PATH屬性中出現,並配置允許出現的次數。
peer { group-name | ipv6-address [ prefix-length ] } allow-as-loop [ number ]
缺省情況下,不允許本地AS號在接收路由的AS_PATH屬性中出現。
(6) 配置向對等體/對等體組發布團體屬性。
peer { group-name | ipv6-address [ prefix-length ] } advertise-community
缺省情況下,不向對等體/對等體組發布團體屬性。
(1) 進入係統視圖。
system-view
(2) 進入BGP實例視圖。
bgp as-number [ instance instance-name ]
(3) 進入BGP EVPN地址族視圖。
address-family l2vpn evpn
(4) 配置對發布的路由信息進行過濾。
filter-policy { mac-acl-number | name mac-acl-name } export
缺省情況下,不對發布的路由信息進行過濾。
(5) 配置對接收的路由信息進行過濾。
filter-policy { mac-acl-number | name mac-acl-name } import
缺省情況下,不對接收的路由信息進行過濾。
(6) 對來自對等體/對等體組的路由或發布給對等體/對等體組的路由應用路由策略。
peer { group-name | ipv6-address [ prefix-length ] } route-policy route-policy-name { export | import }
缺省情況下,沒有為對等體/對等體組指定路由策略。
(7) 配置對接收到的EVPN路由進行Route Target過濾。
policy vpn-target
缺省情況下,對接收到的EVPN路由進行Route Target過濾,即隻將Export Route Target屬性與本地Import Route Target屬性匹配的EVPN路由加入到路由表。
EVPN L3VPN over SRv6網絡中,設備為用戶流量封裝SRv6 SID後,可以根據如下路由迭代方式為封裝後的報文查找轉發路徑:
· SRv6 BE方式
· SRv6 TE方式
· SRv6 TE/SRv6 BE混合方式
· SRv6 TE快速切換為SRv6 BE方式
(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 ]
segment-routing ipv6 { best-effort | traffic-engineering | traffic-engineering best-effort | traffic-engineering best-effort-backup } evpn
缺省情況下,BGP路由不會根據自身攜帶的SRv6 SID進行迭代。
如果SRv6 TE Policy的源節點和目的節點之間存在多條SRv6 BE路徑,則在多條SRv6 BE路徑中選擇下一跳地址最小的SRv6 BE路徑作為備份路徑。
在EVPN L3VPN over SRv6組網環境中,必須指定封裝的IPv6報文頭的源地址。否則,無法通過EVPN L3VPN over SRv6轉發數據流量。
配置源地址時,不能為環回地址、鏈路本地地址、組播地址和未指定地址。指定的源地址必須為本機地址,且已經由路由協議發布,建議指定本設備的Loopback接口地址。
(1) 進入係統視圖。
system-view
(2) 進入SRv6視圖。
segment-routing ipv6
(3) 配置EVPN L3VPN over SRv6封裝的IPv6報文頭的源地址。
encapsulation source-address ipv6-address [ ip-ttl ttl-value ]
缺省情況下,未指定EVPN L3VPN over SRv6封裝的IPv6報文頭的源地址。
在EVPN L3VPN over SRv6網絡中,不同廠商的PE設備可能使用不同的格式將SRv6 SID封裝在EVPN路由中,造成不同廠商設備無法識別對方發送的EVPN路由,從而導致路由信息發布失敗。為了解決這一問題,可以配置本功能,修改H3C設備發送的BGP路由中SRv6 SID的封裝格式,使其與對端PE設備的SRv6 SID封裝格式相同,以實現H3C設備與其他廠商設備的互通。
(1) 進入係統視圖。
system-view
(2) 進入BGP實例視圖。
bgp as-number [ instance instance-name ]
(3) 進入BGP EVPN地址族視圖。
address-family l2vpn evpn
(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進行封裝。
在Option B跨域VPN場景中,如果一個AS內部署MPLS網絡,另一個AS內部署SRv6網絡,為了實現跨域互通,需要在部署SRv6網絡的AS域的ASBR上開啟SRv6網絡與MPLS網絡互通功能,以實現End.T SID的分配,並建立End.T SID與MPLS標簽的關聯。
開啟SRv6網絡與MPLS網絡互通功能後,路由從SRv6網絡發布到MPLS網絡時,會按照每下一跳方式分配標簽,不受label-allocation-mode命令和apply-label命令的影響。有關label-allocation-mode命令的詳細介紹,請參見“三層技術-IP路由命令參考”中的“BGP”;有關apply-label命令的詳細介紹,請參見“MPLS命令參考”中的“MPLS L3VPN”。
(1) 進入係統視圖。
system-view
(2) 進入BGP實例視圖。
bgp as-number [ instance instance-name ]
(3) 進入BGP EVPN地址族視圖。
address-family l2vpn evpn
(4) 配置從對等體/對等體組接收到BGP EVPN路由後,修改路由信息。
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } re-originated [ replace-rt ]
缺省情況下,不修改從對等體/對等體組接收到的EVPN路由的信息。
(5) (可選)配置向對等體/對等體組發布源EVPN路由。
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } advertise original-route
缺省情況下,通過peer re-originated命令配置修改路由信息後,不向對等體/對等體組發布源EVPN路由。
(6) (可選)抑製向對等體/對等體組發送修改路由信息後的EVPN路由。
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } suppress re-originated ip-prefix
缺省情況下,通過peer re-originated命令配置修改路由信息後,向對等體/對等體組發送修改路由信息後的EVPN路由。
(7) 開啟SRv6網絡與MPLS網絡互通功能。
srv6-mpls-interworking enable
缺省情況下,SRv6網絡與MPLS網絡互通功能處於關閉狀態。
(8) 配置BGP引用Locator段。
segment-routing ipv6 locator locator-name evpn [ auto-sid-disable ]
缺省情況下,未引用Locator。
(9) 配置路由迭代方式。
segment-routing ipv6 { best-effort | traffic-engineering | traffic-engineering best-effort } evpn
缺省情況下,根據路由的下一跳地址查找IPv6路由表進行轉發。
數據中心內部署MPLS L3VPN網絡,不同數據中心通過EVPN L3VPN over SRv6網絡連接時,需要在數據中心的邊界設備ASBR上配置本功能,以實現數據中心之間互聯。
需要在ASBR上開啟SRv6網絡與MPLS網絡互通功能。
(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路由的信息。
(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路由的信息。
在跨域SRv6網絡中,網絡管理員不希望Locator網段路由信息傳遞到其他AS域內時,需要在ASBR上配置本功能,通過修改BGP路由攜帶的SRv6 SID的方式為跨域SRv6網絡互通實現中轉代理。
配置本功能後,設備從指定的對等體接收到攜帶了SRv6 SID的IP前綴路由後,會將這些路由加入到本地RT匹配的VPN實例IP路由表中,並刪除這些路由攜帶的SRv6 SID,在本地RT匹配的VPN實例內為IP前綴路由重新申請SRv6 SID,重新申請的SRv6 SID和原SID類型一致。設備轉發收到的IP前綴路由時,隻需要發送重新申請了SRv6 SID的路由。
不支持重新申請End.DX4 SID和End.DX6 SID類型的SRv6 SID。
(1) 進入係統視圖。
system-view
(2) 進入BGP實例視圖。
bgp as-number [ instance instance-name ]
(3) 進入BGP EVPN地址族視圖。
address-family l2vpn evpn
(4) 配置從對等體/對等體組接收到BGP路由後,修改路由攜帶的SRv6 SID。
peer { group-name | ipv6-address [ prefix-length ] } re-originated [ ip-prefix ] [ replace-rt ] replace-sid
缺省情況下,不修改從對等體/對等體組接收到的IP前綴路由的信息。
需要實現EVPN L3VPN over SRv6網絡與IP L3VPN over SRv6網絡之間的私網用戶互通時,需要在同時連接兩個網絡的ASBR上配置本功能。
(1) 進入係統視圖。
system-view
(2) 進入BGP實例視圖。
bgp as-number [ instance instance-name ]
(3) 進入BGP EVPN地址族視圖。
address-family l2vpn evpn
(4) 配置允許BGP VPNv4路由或VPNv6路由通過BGP EVPN地址族發布給對等體。
advertise l3vpn route [ replace-rt ] replace-sid [ advertise-policy policy-name ]
缺省情況下,BGP VPNv4或VPNv6路由不會通過EVPN地址族向外發送。
有關本命令的詳細介紹,請參見“EVPN命令參考”中的“EVPN”。
(5) 退回BGP實例視圖。
quit
(6) 進入BGP VPNv4地址族視圖或BGP VPNv6地址族視圖。
¡ 進入BGP VPNv4地址族視圖。
address-family vpnv4
¡ 進入BGP VPNv6地址族視圖。
address-family vpnv6
(7) 配置允許BGP EVPN路由通過BGP VPNv4或VPNv6地址族發布給對等體。
advertise evpn route [ replace-rt ] replace-sid [ advertise-policy policy-name ]
缺省情況下,BGP EVPN路由不會通過BGP VPNv4或VPNv6地址族向外發送。
有關本命令的詳細介紹,請參見“EVPN命令參考”中的“EVPN”。
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的結果將反映報文實際經過的路徑。
目前僅支持配置VPN實例關聯的SRv6隧道對TTL的處理模式。
(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”。
當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 |
在完成上述配置後,在任意視圖下執行display命令可以顯示配置後EVPN L3VPN over SRv6的運行情況,通過查看顯示信息驗證配置的效果。
表1-2 顯示和維護EVPN L3VPN over SRv6的運行狀態
操作 |
命令 |
顯示BGP EVPN路由信息 |
display bgp [ instance instance-name ] l2vpn evpn [ peer ipv4-address { advertised-routes | received-routes } [ statistics ] | route-distinguisher route-distinguisher [ route-type ip-prefix ] [ evpn-route route-length [ advertise-info ] ] | route-type { auto-discovery | es | imet | ip-prefix | mac-ip } | statistics ] |
如圖1-10所示,核心網為IPv6網絡,私網為IPv4網絡,在IPv6網絡中PE設備之間部署EVPN L3VPN over SRv6 BE,通過SRv6隧道傳遞EVPN數據。
· CE 1和CE 2均屬於VPN 1。
· CE與PE之間配置EBGP交換VPN路由信息。
· 同一自治係統內的PE設備之間運行IS-IS實現IPv6網絡互通,配置MP-IBGP交換EVPN路由信息。
圖1-10 IPv4 EVPN 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 |
|
|
|
(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-10配置各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 l2vpn evpn
[PE1-bgp-default-evpn] peer 3::3 enable
[PE1-bgp-default-evpn] 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 l2vpn evpn
[PE2-bgp-default-evpn] peer 1::1 enable
[PE2-bgp-default-evpn] quit
[PE2-bgp-default] quit
配置完成後,在PE設備上執行display bgp peer l2vpn evpn命令,可以看到PE之間的BGP對等體關係已建立,並達到Established狀態。
(5) 在PE設備上配置EVPN IPv4 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設備上配置EVPN IPv4 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 evpn
[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 evpn
[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 l2vpn evpn
[PE1-bgp-default-evpn] peer 3::3 advertise encap-type srv6
[PE1-bgp-default-evpn] 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 evpn
[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 l2vpn evpn
[PE2-bgp-default-evpn] peer 1::1 advertise encap-type srv6
[PE2-bgp-default-evpn] 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 evpn
[PE2-bgp-default-ipv4-vpn1] quit
[PE2-bgp-default-vpn1] quit
[PE2-bgp-default] quit
配置完成後,在PE設備上執行display bgp l2vpn evpn命令查看對端PE發送的路由詳細信息,可以看到對端PE發送的路由攜帶SID屬性數據。
以PE 1為例:
[PE1] display bgp l2vpn evpn route-distinguisher 100:1 [5][0][24][10.2.1.0]/80
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 [5][0][24][10.2.1.0]/80:
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
EVPN route type : IP prefix advertisement route
ESI : 0000.0000.0000.0000.0000
Ethernet tag ID : 0
IP prefix : 10.2.1.0/24
Gateway address : 0.0.0.0
MPLS label : 3
Tunnel policy : NULL
Rely tunnel IDs : N/A
# 在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通。
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!