04-EVPN VPWS配置
本章节下载: 04-EVPN VPWS配置 (1.34 MB)
目 录
1.8.8 配置向对等体/对等体组发送BGP RPKI验证结果
1.8.9 通过将所有路由更新信息保存在本地实现BGP软复位
1.13.1 配置EVPN VPWS的Bypass PW功能
1.17.4 EVPN VPWS跨域Option A配置举例
1.17.5 EVPN VPWS跨域Option B配置举例
1.17.6 EVPN VPWS跨域Option C配置举例
EVPN VPWS(Virtual Private Wire Service,虚拟专线服务)是控制层面采用MP-BGP通告EVPN路由信息,数据层面采用MPLS封装的二层VPN技术。用户网络的数据报文直接通过交叉连接下的AC和PW转发,无需查找二层MAC地址,为用户提供点到点的二层服务。
图1-1 EVPN VPWS网络模型示意图
如图1-1所示,EVPN VPWS的典型网络模型中包括如下几部分:
· CE(Customer Edge,用户网络边缘):直接与服务提供商网络相连的用户网络侧设备。
· PE(Provider Edge,服务提供商网络边缘):与CE相连的服务提供商网络侧设备。PE主要负责EVPN业务的接入,完成报文从用户网络到公网隧道、从公网隧道到用户网络的映射与转发。
· AC(Attachment Circuit,接入电路):连接CE和PE的物理电路或虚拟电路。
· PW(Pseudowire,伪线):两个PE之间的虚拟双向连接。PW由一对方向相反的单向虚拟连接构成。
· 公网隧道(Tunnel):穿越IP或MPLS骨干网、用来承载PW的隧道。一条公网隧道可以承载多条PW,公网隧道可以是LSP、GRE隧道或MPLS TE隧道。
· 交叉连接(Cross connect):由两条物理电路或虚拟电路串连而成的一条连接,从一条物理、虚拟电路收到的报文直接交换到另一条物理、虚拟电路转发。交叉连接包括二种方式:AC到AC交叉连接和AC到PW交叉连接。
EVPN VPWS远程连接通过穿越IP或MPLS骨干网络的PW连接两端的用户网络,为用户提供点对点的二层服务。要想通过EVPN VPWS的远程连接转发报文,需要完成以下工作:
(1) 建立公网隧道,公网隧道用来承载PE之间的一条或多条PW。
(2) 建立用来传送特定用户网络报文的PW,PW标签标识了报文所属的用户网络。
(3) 建立用来连接CE和PE的AC,AC的报文匹配规则(显式配置或隐含的规则)决定了从CE接收到的哪些报文属于一个特定的用户网络。
(4) 将AC和PW关联,以便PE确定从AC接收到的报文向指定PW转发,从PW接收到的报文向指定AC转发。
完成上述配置后,PE从AC接收到用户网络的报文后,根据AC关联的PW为报文封装PW标签,并通过公网隧道将报文转发给远端PE;远端PE从公网隧道接收到报文后,根据PW标签判断报文所属的PW,并将还原后的原始报文转发给与该PW关联的AC。
公网隧道用来承载PW,可以是LSP隧道、MPLS TE隧道和GRE隧道等。不同隧道的建立方式不同,详细介绍请参见相关手册。
当两个PE之间存在多条公网隧道时,可以通过配置隧道策略,确定如何选择隧道。隧道策略的详细介绍,请参见“MPLS配置指导”中的“隧道策略”。
如果PW建立在LSP或MPLS TE隧道之上,则PW上传送的报文将包括两层标签:内层标签为PW标签,用来决定报文所属的PW,从而将报文转发给正确的CE;外层标签为公网LSP或MPLS TE隧道标签,用来保证报文在MPLS网络正确传送。
建立PW是指两端的PE设备分别为对方分配PW标签,以便建立方向相反的一对单向虚拟连接。PW的建立是通过在两端PE上分别指定local-service-id和remote-service-id,通过以太网自动发现路由互相通告local-service-id并与本地配置进行匹配实现的。若收到的local-service-id与本地配置的remote-service-id相同,则建立一条单向虚拟连接。当两端的PE间建立了两条方向相反的单向虚拟连接,则PW建立完成。
在EVPN VPWS中,AC是与交叉连接关联的三层以太网接口、三层以太网子接口或以太网服务实例。以太网服务实例在二层以太网接口上创建,它定义了一系列匹配规则,用来匹配从该二层以太网接口上接收到的数据帧。
通过命令行将AC连接对应的三层以太网接口、三层以太网子接口或以太网服务实例与PW关联,即可实现从该AC接收到的报文通过关联的PW转发,从关联的PW上接收到的报文通过该AC转发。
当一个站点通过不同的以太网链路连接到多台PE时,这些链路就构成了一个ES(Ethernet Segment,以太网段),并以一个相同的ESI(ES Identifier)标识其属于同一个ES。连接的多台PE组成冗余备份组,可以避免PE单点故障对网络造成影响,从而提高网络的可靠性。目前仅支持双归属。
EVPN VPWS组网场景支持的冗余备份模式包括:单活冗余模式和多活冗余模式。
· 单活冗余模式
如图1-3所示,单活冗余模式下,PE 1和PE 2中仅其中一台转发流量,PE 1和PE 2上的两条PW为主备关系,实现当主PW出现故障后,将流量立即切换到备份PW,使流量转发得以继续。通过DF选举可以确定主备PW,DF选举的详细介绍,请参见“3. DF选举”。当PE 1的PW不可用(可能是PE 1节点故障,也可能是PW故障)时,PE 3将启用备份PW,通过备份PW将CE 2的报文转发给PE 2,再由PE 2转发给CE 1;同时建议在PE 1设备AC侧的物理接口与PW侧的物理接口(用于建立EVPN PW的接口)配置EAA和Track联动的CLI监控策略,使这两个接口联动,可以确保PW侧的Underlay网络断开时,将AC侧的接口置于Down状态,使CE 1到CE 2的流量通过PE 2转发。EAA的详细介绍,请参见“网络管理和监控配置指导”中的“EAA”。
· 多活冗余模式
多活冗余模式下,两条PW等价负载分担转发数据报文。该模式下也需要在PE设备AC侧的物理接口与PW侧的物理接口(用于建立EVPN PW的接口)配置EAA和Track联动的CLI监控策略,使这两个接口联动,提高网络可靠性。
在单活冗余模式下,数据报文仅通过一条PW转发,此时需要在冗余备份组中选举一个PE作为DF(Designated Forwarder,指定转发者),该PE上创建的PW为主PW。其他PE作为BDF(Backup DF,备份DF),其上创建的PW为备份PW。多归属成员通过发送以太网段路由,向其它PE通告ES及PE信息,仅配置了ESI的PE会接收以太网段路由并根据其携带的ES和PE信息选举出DF。
设备支持多种DF选举算法,用户可以根据业务需要灵活地选择DF选举算法,使组网中DF能够均匀分布,提高网络设备的使用率。
图1-4 DF示意图
· 基于VLAN Tag的DF选举算法
基于VLAN Tag的DF选举算法根据VLAN Tag和VTEP的IP地址为每个AC选举DF。
图1-5 基于VLAN Tag的DF选举
如图1-5所示,以允许VLAN Tag 4通过的AC 1的DF选举为例,基于VLAN Tag的DF选举算法为:
a. 选取AC内允许通过的最小VLAN Tag代表该AC。在本例中,代表AC 1的VLAN Tag为4。
b. VTEP根据接收到的以太网段路由,对携带相同ESI的路由中的源IP地址按升序排列,编号从0开始。在本例中,源IP 1.1.1.1、2.2.2.2对应的编号依次为0、1。
c. 根据VLAN Tag除以N的余数M来选举DF,N代表冗余备份组中成员的数量,M对应的编号为该AC的DF。在本例中,4除以2的余数为0,即AC 1的DF为编号为0的VTEP 1。
· 基于优先级的DF选举算法
基于优先级的DF选举算法根据DF选举优先级、DP(Don't Preempt Me,不可回切)位和VTEP的IP地址为每个ES选举DF。其中,DP位的取值包括:
¡ 1:表示开启了基于优先级DF选举算法不回切功能。即当前设备被选举为DF后,即使后续选举出了新的设备作为DF,依然使用当前设备作为DF。
¡ 0:表示关闭了基于优先级DF选举算法不回切功能。即当前设备被选举为DF后,如果后续选举出了新的设备作为DF,则直接使用新的设备作为DF。
如图1-6所示,以ES 1、ES 2的DF选举为例,基于优先级的DF选举算法为:
a. 同一ES内DF选举优先级(数值越大则优先级越高)最高的VTEP作为该ES的DF。在本例中,选举VTEP 2作为ES 1的DF。
b. 若优先级相同,则DP位为1的VTEP作为DF。
c. 若DP位相同,则IP地址小的VTEP作为DF。在本例中,选举VTEP 1作为ES 2的DF。
EVPN VPWS的FRR功能用于减小AC链路故障或PW链路故障对网络造成的影响,提升网络的可靠性和稳定性。EVPN VPWS的FRR功能包括Bypass PW和主备PW功能。
如图1-7所示,PE 2侧的AC链路故障时,PE 2会向PE 1及PE 3通告本地不可达信息,使流量不再通过PE 1与PE 2之间的PW转发,在此期间PE 1发送给PE 2的数据报文无法转发到CE 2,会被丢弃。EVPN VPWS通过Bypass PW功能解决该问题。在冗余备份组成员PE间建立Bypass PW。当AC链路故障时,PE 2通过Bypass PW临时将流量到转发到PE 3,再由PE 3转发到CE 2,从而减少丢包。
图1-7 Bypass PW功能原理图
如图1-8所示,CE 1单归属接入PE 1,PE 1通过RR 1和RR 2连接至PE 2,RR在PE间反射路由时修改下一跳属性并重新分配MPLS标签。RR上配置路由策略修改路由属性,PE 1根据RR反射路由中的路由属性,只会选择RR 1或RR 2其中一条最优路径与PE 2建立PW。为了提高网络可靠性,可在PE 1上配置主备PW功能,实现PE 1通过RR 1、RR 2分别与PE 2创建一主一备两条PW,其中最优路径为主PW,从而减小PE 1与RR 1或RR 2间链路故障对整个网络的影响。PE 1从多条BGP EVPN路由中选择最优路由的原则请参见“三层技术-IP路由配置指导”中的“BGP”。
本功能不仅适用于EVPN VPWS单归属组网,在多归属组网中同样适用,实现原理与此相同。
图1-8 主备PW功能原理图
控制字字段位于MPLS标签栈和二层数据之间,用来携带额外的二层数据帧的控制信息,如序列号等。控制字具有如下功能:
· 避免报文乱序:在多路径转发的情况下,报文有可能产生乱序,此时可以通过控制字的序列号字段对报文进行排序重组。
· 指示净载荷长度:如果PW上传送报文的净载荷长度小于64字节,则需要对报文进行填充,以避免报文发送失败。此时,通过控制字的载荷长度字段可以确定原始载荷的长度,以便从填充后的报文中正确获取原始的报文载荷。
对于EVPN PW,控制字字段是可选的,由两端的配置共同决定是否携带控制字:如果两端PE上都使能了控制字功能,则报文中携带控制字字段;否则,报文中不携带控制字字段。
不同类型的数据流可能通过同一条PW来传输,这些数据流在PE节点上封装完全相同的PW标签。封装了PW标签的报文到达P节点时,尽管P节点上存在多条隧道可以进行负载分担,但同一条PW的多条数据流仍然只能选择同一条路径转发,不能针对不同的数据流进行负载分担。L2VPN流标签功能可以实现在P设备上针对不同的数据流进行负载分担。
如图1-9所示,在两端的PE节点上均开启L2VPN流标签功能后,入口PE对数据报文进行封装时,会在PW标签前加入一个流标签(Flow label)字段,不同类型的数据流可以添加不同的流标签。P节点根据流标签进行负载分担。出口PE剥离PW标签和流标签后,将报文转发到本地站点。
图1-9 L2VPN流标签示意图
PE节点上的L2VPN流标签能力分为:
· 流标签接收能力:PE从PW上接收到报文后,能够识别报文中的流标签,并在解封装时删除流标签字段。
· 流标签发送能力:PE在通过PW发送报文时,会为报文添加流标签字段。
EVPN VPWS组网中两端PE的L2VPN流标签能力需要手工指定,由用户保证两端PE的L2VPN流标签能力匹配,即一端具有接收能力、另一端具有发送能力,否则会导致错包。
EVPN VPWS组网中两端PE不允许仅单边配置L2VPN流标签功能,否则会导致错包。
多段PW是指将两条或多条PW串连(concatenated)起来,形成一条端到端的PW。通过在同一个交叉连接下创建两条PW,可以实现将该交叉连接下的两条PW串连。PE从一条PW接收到报文后,剥离报文的隧道标识和PW标签,封装上与该PW串连的另一条PW的PW标签,并通过承载该PW的公网隧道转发该报文,从而实现报文在两条PW之间的转发。
如图1-10所示,通过在PE 2上将PW 1和PW 2串连、在PE 3上将PW 2和PW 3串连,可以建立从PE 1到PE 4的端到端PW,实现报文沿着PW 1、PW 2和PW 3形成的多段PW在PE 1和PE 4之间转发。
图1-10 多段PW示意图
多段PW分为:
· 域内多段PW:即在一个自治系统内部署多段PW。
在一个自治系统内部署多段PW,可以实现两个PE之间不存在端到端公网隧道的情况下,在这两个PE之间建立端到端PW。
如图1-11所示,PE 1和PE 4之间没有建立公网隧道,PE 1和PE 2、PE 2和PE 4之间已经建立了公网隧道。通过在PE 1与PE 2、PE 2与PE 4之间分别建立一条PW(PW 1和PW 2),在PE 2上将这两条PW串连,可以实现在PE 1和PE 4之间建立一条由两段PW组成的端到端域内多段PW。
通过建立域内多段PW可以充分利用已有的公网隧道,减少端到端公网隧道数量。
· 域间多段PW:即跨越自治系统部署多段PW。关于域间多段PW的详细介绍,请参见“1.1.8 2. 跨域-Option B”。
实际组网应用中,不同Site间可能会通过使用不同AS号的多个服务提供商通信,或者跨越一个服务提供商的多个AS通信。这种跨越多个自治系统的应用方式被称为EVPN VPWS跨域。
EVPN VPWS跨域解决方案分为以下几种:
· PE与ASBR间通过MP-IBGP(IBGP redistribution of EVPN routes between PE and ASBR)发布EVPN路由建立EVPN PW,ASBR互为CE,在ASBR上将AC与EVPN PW关联,也称为Inter-Provider Option A。
· PE与ASBR间通过MP-IBGP发布EVPN路由建立EVPN PW,ASBR间通过MP-EBGP(EBGP redistribution of EVPN routes between ASBRs)发布EVPN路由建立EVPN PW,也称为Inter-Provider Option B;
· PE间通过MP-EBGP(Multi-hop EBGP redistribution of EVPN routes between PE routers)发布EVPN路由建立EVPN PW,也称为Inter-Provider Option C。
如图1-12所示,这种方式下,两个AS的PE路由器直接相连,并且作为各自所在自治系统的边界路由器ASBR。两个ASBR均把对方当作自己的CE设备,并将与对端ASBR相连的接口与EVPN PW关联实现报文的跨域转发。
这种方式的优点是实现简单,两个作为ASBR的PE之间不需要为跨域进行特殊配置。缺点是可扩展性差:需要在两端的ASBR上为每个跨域站点配置AC并与EVPN PW绑定,配置复杂且管理难度大。
图1-12 ASBR互为CE连接组网图
如图1-13所示,这种方式下,在PE 1与ASBR 1、ASBR 2与PE 2之间分别通过MP-IBGP发布EVPN路由建立EVPN PW,ASBR 1与ASBR 2间通过MP-EBGP发布EVPN路由建立EVPN PW。通过多条EVPN PW的串联,即可实现报文的跨域传送。
这种方式的扩展性优于Inter-Provider Option A。缺点是ASBR仍然需要为每个跨域站点配置多段PW。
图1-13 多段PW跨域组网图
这种方式下,不同AS的PE之间建立多跳MP-EBGP会话,通过该会话直接在PE之间发布EVPN路由创建EVPN PW。此时,一端PE上需要具有到达远端PE的路由以及该路由对应的标签,以便在两个PE之间建立跨越AS的公网隧道。Inter-Provider Option C通过如下方式建立公网隧道:
· 利用LDP等标签分发协议在AS内建立公网隧道;
· ASBR通过BGP发布带标签的IPv4单播路由,实现跨越AS域建立公网隧道。带标签的IPv4单播路由是指为IPv4单播路由分配MPLS标签,并同时发布IPv4单播路由和标签,以便将路由和标签关联。
图1-14 PE间通过Multi-hop MP-EBGP发布EVPN路由组网图
如图1-14所示,Inter-Provider Option C的难点是建立跨越AS域的公网隧道。以PE 2到PE 1为例,公网隧道建立过程为:
(1) 在AS 100内,通过LDP等标签分发协议建立从ASBR 1到PE 1的公网隧道。假设ASBR 1上该公网隧道的出标签为L1。
(2) ASBR 1通过EBGP会话向ASBR 2发布带标签的IPv4单播路由,将PE 1地址对应的路由及ASBR 1为其分配的标签(假设为L2)发布给ASBR 2,路由的下一跳地址为ASBR 1。这样,就建立了从ASBR 2到ASBR 1的公网隧道,ASBR 1上公网隧道的入标签为L2。
(3) ASBR 2通过IBGP会话向PE 2发布带标签的IPv4单播路由,将PE 1地址对应的路由及ASBR 2为其分配的标签(假设为L3)发布给PE 2,路由的下一跳地址为ASBR 2。这样,就建立了从PE 2直接到ASBR 2的公网隧道,ASBR 2上公网隧道的入标签为L3,出标签为L2。
(4) MPLS报文不能直接从PE 2转发给ASBR 2,在AS 200内,还需要通过LDP等标签分发协议逐跳建立另一条从PE 2到ASBR 2的公网隧道。假设PE 2上该公网隧道的出标签为Lv。
公网隧道建立后,PE 1和PE 2间通过多跳MP-EBGP会话发布EVPN路由建立EVPN PW,在PE 1和PE 2上将EVPN PW与AC关联,即可实现报文的跨域转发。
为减少IBGP连接数,可以在每个AS中指定一个RR(Route Reflector,路由反射器),与同一AS的PE交换EVPN路由信息,由RR保存所有EVPN路由。两个AS的RR之间建立多跳MP-EBGP会话,通告EVPN路由。
Inter-Provider Option A和Inter-Provider Option B都需要ASBR参与EVPN路由的维护和发布。当每个AS都有大量的EVPN路由需要交换时,ASBR很可能成为阻碍网络进一步扩展的瓶颈。Inter-Provider Option C中PE之间直接交换EVPN路由,具有很好的可扩展性。
在实际组网中,可能会存在传统的MPLS L2VPN网络(也称为VPWS网络)与EVPN VPWS网络共存的情况。LDP PW或静态PW接入EVPN PW功能,通过将MPLS L2VPN网络中的LDP PW或静态PW看作EVPN VPWS网络的AC(该PW称为UPW),实现报文在EVPN PW与UPW之间相互转发,从而实现MPLS L2VPN网络与EVPN VPWS网络的互通。
本功能不仅支持一条LDP PW或静态PW接入一条EVPN PW,还支持将两条LDP PW或静态PW多归属接入两条EVPN PW。如图1-15所示,在MPLS L2VPN网络中,PE 1与PE 2、PE 3分别建立主备LDP PW或静态PW,该PW称为UPW;在EVPN VPWS网络中,PE 4与PE 2、PE 3分别建立EVPN PW。UPW作为EVPN VPWS网络中的AC,PE 2或PE 3从UPW接收到报文后,会解除MPLS封装,查找与UPW关联的EVPN PW,为报文添加该EVPN PW对应的MPLS封装,并将其转发给PE 4;PE 2或PE 3从EVPN PW接收报文的处理方法与此类似。
图1-15 LDP PW或静态PW接入EVPN PW组网示意图
EVPN VPWS功能仅在下表所列单板上配置生效。
表1-1 单板信息一览表
单板类型 |
单板丝印 |
CEPC单板 |
CEPC-XP4LX、CEPC-XP24LX、CEPC-XP48RX、CEPC-CP4RX、CEPC-CP4RX-L、CEPC-CQ8L、CEPC-CQ16L1 |
CSPEX单板 |
CSPEX-1304X、CSPEX-1304S、CSPEX-1404X、CSPEX-1404S、CSPEX-1502X、CSPEX-1504X、CSPEX-1504S、CSPEX-1602X、CSPEX-1804X、CSPEX-1512X、CSPEX-1612X、CSPEX-1812X、CSPEX-1802XB、CSPEX-1802X、CSPEX-1812X-E、CSPEX-2304X-G、CSPEX-2612X-E |
SPE单板 |
RX-SPE200、RX-SPE200-E |
standard工作模式下,仅下表所列单板支持EVPN VPWS双归属。
单板类型 |
单板丝印 |
CEPC单板 |
CEPC-CQ8L、CEPC-CQ16L1 |
CSPEX单板 |
CSPEX-1802XB、CSPEX-1802X、CSPEX-1812X-E、CSPEX-2304X-G、CSPEX-2612X-E |
SPE单板 |
RX-SPE200-E |
建立远程连接的配置任务如下:
(1) 开启L2VPN功能
(2) 配置AC
(3) 配置BGP发布EVPN路由
c. (可选)配置BGP EVPN路由属性
d. (可选)配置BGP EVPN路由发布和优选
e. (可选)配置BGP路由反射
f. (可选)配置BGP EVPN路由过滤
g. (可选)配置向对等体/对等体组发送BGP RPKI验证结果
h. (可选)通过将所有路由更新信息保存在本地实现BGP软复位
i. (可选)维护BGP会话
(4) 配置交叉连接
(5) 配置PW
a. (可选)配置PW模板
b. 配置EVPN PW
(6) 配置AC与交叉连接关联
(7) (可选)配置多归属站点
a. 配置接口的ESI
b. (可选)配置DF选举算法
c. (可选)配置接口的冗余备份模式
d. (可选)配置DF选举延迟时间
e. (可选)配置DF侧AC接口故障时BDF快速切换为DF
f. (可选)配置禁止通告以太网自动发现路由和以太网段路由
g. (可选)配置发布以太网自动发现路由时忽略以太网标签
h. (可选)配置成员设备监视BGP邻居状态
i. (可选)开启交叉连接忽略AC状态功能
(8) (可选)配置EVPN VPWS的FRR功能
(9) (可选)配置LDP PW或静态PW接入EVPN PW
(10) (可选)检测EVPN PW的连通性
建立多段PW的配置任务如下:
(1) 开启L2VPN功能
(2) 配置交叉连接
(3) 配置PW
在同一个交叉连接视图下需要配置两条EVPN PW,以便将这两条EVPN PW串连起来。
a. (可选)配置PW模板
b. 配置EVPN PW
(4) (可选)检测EVPN PW的连通性
配置EVPN VPWS网络前,需要完成以下任务:
· 配置IGP(Interior Gateway Protocol,内部网关协议),实现骨干网的IP连通性。
· 配置MPLS基本功能、LDP、GRE或MPLS TE等,在骨干网上建立公网隧道。
执行本配置前,需要先通过mpls lsr-id命令配置本节点的LSR ID,并在PE连接公网的接口上通过mpls enable命令使能该接口的MPLS能力。mpls lsr-id命令和mpls enable命令的详细介绍,请参见“MPLS命令参考”中的“MPLS基础”。
(1) 进入系统视图。
system-view
(2) 开启L2VPN功能。
l2vpn enable
缺省情况下,L2VPN功能处于关闭状态。
配置EVPN VPWS时,需要配置作为AC的三层接口,以便在PE和CE之间建立二层链路。对于三层以太网接口,PW数据封装类型和AC接入模式均为Ethernet;对于三层以太网子接口,PW数据封装类型和AC接入模式均为VLAN。
由于PE从三层接口接收到的报文直接通过关联的PW转发,无需进行网络层处理,因此三层接口上不需要配置IP地址。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
PE通过二层以太网接口或二层聚合接口连接CE时,可以配置以太网服务实例,以便精确地匹配属于AC的报文。
不能通过重复执行encapsulation命令修改报文匹配规则。如需修改报文匹配规则,请先通过undo encapsulation命令删除报文匹配规则,再执行encapsulation命令。
删除以太网服务实例下的报文匹配规则后,会自动取消以太网服务实例与交叉连接的关联。
本配置中各命令的详细介绍,请参见“MPLS命令参考”中的“MPLS L2VPN”。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
¡ 进入二层以太网接口视图。
interface interface-type interface-number
¡ 进入二层聚合接口视图。
interface bridge-aggregation interface-number
(3) 创建以太网服务实例,并进入以太网服务实例视图。
service-instance instance-id
(4) 匹配报文的外层VLAN tag。
encapsulation s-vid vlan-id
缺省情况下,未配置报文匹配规则。
BGP相关命令的详细介绍,请参见“三层技术-IP路由命令参考”中的“BGP”。
(1) 进入系统视图。
system-view
(2) 配置全局Router ID。
router id router-id
缺省情况下,未配置全局Router ID。
(3) 启动BGP实例,并进入BGP实例视图。
bgp as-number [ instance instance-name ]
缺省情况下,系统没有运行BGP。
(4) 将远端PE配置为对等体。
peer { group-name | ipv4-address [ mask-length ] } as-number as-number
(5) 创建BGP EVPN地址族,并进入BGP EVPN地址族视图。
address-family l2vpn evpn
(6) 使能本地路由器与指定对等体/对等体组交换BGP EVPN路由的能力。
peer { group-name | ipv4-address [ mask-length ] } enable
缺省情况下,本地路由器不能与对等体/对等体组交换BGP EVPN路由。
EVPN VPWS组网中,需要在PE上配置本功能,使得PE向对等体/对等体组发布MPLS封装的EVPN路由,以便在PE间建立PW。
(1) 进入系统视图。
system-view
(2) 进入BGP实例视图。
bgp as-number [ instance instance-name ]
(3) 进入BGP EVPN地址族视图。
address-family l2vpn evpn
(4) 配置向对等体/对等体组发布MPLS封装的EVPN路由。
peer { group name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } advertise encap-type mpls
缺省情况下,向对等体/对等体组发布VXLAN封装的EVPN路由。
(1) 进入系统视图。
system-view
(2) 进入BGP实例视图。
bgp as-number [ instance instance-name ]
(3) 进入BGP EVPN地址族视图。
address-family l2vpn evpn
(4) 为从指定对等体/对等体组接收的路由分配首选值。
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } preferred-value value
缺省情况下,从对等体/对等体组接收的路由的首选值为0。
(5) 配置对于从对等体/对等体组接收的BGP消息,允许本地AS号在该消息的AS_PATH属性中出现,并配置允许出现的次数。
peer { group-name | ipv4-address [ mask-length ] } allow-as-loop [ number ]
缺省情况下,不允许本地AS号在接收消息的AS_PATH属性中出现。
(6) 配置向指定EBGP对等体/对等体组发送BGP更新消息时删除或替换AS_PATH属性的私有AS号。
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } public-as-only [ { force | limited } [ replace ] [ include-peer-as ] ]
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } public-as-only [ force [ include-peer-as ] ] keep-local-as
缺省情况下,向EBGP对等体/对等体组发送BGP更新消息时,不会删除或替换AS_PATH属性中的私有AS号,即可以同时携带公有AS号和私有AS号。
(7) 配置向EBGP对等体/对等体组发布路由时不改变下一跳。
peer { group-name | ipv4-address [ mask-length ] } next-hop-invariable
缺省情况下,向EBGP对等体/对等体组发布路由时会将下一跳改为自己的地址。
(8) 配置向对等体/对等体组发布团体属性或Large团体属性。
¡ 配置向对等体/对等体组发布团体属性。
peer { group-name | ipv4-address [ mask-length ] } advertise-community
缺省情况下,不向对等体/对等体组发布团体属性。
¡ 配置向对等体/对等体组发布Large团体属性。
peer { group-name | ipv4-address [ mask-length ] } advertise-large-community
缺省情况下,不向对等体/对等体组发布Large团体属性。
(9) 为对等体/对等体组配置SoO(Site of Origin,源站点)属性。
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } soo site-of-origin
缺省情况下,没有为BGP对等体/对等体组配置SoO属性。
(10) 为对等体/对等体组配置链路带宽属性。
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } bandwidth
缺省情况下,没有为对等体/对等体组配置链路带宽属性。
(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 ] } high-priority
缺省情况下,BGP不为指定对等体/对等体组设置高优先级,选路规则不发生变化。
¡ 配置BGP路由延迟优选。
route-select delay delay-value
缺省情况下,延迟时间为0秒,即路由优选不延迟。
(5) 配置BGP路由衰减。
¡ 配置EBGP路由的衰减。
dampening [ half-life-reachable half-life-unreachable reuse suppress ceiling | route-policy route-policy-name ] *
本命令的详细介绍,请参见“三层技术-IP路由命令参考”中的“BGP”。
¡ 配置IBGP路由的衰减。
dampening ibgp [ half-life-reachable half-life-unreachable reuse suppress ceiling | route-policy route-policy-name ] *
本命令的详细介绍,请参见“MPLS命令参考”中的“MPLS L3VPN”。
缺省情况下,未配置BGP路由衰减。
有关路由衰减的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
(6) 开启下一跳路由迭代变化延迟响应功能。
nexthop recursive-lookup [ non-critical-event ] delay [ delay-value ]
缺省情况下,下一跳路由迭代变化延迟响应功能处于关闭状态。
(7) 配置Add-Path功能。
¡ 开启Add-Path功能。
peer { group-name | ipv4-address [ mask-length ] } additional-paths { receive | send } *
缺省情况下,未配置Add-path功能。
¡ 配置向指定对等体/对等体组发送的Add-Path优选路由的最大条数。
peer { group-name | ipv4-address [ mask-length ] } advertise additional-paths best number
缺省情况下,向指定对等体/对等体组发送的Add-Path优选路由的最大条数为1。
¡ 配置Add-Path优选路由的最大条数。
additional-paths select-best best-number
缺省情况下,Add-Path优选路由的最大条数为1。
(8) 设置允许从指定对等体/对等体组接收的所有类型的BGP EVPN路由的最大数量。
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } route-limit prefix-number [ { alert-only| discard | reconnect reconnect-time } | percentage-value ] *
缺省情况下,不限制从对等体/对等体组接收的路由数量。
(1) 进入系统视图。
system-view
(2) 进入BGP实例视图。
bgp as-number [ instance instance-name ]
(3) 进入BGP EVPN地址族视图。
address-family l2vpn evpn
(4) 配置本机作为路由反射器,对等体/对等体组作为路由反射器的客户机。
peer { group-name | ipv4-address [ mask-length ] } reflect-client
缺省情况下,没有配置路由反射器及其客户机。
(5) (可选)允许路由反射器在客户机之间反射EVPN路由。
reflect between-clients
缺省情况下,允许路由反射器在客户机之间反射EVPN路由。
(6) (可选)配置路由反射器的集群ID。
reflector cluster-id { cluster-id | ipv4-address }
缺省情况下,每个路由反射器都使用自己的Router ID作为集群ID。
(7) (可选)配置路由反射器对反射的EVPN路由进行过滤。
rr-filter { ext-comm-list-number | ext-comm-list-name }
缺省情况下,路由反射器不会对反射的EVPN路由进行过滤。
(8) (可选)允许路由反射器反射路由时修改路由属性。
reflect change-path-attribute
缺省情况下,不允许路由反射器反射路由时修改路由属性。
(9) (可选)配置将指定对等体/对等体组加入就近反射组。
peer { group-name | ipv4-address [ mask-length ] } reflect-nearby-group
缺省情况下,就近反射组中不存在任何对等体或对等体组
路由反射器在就近反射组内的对等体/对等体组之间反射路由时,不修改下一跳属性。
(1) 进入系统视图。
system-view
(2) 进入BGP实例视图。
bgp as-number [ instance instance-name ]
(3) 进入BGP EVPN地址族视图。
address-family l2vpn evpn
(4) 开启BGP EVPN路由的VPN-Target过滤功能。
policy vpn-target
缺省情况下,BGP EVPN路由的VPN-Target过滤功能处于开启状态。
(5) 对来自对等体/对等体组的路由或发布给对等体/对等体组的路由应用路由策略。
peer { group-name | ipv4-address [ mask-length ] } route-policy route-policy-name { export | import }
缺省情况下,没有为对等体/对等体组指定路由策略。
(6) 配置通过存在策略对BGP EVPN发布路由进行控制。
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } advertise-policy advertise-policy-name exist-policy exist-policy-name
缺省情况下,不对发布的BGP EVPN路由进行控制。
(7) 配置通过不存在策略对BGP EVPN发布路由进行控制。
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } advertise-policy advertise-policy-name non-exist-policy non-exist-policy-name
缺省情况下,不对发布的BGP EVPN路由进行控制。
BGP RPKI验证结果以扩展团体属性的方式传递。有关BGP RPKI的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
(1) 进入系统视图。
system-view
(2) 进入BGP实例视图。
bgp as-number [ instance instance-name ]
(3) 进入BGP EVPN地址族视图。
address-family l2vpn evpn
(4) 配置向对等体/对等体组发送BGP RPKI验证结果。
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } advertise origin-as-validation
缺省情况下,不会向对等体/对等体组发送BGP RPKI验证结果。
对于不支持Route-refresh功能的设备,可以配置本功能,将从对等体接收的所有原始路由更新信息保存在本地,当选路策略发生改变后,对保存在本地的所有路由使用新的路由策略进行重新过滤,以实现BGP软复位。
有关Route-refresh功能以及BGP软复位的详细介绍,请参见“三层技术-IP路由配置指导”中的“BGP”。
(1) 进入系统视图。
system-view
(2) 进入BGP实例视图。
bgp as-number [ instance instance-name ]
(3) 进入BGP EVPN地址族视图。
address-family l2vpn evpn
(4) 保存所有来自指定对等体/对等体组的原始路由更新信息。
peer { group-name | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] } keep-all-routes
缺省情况下,不保存来自对等体/对等体组的原始路由更新信息。
请在用户视图下执行如下命令,复位或软复位BGP会话。
· 复位EVPN地址族下的BGP会话。
reset bgp [ instance instance-name ] { as-number | ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] | all | external | group group-name | internal } l2vpn evpn
· 手工对EVPN地址族下的BGP会话进行软复位。
refresh bgp [ instance instance-name ] { ipv4-address [ mask-length ] | ipv6-address [ prefix-length ] | all | external | group group-name | internal } { export | import } l2vpn evpn
交叉连接组相关命令的详细介绍,请参见“MPLS命令参考”中的“MPLS L2VPN”。
(1) 进入系统视图。
system-view
(2) 创建一个交叉连接组,并进入交叉连接组视图。
xconnect-group group-name
(3) (可选)配置交叉连接组的描述信息。
description text
缺省情况下,未配置交叉连接组的描述信息。
(4) (可选)开启交叉连接组。
undo shutdown
缺省情况下,交叉连接组处于开启状态。
(5) 创建一个交叉连接,并进入交叉连接视图。
connection connection-name
在PW模板中可以指定PW的属性,如PW的数据封装类型、是否使用控制字等。具有相同属性的PW可以通过引用相同的PW模板,实现对PW属性的配置,从而简化配置。
PW模板相关命令的详细介绍,请参见“MPLS命令参考”中的“MPLS L2VPN”。
同一条PW的两端PE必须配置相同的数据封装类型。
同一条PW的两端PE的控制字功能配置必须保持一致,即两端均开启控制字功能或均不开启控制字功能,否则会导致PW无法建立。
(1) 进入系统视图。
system-view
(2) 创建PW模板,并进入PW模板视图。
pw-class class-name
(3) 开启控制字功能。
control-word enable
缺省情况下,控制字功能处于关闭状态。
(4) PW数据封装类型。
pw-type { ethernet | vlan }
缺省情况下,PW数据封装类型为VLAN。
(5) 配置流标签功能。
flow-label { both | receive | send } static
缺省情况下,流标签功能处于关闭状态。
目前,EVPN VPWS仅支持静态流标签,即必须指定static参数,否则流标签功能不生效。
(6) 配置VCCV控制通道类型。
vccv cc { control-word | router-alert | ttl }
缺省情况下,没有指定VCCV控制通道类型。
本命令的详细介绍,请参见“MPLS命令参考”中的“MPLS OAM”。
通过在本端PE和远端PE上分别配置一组local-service-id以及remote-service-id,使得两端PE间可以建立两条方向相反的单向虚拟连接。两端PE配置的local-service-id均与远端PE配置的remote-service-id匹配成功后,将会建立一条EVPN PW。
在交叉连接组EVPN实例视图下,可以配置入方向和出方向路由策略。其中:
· 入方向路由策略:用来对从BGP EVPN协议引入到EVPN实例的路由进行过滤。
· 出方向路由策略:用来对EVPN实例发布给BGP EVPN协议的路由进行过滤。
同一个交叉连接中不能通过重复执行evpn local-service-id remote-service-id修改已经创建的EVPN PW,如需修改已经创建的EVPN PW,请先通过undo evpn local-service-id remote-service-id命令删除已经创建的EVPN PW,再执行evpn local-service-id remote-service-id命令创建新的EVPN PW。
(1) 进入系统视图。
system-view
(2) 进入交叉连接组视图。
xconnect-group group-name
(3) 创建交叉连接组EVPN实例,并进入交叉连接组EVPN实例视图。
evpn encapsulation mpls
(4) 配置交叉连接组EVPN实例的RD。
route-distinguisher route-distinguisher
缺省情况下,未指定EVPN实例的RD。
(5) 配置交叉连接组EVPN实例的Route Target属性。
vpn-target { vpn-target&<1-8> } [ both | export-extcommunity | import-extcommunity ]
缺省情况下,未指定交叉连接组EVPN实例的Route Target属性。
建议为交叉连接组EVPN实例配置的Import target不要与VPN实例、公网实例和VSI视图下EVPN实例的Export target匹配,反之亦然。
(6) (可选)配置EVPN的出方向路由策略。
export route-policy route-policy
缺省情况下,未配置EVPN的出方向路由策略,即不对发布的路由进行过滤。
(7) (可选)配置EVPN的入方向路由策略。
import route-policy route-policy
缺省情况下,未配置EVPN的入方向路由策略,即如果接收到的路由携带的Route Target属性中存在与本地配置的Import Target相同的值,则接收该路由。
(8) 退回交叉连接组视图。
quit
(9) 进入交叉连接视图。
connection connection-name
(10) (可选)配置PW的MTU值。
mtu size
缺省情况下,PW的MTU值为1500字节。
(11) 创建EVPN PW,并进入EVPN PW视图。
evpn local-service-id local-service-id remote-service-id remote-service-id [ tunnel-policy tunnel-policy-name ] [ pw-class class-name ]
本命令不能与交叉连接下的peer命令同时配置。
配置三层接口与交叉连接关联后,从接口接收到的报文将通过关联该交叉连接的EVPN PW或另一条AC转发。
配置某个接口的以太网服务实例与交叉连接关联后,从该接口接收到的、符合以太网服务实例报文匹配规则的报文,将通过关联该交叉连接的PW或另一条AC转发。以太网服务实例提供了多种报文匹配规则(包括接口接收到的所有报文、所有携带VLAN Tag的报文和所有不携带VLAN Tag的报文等),为报文关联EVPN PW或AC提供了更加灵活的匹配方式。
配置AC与交叉连接关联时,可以指定AC与Track项联动。仅当关联的Track项中至少有一个状态为positive时,AC的状态才会up,否则,AC的状态为down。
本配置与以太网链路聚合功能互斥。三层或二层以太网接口加入聚合组后,不能再将该接口或该接口上的以太网服务实例与交叉连接关联;反之亦然。
(1) 进入系统视图。
system-view
(2) 进入交叉连接组视图。
xconnect-group group-name
(3) 进入交叉连接视图。
connection connection-name
(4) 将三层接口与交叉连接关联。
ac interface interface-type interface-number [ access-mode { ethernet | vlan } ] [ track track-entry-number&<1-3> ] [ access-evpn ]
缺省情况下,接口未与交叉连接关联。
(1) 进入系统视图。
system-view
(2) 进入交叉连接组视图。
xconnect-group group-name
(3) 进入交叉连接视图。
connection connection-name
(4) 将以太网服务实例与交叉连接关联。
ac interface interface-type interface-number service-instance instance-id [ access-mode { ethernet | vlan } ] [ track track-entry-number&<1-3> ] [ access-evpn ]
缺省情况下,以太网服务实例未与交叉连接关联。
多归属站点组网中,冗余备份组中的所有PE必须配置相同的local-service-id和remote-service-id。
建议为同一冗余备份组中各PE连接多归属站点的AC接口配置相同的冗余备份模式。
主接口及其子接口上均可以配置ESI:
· 若主接口及其子接口上都配置了ESI,或仅在子接口上配置了ESI,则子接口的ESI以该子接口上的配置为准,子接口的ES相关配置(evpn redundancy-mode、evpn df-election algorithm、evpn df-election preference、evpn df-election preference non-revertive和evpn timer es-delay命令)也以该子接口上的配置为准。
· 若仅在主接口上配置了ESI,则子接口继承主接口的ESI和ES相关配置。即使 子接口上执行了ES相关配置,也不会生效。
在多归属站点组网中,如果本端PE与冗余备份组中的各PE建立EVPN PW时,通过evpn local-service-id remote-service-id命令引用的PW模板中配置了使用BFD检测PW的连通性:
· 若本端PE与冗余备份组中各PE建立的EVPN PW为主备EVPN PW,则仅为主EVPN PW建立动态BFD会话。
· 若本端PE与冗余备份组中各PE建立的EVPN PW为等价EVPN PW,则不建立动态BFD会话。
ESI是ES的唯一标识,ESI相同的接口对应的链路属于同一个ES,报文可以在这些链路之间进行负载分担。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
¡ 进入二层以太网接口视图。
interface interface-type interface-number
¡ 进入二层聚合接口视图。
interface bridge-aggregation interface-number
¡ 进入三层接口视图。
interface interface-type interface-number
¡ 进入三层聚合接口视图。
interface route-aggregation interface-number
¡ 进入FlexE物理接口视图。
interface interface-type interface-number
¡ 进入FlexE业务接口视图。
interface flexe interface-number
(3) 配置接口ESI。
esi esi-id
缺省情况下,未配置接口的ESI。
在EVPN多归属组网中,用户可以通过本功能灵活地选择DF选举算法,以提高设备的利用率。
如果在作为AC的子接口上配置了模糊VLAN终结,则不能使用基于VLAN Tag的DF选举算法。否则,会导致流量转发错误。
系统视图和接口视图下均可以配置DF选举算法。系统视图的配置对所有ES都有效,而接口视图下的配置只对当前接口下的ES有效。对于一个ES来说,优先采用该接口视图下的配置,只有该接口下未进行配置时,才采用系统视图的配置。
(1) 进入系统视图。
system-view
(2) 全局配置DF选举算法。
evpn df-election algorithm algorithm
缺省情况下,采用基于VLAN Tag的算法。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
¡ 进入二层以太网接口视图。
interface interface-type interface-number
¡ 进入二层聚合接口视图。
interface bridge-aggregation interface-number
¡ 进入三层接口视图。
interface interface-type interface-number
¡ 进入三层聚合接口视图。
interface route-aggregation interface-number
¡ 进入FlexE物理接口视图。
interface interface-type interface-number
¡ 进入FlexE业务接口视图。
interface flexe interface-number
(3) 配置DF选举算法。
evpn df-election algorithm algorithm
缺省情况下,以系统视图下配置的DF选举算法为准。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
¡ 进入二层以太网接口视图。
interface interface-type interface-number
¡ 进入二层聚合接口视图。
interface bridge-aggregation interface-number
¡ 进入三层接口视图。
interface interface-type interface-number
¡ 进入三层聚合接口视图。
interface route-aggregation interface-number
¡ 进入FlexE物理接口视图。
interface interface-type interface-number
¡ 进入FlexE业务接口视图。
interface flexe interface-number
(3) 配置DF选举优先级。
evpn df-election preference preference
缺省情况下,DF选举优先级为32767。
DF选举优先级数值越大则优先级越高。
(4) (可选)开启基于优先级DF选举算法的不回切功能。
evpn df-election preference non-revertive
缺省情况下,基于优先级算法的DF选举不回切功能处于关闭状态。
多归属站点的冗余备份模式包括单活冗余模式和多活冗余模式。
冗余备份组中的各PE分别与远端PE建立EVPN PW,若需两条EVPN PW间形成主备关系,则使用单活冗余模式;若需EVPN PW间形成等价负载分担,则使用多活冗余模式。
多归属站点与S-Trunk功能配合使用时,如果多归属站点的冗余备份模式为单活模式,则需要通过s-trunk port-role auto命令将S-Trunk成员接口的角色配置为自动模式;如果多归属站点的冗余备份模式为多活模式,则需要通过s-trunk port-role primary命令将S-Trunk成员接口的角色配置为强制主用接口。S-Trunk功能的详细介绍,请参见“可靠性配置指导”中的“S-Trunk”。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
¡ 进入二层以太网接口视图。
interface interface-type interface-number
¡ 进入二层聚合接口视图。
interface bridge-aggregation interface-number
¡ 进入三层接口视图。
interface interface-type interface-number
¡ 进入三层聚合接口视图。
interface route-aggregation interface-number
¡ 进入FlexE物理接口视图。
interface interface-type interface-number
¡ 进入FlexE业务接口视图。
interface flexe interface-number
(3) 配置接口的冗余备份模式。
evpn redundancy-mode { all-active | single-active }
缺省情况下,冗余备份模式为多活冗余模式。
AC所在接口的状态、多归属成员设备数量或者接口下ESI值的频繁变化都会导致DF频繁选举,极大影响了网络的性能。通过本命令可以指定DF选举的时间间隔,避免频繁选举DF,保证网络的稳定性。
(1) 进入系统视图。
system-view
(2) 配置DF选举延迟时间。
evpn multihoming timer df-delay delay-value
缺省情况下,DF选举的延迟时间为3秒。
图1-16 DF侧AC接口故障时BDF快速切换为DF组网示意图
如图1-16所示,EVPN VPWS多归属组网中,CE 1双归属接入PE 1和PE 2,PE 1为DF,PE 2为BDF。当PE 1侧的AC故障时,PE 2无法快速切换为DF并转发流量,导致PE 2切换为DF过程中CE 2发送给CE 1的报文被丢弃。为解决上述问题,可在PE 1与PE 2间创建静态BFD会话,在PE 1上配置静态BFD会话监测本地AC接口的状态,并在PE 2上配置监测静态BFD会话状态,从而实现当PE 1侧AC故障时,PE 1上的静态BFD会话状态变为down,并将静态BFD会话状态通告给PE 2,PE 2快速切换为DF,从而缩短DF的切换时间,减少丢包。
(1) 进入系统视图。
system-view
(2) 创建静态BFD会话,并指定静态BFD会话监测AC接口。
bfd static session-name peer-ip ipv4-address [ vpn-instance vpn-instance-name ] source-ip ipv4-address discriminator local local-value remote remote-value track-interface interface-type interface-number
本命令的详细介绍,请参见“可靠性命令参考”中的“BFD”。
(1) 进入系统视图。
system-view
(2) 创建静态BFD会话。
bfd static session-name peer-ip ipv4-address [ vpn-instance vpn-instance-name ] source-ip ipv4-address discriminator local local-value remote remote-value
本命令的详细介绍,请参见“可靠性命令参考”中的“BFD”。
(3) 进入接口视图。
¡ 进入三层以太网接口视图。
interface interface-type interface-number
¡ 进入三层聚合接口视图。
interface route-aggregation interface-number
¡ 进入FlexE业务接口视图。
interface flexe interface-number
(4) 配置BDF监测静态BFD会话状态。
evpn track bfd session-name
缺省情况下,BDF未监测静态BFD会话状态。
在站点多归属组网中,用户需要重启其中一台PE时,重启该PE前,可以通过在该PE上执行本命令,来禁止通告以太网自动发现路由和以太网段路由,并撤销已经通告的该类路由,以便其他PE及时更新本地的EVPN路由表,确保PE的重启不会影响报文转发。
(1) 进入系统视图。
system-view
(2) 配置禁止通告以太网自动发现路由和以太网段路由,并撤销已经通告的该类路由。
evpn multihoming advertise disable
缺省情况下,允许通告EVPN以太网自动发现路由和以太网段路由。
多归属站点组网中,为冗余备份组成员上的AC配置ESI后,冗余备份组成员发送以太网自动发现路由时会携带AC的以太网标签。如果对端设备无法识别以太网标签,为了与该对端设备互通,需要在本端设备上配置本命令,使得本端设备将发送的以太网自动发现路由中的以太网标签字段填为0。
执行本命令后,设备会撤销已经发布的以太网自动发现路由,并重新发布以太网标签字段为0的以太网自动发现路由。
为二层以太网接口或二层聚合接口配置ESI后,同一个接口上创建的不同以太网服务实例不能关联相同的VSI,具有相同ESI的接口上的以太网服务实例也不能关联相同的VSI。
为三层主接口配置ESI后,如果该接口上的子接口未配置ESI,则子接口会继承主接口的ESI。此时,具有相同ESI的子接口不能关联相同的VSI。
(1) 进入系统视图。
system-view
(2) 配置发布以太网自动发现路由和MAC/IP发布路由时忽略以太网标签。
evpn multihoming advertise ignore-ethernet-tag
缺省情况下,PE发送以太网自动发现路由时携带以太网标签。
在多归属组网中,冗余备份组的一台成员设备因故障等原因重启后,站点间的广播流量转发可能会失败。为了解决这个问题,可以在成员设备连接CE的接口上执行本配置。这样,当成员设备从故障中恢复且连接CE的接口状态变为Up时,成员设备会启动以太网段路由的延迟发送定时器,并对指定的BGP邻居状态进行监控。如果在定时器超时前,所有设备的BGP邻居状态均Up,则本地成员设备正常发送以太网段路由;否则,定时器超时后,本地成员设备向所有BGP邻居状态为Up的设备发送以太网段路由。定时器超时或所有监控的BGP邻居均Up后,本地成员设备根据收到的所有以太网段路由进行DF选举。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
¡ 进入二层以太网接口视图。
interface interface-type interface-number
¡ 进入二层聚合接口视图。
interface bridge-aggregation interface-number
¡ 进入三层接口视图。
interface interface-type interface-number
¡ 进入三层聚合接口视图。
interface route-aggregation interface-number
¡ 进入FlexE物理接口视图。
interface interface-type interface-number
¡ 进入FlexE业务接口视图。
interface flexe interface-number
(3) 配置冗余备份组中的成员设备监视其它PE设备的BGP邻居状态。
evpn track peer peer-address
缺省情况下,冗余备份组中的成员设备不会监视其它设备的BGP邻居状态。
(4) 开启以太网段路由延迟发布功能,并指定延迟发布时间。
evpn timer es-delay delay-time
缺省情况下,以太网段路由延迟发布功能处于关闭状态,即不延迟发布以太网段路由。
EVPN VPWS多归属单活组网中,CE 1采用S-Trunk方式双归属接入PE 1和PE 2,PE 1为主用设备,PE 2为备份设备,PE 2上AC状态为Down。当PE 1上AC故障时,PE 1会撤销以太网自动发现路由,同时PE 2上的AC状态为Up,并向远端PE发送以太网自动发现路由,远端PE需要收到PE 2发送的以太网自动发现路由,才能切换至备份路径,路径切换过程速度较慢,会导致报文丢失。为解决上述问题,可在PE 2上配置本命令,使PE 2忽略AC状态并向远端PE发送以太网自动发现路由,远端PE保存该路由。当PE 1的AC故障时,远端PE将流量快速切换至备份路径,减少丢包。
系统视图和交叉连接视图下均可以配置交叉连接忽略AC状态功能。系统视图的配置对所有交叉连接都有效,而交叉连接视图的配置只对当前交叉连接有效。对于一个交叉连接来说,优先采用该交叉连接内的配置,只有该交叉连接内未进行配置时,才采用系统视图的配置。
(1) 进入系统视图。
system-view
(2) 全局开启交叉连接忽略AC状态功能。
l2vpn ignore-ac-state [ evpn-vpws ]
缺省情况下,交叉连接忽略AC状态的功能处于关闭状态。
(1) 进入系统视图。
system-view
(2) 进入交叉连接组视图。
xconnect-group group-name
(3) 进入交叉连接视图。
connection connection-name
(4) 开启指定交叉连接忽略AC状态功能。
ignore-ac-state { enable | disable }
缺省情况下,指定交叉连接忽略AC状态的功能与全局交叉连接忽略AC功能状态的开关情况保持一致。
EVPN VPWS多归属站点组网中,当多归属站点AC故障时,AC所连接的PE会向其它PE通告本地不可达信息。在收到本地不可达信息前,远端PE仍会将流量转发给该PE,导致报文被丢弃。可通过配置本功能,在冗余备份组PE间建立Bypass PW临时转发流量,避免丢包。
如果在全局视图下开启EVPN VPWS的Bypass PW功能的同时,在指定EVPN实例下执行了evpn frr local命令,则指定EVPN实例的Bypass PW功能状态以EVPN实例下的配置为准。
执行undo evpn multihoming vpws-frr local命令后,如果EVPN实例下配置了evpn frr local enable命令,则不删除该EVPN实例下的Bypass PW。
本命令配置在冗余备份组成员PE上。
(1) 进入系统视图。
system-view
(2) 开启全局EVPN VPWS的Bypass PW功能。
evpn multihoming vpws-frr local
缺省情况下,EVPN VPWS的Bypass PW功能处于关闭状态。
(1) 进入系统视图。
system-view
(2) 进入交叉连接组视图。
xconnect-group group-name
(3) 进入交叉连接组EVPN实例视图。
evpn encapsulation mpls
(4) 开启或关闭指定EVPN实例的Bypass PW功能。
evpn frr local { disable | enable }
缺省情况下,EVPN实例的Bypass PW功能状态与EVPN VPWS全局Bypass PW功能状态保持一致。
本功能是指在PE之间建立主备两条PW。主PW负责转发流量,备份PW为主PW提供备份。当主PW出现故障时,流量切换到备份PW,以保证流量转发不会中断。
如果在全局视图下开启EVPN VPWS主备PW功能的同时,在指定EVPN实例下执行了evpn frr remote命令,则指定EVPN实例的主备PW功能状态以EVPN实例下的配置为准。
如果EVPN实例下配置了evpn frr remote enable命令,再执行undo evpn vpws-frr remote命令,则EVPN实例下的主备PW功能仍然处于开启状态且不删除该EVPN实例下的备PW。
(1) 进入系统视图。
system-view
(2) 开启全局EVPN VPWS主备PW功能。
evpn vpws-frr remote
缺省情况下,EVPN VPWS主备PW功能处于关闭状态。
(1) 进入系统视图。
system-view
(2) 进入交叉连接组视图。
xconnect-group group-name
(3) 进入交叉连接组EVPN实例视图。
evpn encapsulation mpls
(4) 开启或关闭指定EVPN实例的主备PW功能。
evpn frr remote { disable | enable }
缺省情况下,EVPN实例的主备PW功能状态与EVPN VPWS全局主备PW功能状态保持一致。
本功能用来实现MPLS L2VPN网络与EVPN VPWS网络的互通。
多归属站点组网中,冗余备份组中的所有PE必须配置相同的本地Service ID和Remote service ID。
建议为同一冗余备份组中各PE连接多归属站点的UPW配置相同的冗余备份模式。
在多归属站点组网中,如果采用多活模式,则必须在多归属接入的PE上执行protection dual-receive命令配置PW冗余保护的双收功能。
除本节列出的配置步骤外,LDP PW或静态PW接入EVPN PW组网中,还需要完成以下任务:
· 在MPLS L2VPN网络中的PE设备上完成MPLS L2VPN相关配置。
· 在EVPN VPWS网络中的PE设备上完成EVPN VPWS相关配置。
LDP PW接入EVPN PW场景中,LDP PW的数据封装类型必须与AC的接入模式一致,即同为Ethernet或同为VLAN。若二者不同,则需要在LDP PW引用的PW class下执行pw-type命令修改LDP PW的数据封装类型,或通过xconnect vsi命令中的access-mode参数修改AC的接入模式。
(1) 进入系统视图。
system-view
(2) 进入交叉连接组视图。
xconnect-group group-name
(3) 进入交叉连接组EVPN实例视图。
evpn encapsulation mpls
(4) 退回交叉连接组视图。
quit
(5) 进入交叉连接视图。
connection connection-name
(6) 配置LDP PW,并进入交叉连接PW视图。
peer ip-address pw-id pw-id [ ignore-standby-state ] [ admin | pw-class class-name | tunnel-policy tunnel-policy-name ] *
本命令的详细介绍,请参见“MPLS命令参考”中的“MPLS L2VPN”。
(7) (可选)配置UPW的ESI。
esi esi-id
缺省情况下,未配置PW的ESI。
多归属站点组网中,需要在MPLS L2VPN网络与EVPN VPWS网络的边缘设备上执行本命令。
本命令的详细介绍,请参见“EVPN命令参考”中的“EVPN”。
(8) (可选)配置UPW的冗余备份模式。
evpn redundancy-mode { all-active | single-active }
缺省情况下,冗余备份模式为多活模式。
多归属站点组网中,可以在MPLS L2VPN网络与EVPN VPWS网络的边缘设备上执行本命令。
本命令的详细介绍,请参见“EVPN命令参考”中的“EVPN”。
(9) 配置备份的LDP PW,并进入交叉连接备份PW视图。
backup-peer ip-address pw-id pw-id [ pw-class class-name | tunnel-policy tunnel-policy-name ] *
在多归属站点组网中,多归属接入的PE上需要执行本命令。
(10) 退回交叉连接视图。
quit
quit
(11) 创建EVPN PW,并进入EVPN PW视图。
evpn local-service-id local-service-id remote-service-id remote-service-id [ tunnel-policy tunnel-policy-name ] [ pw-class class-name ]
本命令不能与交叉连接下的peer命令同时配置。
(1) 进入系统视图。
system-view
(2) 进入交叉连接组视图。
xconnect-group group-name
(3) 进入交叉连接组EVPN实例视图。
evpn encapsulation mpls
(4) 退回交叉连接组视图。
quit
(5) 进入交叉连接视图。
connection connection-name
(6) 配置静态PW,并进入交叉连接PW视图。
peer ip-address pw-id pw-id in-label label-value out-label label-value [ admin | pw-class class-name | tunnel-policy tunnel-policy-name ] *
本命令的详细介绍,请参见“MPLS命令参考”中的“MPLS L2VPN”。
(7) (可选)配置UPW的ESI。
esi esi-id
缺省情况下,未配置PW的ESI。
多归属站点组网中,需要在MPLS L2VPN网络与EVPN VPWS网络的边缘设备上执行本命令。
本命令的详细介绍,请参见“EVPN命令参考”中的“EVPN”。
(8) (可选)配置UPW的冗余备份模式。
evpn redundancy-mode { all-active | single-active }
缺省情况下,冗余备份模式为多活模式。
多归属站点组网中,可以在MPLS L2VPN网络与EVPN VPWS网络的边缘设备上执行本命令。
本命令的详细介绍,请参见“EVPN命令参考”中的“EVPN”。
(9) 配置备份的静态PW,并进入交叉连接备份PW视图。
backup-peer ip-address pw-id pw-id in-label label-value out-label label-value [ pw-class class-name | tunnel-policy tunnel-policy-name ] *
在多归属站点组网中,多归属接入的PE上需要执行本命令。
(10) 退回交叉连接视图。
quit
quit
(11) 创建EVPN PW,并进入EVPN PW视图。
evpn local-service-id local-service-id remote-service-id remote-service-id [ tunnel-policy tunnel-policy-name ] [ pw-class class-name ]
本命令不能与交叉连接下的peer命令同时配置。
使用Ping或Tracert方式检测EVPN PW的连通性前,需要为待检测EVPN PW指定引用的PW模板,并在该PW模板下执行vccv cc命令配置VCCV控制通道类型。
EVPN VPWS组网中,本端PE设备与远端PE设备间通过PW传输数据报文。当PE间出现丢包或断流现象时,可通过本功能检测PE设备间的PW连通性。具体检测过程为:
(1) 本端PE设备通过查找本命令指定的交叉连接组的名称、本端的Service ID和远端的Service ID来找到对应的PW,并获取该PW的标签信息,为MPLS echo request报文封装标签信息后将请求报文发送给远端PE。
(2) 远端PE设备收到MPLS echo request报文后,回复MPLS Echo Reply报文。
(3) 本端PE设备根据是否收到MPLS Echo Reply报文、收到MPLS Echo Reply报文的时间,判断该PW连通性,并输出相应的统计信息。
可在任意视图下执行本命令,检测EVPN VPWS组网中PW连通性。
ping evpn vpws xconnect-group group-name local-service-id remote-service-id [ -a source-ip | -c count | -exp exp-value | -m interval | -r reply-mode | -s packet-size | -t time-out ] *
EVPN VPWS组网中,本端PE设备与远端PE设备间通过PW传输数据报文。当PE间出现丢包或断流现象时,可通过本功能查看本端PE到远端PE的PW所经过的路径,并根据应答信息对错误点进行定位。具体检测过程为:
(1) 本端PE设备构造MPLS echo request报文,查找本命令指定的交叉连接组的名称、本端Service ID和远端Service ID对应的PW,并获取该PW的标签信息,为MPLS echo reques报文封装标签信息后将请求报文发送给远端PE。此时MPLS报文头部的TTL字段的取值设置为1。
(2) 下一跳节点收到报文后,将TTL值减1,变为0。该节点向首节点(即本端PE)发送ICMP超时报文。
(3) 如果本端PE收到ICMP超时报文或未在time-out时间内收到应答报文,则会将TTL字段的取值加1(此时设置为2)继续发送MPLS echo request报文。
(4) 下游节点收到报文后,依次将TTL值减1,直到TTL值变为0。TTL值减为0的节点向首节点(即本端PE)发送ICMP超时报文;若该节点为远端PE,则向首节点发送MPLS Echo Reply报文。
(5) 本端PE依次重复上述过程,直至MPLS echo request报文中TTL达到配置的最大值或收到远端PE的应答报文。
(6) 本端PE设备根据是否收到应答报文、收到应答报文的时间,判断该PW连通性、该PW经过的路径,并输出相应的统计信息。
可在任意视图下执行本命令,查看EVPN VPWS组网中PW所经过的路径,并根据应答信息对错误点进行定位。
tracert evpn vpws xconnect-group group-name local-service-id remote-service-id [ -a source-ip | -exp exp-value | -h ttl-value | -r reply-mode | -t time-out ] * [ ddmap | full-lsp-path ] *
在完成上述配置后,在任意视图下执行display命令可以显示配置后EVPN VPWS的运行情况,通过查看显示信息验证配置的效果。
在用户视图下,用户可以执行reset命令来清除EVPN的相关信息。
display bgp group、display bgp peer、display bgp update-group命令的详细介绍请参见“三层技术-IP路由命令参考”中的“BGP”。
表1-3 EVPN VPWS显示和维护
操作 |
命令 |
显示BGP对等体组的信息 |
display bgp [ instance instance-name ] group l2vpn evpn [ group-name group-name ] |
显示BGP EVPN路由信息 |
display bgp [ instance instance-name ] l2vpn evpn [ peer ipv4-address { advertised-routes | received-routes } [ { evpn-route route-length | evpn-prefix } [ verbose ] | statistics ] | [ route-distinguisher route-distinguisher | route-type { auto-discovery | es | imet | mac-ip } ] * [ { evpn-route route-length | evpn-prefix } [ advertise-info ] | ipv4-address | mac-address ] | statistics ] display bgp [ instance instance-name ] l2vpn evpn [ peer ipv4-address { accepted-routes | not-accepted-routes } ] |
显示BGP对等体或对等体组的状态和统计信息 |
display bgp [ instance instance-name ] peer l2vpn evpn [ ipv4-address mask-length | { ipv4-address | group-name group-name } log-info | [ ipv4-address ] verbose ] |
显示BGP打包组的相关信息 |
display bgp [ instance instance-name ] update-group l2vpn evpn [ ipv4-address ] |
显示衰减的BGP EVPN路由信息 |
display bgp [ instance instance-name ] l2vpn evpn dampened |
显示BGP EVPN路由衰减参数 |
display bgp [ instance instance-name ] dampening parameter l2vpn evpn |
显示BGP EVPN路由的震荡统计信息 |
display bgp [ instance instance-name ] l2vpn evpn flap-info |
显示BGP中来源为EVPN进程的Route Target以及ES-Import Route Target信息 |
display bgp [ instance instance-name ] route-target evpn |
显示EVPN的ES信息 |
display evpn es { local [ count | [ vsi vsi-name | xconnect-group group-name ] [ esi esi-id ] [ verbose ] ] | remote [ vsi vsi-name | xconnect-group group-name] [ esi esi-id ] [ nexthop next-hop ] [ verbose ] } |
显示EVPN实例的信息 |
display evpn instance [ xconnect-group group-name ] [ verbose ] |
显示EVPN VPWS的相关信息 |
display evpn route vpws [ xconnect-group group-name [ connection connection-name ] ] [ count ] |
显示EVPN的路由表信息 |
display evpn routing-table { public-instance | vpn-instance vpn-instance-name } [ count ] |
显示交叉连接的转发信息 |
(独立运行模式) display l2vpn forwarding { ac | pw } [ xconnect-group group-name ] [ slot slot-number [ cpu cpu-number ] ] [ verbose ] (IRF模式) display l2vpn forwarding { ac | pw } [ xconnect-group group-name ][ chassis chassis-number slot slot-number [ cpu cpu-number ] ] [ verbose ] |
显示与交叉连接关联的三层接口的L2VPN信息 |
display l2vpn interface [ xconnect-group group-name | interface-type interface-number ] [ verbose ] |
显示L2VPN的PW信息 |
display l2vpn pw [ xconnect-group group-name ] [ protocol { bgp | evpn | ldp | static } ] [ verbose ] |
显示EVPN PW的BFD检测信息 |
display l2vpn pw bfd [ peer peer-ip remote-service-id remote-service-id ] |
显示PW模板的信息 |
display l2vpn pw-class [ class-name ] |
显示以太网服务实例的信息 |
display l2vpn service-instance [ interface interface-type interface-number [ service-instance instance-id ] ] [ verbose ] |
显示交叉连接的EVPN相关信息 |
display evpn route xconnect-group [ name group-name [ connection connection-name ] ] [ count ] |
清除BGP EVPN路由的衰减信息,并解除对BGP EVPN路由的抑制 |
reset bgp [ instance instance-name ] dampening l2vpn evpn |
清除BGP EVPN路由的震荡统计信息 |
reset bgp [ instance instance-name ] flap-info l2vpn evpn [ as-path-acl { as-path-acl-number | as-path-acl-name } | peer [ ipv4-address [ mask-length ] | peer ipv6-address [ prefix-length ] ] ] |
用户网络有两个站点,分别为CE 1和CE 2。CE 1和CE 2通过以太网接口的方式分别接入PE1和PE2并希望通过骨干网建立的EVPN PW实现互通。
图1-17 EVPN VPWS单归属配置组网图
设备 |
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
CE 1 |
XGE3/1/1 |
10.1.1.10/24 |
P |
Loop0 |
3.3.3.3/32 |
PE 1 |
Loop0 |
1.1.1.1/32 |
|
XGE3/1/1 |
11.1.1.2/24 |
|
XGE3/1/1 |
- |
|
XGE3/1/2 |
11.1.2.2/24 |
|
XGE3/1/2 |
11.1.1.1/24 |
PE 2 |
Loop0 |
2.2.2.2/32 |
CE 2 |
XGE3/1/1 |
10.1.1.20/24 |
|
XGE3/1/1 |
- |
|
|
|
|
XGE3/1/2 |
11.1.2.1/24 |
(1) 配置CE 1
<CE1> system-view
[CE1] interface ten-gigabitethernet 3/1/1
[CE1-Ten-GigabitEthernet3/1/1] ip address 10.1.1.10 24
[CE1-Ten-GigabitEthernet3/1/1] quit
(2) 配置PE 1
# 配置LSR ID。
<PE1> system-view
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 1.1.1.1 32
[PE1-LoopBack0] quit
[PE1] mpls lsr-id 1.1.1.1
# 开启L2VPN功能。
[PE1] l2vpn enable
# 全局使能LDP。
[PE1] mpls ldp
[PE1-ldp] quit
# 配置连接P的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[PE1] interface ten-gigabitethernet 3/1/2
[PE1-Ten-GigabitEthernet3/1/2] ip address 11.1.1.1 24
[PE1-Ten-GigabitEthernet3/1/2] mpls enable
[PE1-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE1-Ten-GigabitEthernet3/1/2] quit
# 在PE 1上运行OSPF,用于建立LSP。
[PE1] ospf
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 11.1.1.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 1.1.1.1 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
# 在PE 1和PE 2之间建立IBGP连接,并配置在二者之间通过BGP发布路由信息。
[PE1] bgp 100
[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 l2vpn evpn
[PE1-bgp-default-evpn] peer 2.2.2.2 enable
[PE1-bgp-default-evpn] peer 2.2.2.2 advertise encap-type mpls
[PE1-bgp-default-evpn] quit
[PE1-bgp-default] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[PE1] xconnect-group vpna
[PE1-xcg-vpna] evpn encapsulation mpls
[PE1-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE1-xcg-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE1-xcg-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[PE1-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将接口Ten-GigabitEthernet3/1/1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE1-xcg-vpna] connection pw1
[PE1-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[PE1-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[PE1-xcg-vpna-pw1] evpn local-service-id 1 remote-service-id 2
[PE1-xcg-vpna-pw1-1-2] quit
[PE1-xcg-vpna-pw1] quit
[PE1-xcg-vpna] quit
(3) 配置P
# 配置LSR ID。
<P> system-view
[P] interface loopback 0
[P-LoopBack0] ip address 3.3.3.3 32
[P-LoopBack0] quit
[P] mpls lsr-id 3.3.3.3
# 全局使能LDP。
[P] mpls ldp
[P-ldp] quit
# 配置连接PE 1的接口Ten-GigabitEthernet3/1/1,在此接口上使能LDP。
[P] interface ten-gigabitethernet 3/1/1
[P-Ten-GigabitEthernet3/1/1] ip address 11.1.1.2 24
[P-Ten-GigabitEthernet3/1/1] mpls enable
[P-Ten-GigabitEthernet3/1/1] mpls ldp enable
[P-Ten-GigabitEthernet3/1/1] quit
# 配置连接PE 2的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[P] interface ten-gigabitethernet 3/1/2
[P-Ten-GigabitEthernet3/1/2] ip address 11.1.2.2 24
[P-Ten-GigabitEthernet3/1/2] mpls enable
[P-Ten-GigabitEthernet3/1/2] mpls ldp enable
[P-Ten-GigabitEthernet3/1/2] quit
# 在P上运行OSPF,用于建立LSP。
[P] ospf
[P-ospf-1] area 0
[P-ospf-1-area-0.0.0.0] network 11.1.1.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 11.1.2.0 0.0.0.255
[P-ospf-1-area-0.0.0.0] network 3.3.3.3 0.0.0.0
[P-ospf-1-area-0.0.0.0] quit
[P-ospf-1] quit
(4) 配置PE 2
# 配置LSR ID。
<PE2> system-view
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 2.2.2.2 32
[PE2-LoopBack0] quit
[PE2] mpls lsr-id 2.2.2.2
# 开启L2VPN功能。
[PE2] l2vpn enable
# 全局使能LDP。
[PE2] mpls ldp
[PE2-ldp] quit
# 配置连接P的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[PE2] interface ten-gigabitethernet 3/1/2
[PE2-Ten-GigabitEthernet3/1/2] ip address 11.1.2.1 24
[PE2-Ten-GigabitEthernet3/1/2] mpls enable
[PE2-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE2-Ten-GigabitEthernet3/1/2] quit
# 在PE 2上运行OSPF,用于建立LSP。
[PE2] ospf
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 2.2.2.2 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] network 11.1.2.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
# 在PE 1和PE 2之间建立IBGP连接,并配置在二者之间通过BGP发布路由信息。
[PE2] bgp 100
[PE2-bgp-default] peer 1.1.1.1 as-number 100
[PE2-bgp-default] peer 1.1.1.1 connect-interface loopback 0
[PE2-bgp-default] address-family l2vpn evpn
[PE2-bgp-default-evpn] peer 1.1.1.1 enable
[PE2-bgp-default-evpn] peer 1.1.1.1 advertise encap-type mpls
[PE2-bgp-default-evpn] quit
[PE2-bgp-default] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[PE2] xconnect-group vpna
[PE2-xcg-vpna] evpn encapsulation mpls
[PE2-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE2-xcg-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE2-xcg-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[PE2-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将接口Ten-GigabitEthernet3/1/1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE2-xcg-vpna] connection pw1
[PE2-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[PE2-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[PE2-xcg-vpna-pw1] evpn local-service-id 2 remote-service-id 1
[PE2-xcg-vpna-pw1-2-1] quit
[PE2-xcg-vpna-pw1] quit
[PE2-xcg-vpna] quit
(5) 配置CE 2
<CE2> system-view
[CE2] interface ten-gigabitethernet 3/1/1
[CE2-Ten-GigabitEthernet3/1/1] ip address 10.1.1.20 24
[CE2-Ten-GigabitEthernet3/1/1] quit
# 在PE 1上查看PW信息,可以看到建立了一条EVPN PW。
[PE1] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 1
1 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
2.2.2.2 2 710127/710127 EVPN M 0 Up
# 在PE 1上查看交叉连接的EVPN信息。
[PE1] display evpn route xconnect-group
Flags: P - Primary, B - Backup, C - Control word
Xconnect group name: vpna
Connection Name: pw1
ESI : 0000.0000.0000.0000.0000
Local service ID : 1
Remote service ID : 2
Control word : Disable
In label : 710127
Local MTU : 1500
AC state : Up
PW type : Ethernet
Nexthop ESI Out label Flags MTU State
2.2.2.2 0000.0000.0000.0000.0000 710127 P 1500 Up
# 在PE 2上也可以看到EVPN PW信息。
[PE2] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 1
1 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
1.1.1.1 1 710127/710127 EVPN M 0 Up
# CE 1与CE 2之间能够ping通。
用户网络有两个站点,分别为CE 1和CE 2。CE 1通过聚合链路多归属于PE 1和PE 2,CE 2为PE 3下的单归属设备。CE 1和CE 2希望通过在骨干网上建立的EVPN PW,实现站点1与站点2互联。
图1-18 EVPN VPWS多归属配置组网图
设备 |
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
PE 1 |
Loop0 |
192.1.1.1/32 |
CE 1 |
RAGG1 |
100.1.1.1/24 |
|
XGE3/1/1 |
- |
CE 2 |
XGE3/1/1 |
100.1.1.2/24 |
|
XGE3/1/2 |
10.1.1.1/24 |
PE 3 |
Loop0 |
192.3.3.3/32 |
|
XGE3/1/3 |
10.1.3.1/24 |
|
XGE3/1/1 |
- |
PE 2 |
Loop0 |
192.2.2.2/32 |
|
XGE3/1/2 |
10.1.1.2/24 |
|
XGE3/1/1 |
- |
|
XGE3/1/3 |
10.1.2.2/24 |
|
XGE3/1/2 |
10.1.2.1/24 |
|
|
|
|
XGE3/1/3 |
10.1.3.2/24 |
|
|
|
(1) 配置CE 1
# 创建三层聚合接口1,采用静态聚合模式,并为其配置IP地址和子网掩码。
<CE1> system-view
[CE1] interface route-aggregation 1
[CE1-Route-Aggregation1] ip address 100.1.1.1 24
[CE1-Route-Aggregation1] quit
# 将接口Ten-GigabitEthernet3/1/1至Ten-GigabitEthernet3/1/2加入到聚合组1中。
[CE1] interface ten-gigabitethernet 3/1/1
[CE1-Ten-GigabitEthernet3/1/1] port link-aggregation group 1
[CE1-Ten-GigabitEthernet3/1/1] quit
[CE1] interface ten-gigabitethernet 3/1/2
[CE1-Ten-GigabitEthernet3/1/2] port link-aggregation group 1
[CE1-Ten-GigabitEthernet3/1/2] quit
(2) 配置PE 1
# 配置LSR ID。
<PE1> system-view
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 192.1.1.1 32
[PE1-LoopBack0] quit
[PE1] mpls lsr-id 192.1.1.1
# 开启L2VPN功能。
[PE1] l2vpn enable
# 全局使能LDP。
[PE1] mpls ldp
[PE1-ldp] quit
# 配置连接PE3的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[PE1] interface ten-gigabitethernet 3/1/2
[PE1-Ten-GigabitEthernet3/1/2] ip address 10.1.1.1 24
[PE1-Ten-GigabitEthernet3/1/2] mpls enable
[PE1-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE1-Ten-GigabitEthernet3/1/2] quit
# 在PE 1上运行OSPF,用于建立LSP。
[PE1] ospf
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 10.1.3.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 192.1.1.1 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
# 在PE 1,PE2和PE 3之间建立IBGP连接,并配置通过BGP发布路由信息。
[PE1] bgp 100
[PE1-bgp-default] peer 192.2.2.2 as-number 100
[PE1-bgp-default] peer 192.2.2.2 connect-interface loopback 0
[PE1-bgp-default] peer 192.3.3.3 as-number 100
[PE1-bgp-default] peer 192.3.3.3 connect-interface loopback 0
[PE1-bgp-default] address-family l2vpn evpn
[PE1-bgp-default-evpn] peer 192.2.2.2 enable
[PE1-bgp-default-evpn] peer 192.3.3.3 enable
[PE1-bgp-default-evpn] peer 192.2.2.2 advertise encap-type mpls
[PE1-bgp-default-evpn] peer 192.3.3.3 advertise encap-type mpls
[PE1-bgp-default-evpn] quit
[PE1-bgp-default] quit
# 在接入站点的接口Ten-GigabitEthernet3/1/1下配置ESI值和接口的冗余备份模式。
[PE1] interface ten-gigabitethernet 3/1/1
[PE1-Ten-GigabitEthernet3/1/1] esi 1.1.1.1.1
[PE1-Ten-GigabitEthernet3/1/1] evpn redundancy-mode all-active
[PE1-Ten-GigabitEthernet3/1/1] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[PE1] xconnect-group vpna
[PE1-xcg-vpna] evpn encapsulation mpls
[PE1-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE1-xcg-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE1-xcg-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[PE1-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将接口Ten-GigabitEthernet3/1/1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE1] xconnect-group vpna
[PE1-xcg-vpna] connection pw1
[PE1-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[PE1-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[PE1-xcg-vpna-pw1] evpn local-service-id 1 remote-service-id 2
[PE1-xcg-vpna-pw1-1-2] quit
[PE1-xcg-vpna-pw1] quit
[PE1-xcg-vpna] quit
# 配置Track项监控接口Ten-GigabitEthernet3/1/2的状态。
[PE1] track 1 interface ten-gigabitethernet 3/1/2
[PE1-track-1] quit
# 配置Tcl监控策略,当Ten-GigabitEthernet3/1/2状态变为Down后,PE1能自动感知,并将Ten-GigabitEthernet3/1/1接口shutdown。
[PE1] rtm cli-policy policy1
[PE1-rtm-policy1] event track 1 state negative
[PE1-rtm-policy1] action 0 cli system-view
[PE1-rtm-policy1] action 1 cli interface Ten-GigabitEthernet3/1/1
[PE1-rtm-policy1] action 2 cli shutdown
[PE1-rtm-policy1] user-role network-admin
[PE1-rtm-policy1] quit
(3) 配置PE 2
# 配置LSR ID。
<PE2> system-view
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 192.2.2.2 32
[PE2-LoopBack0] quit
[PE2] mpls lsr-id 192.2.2.2
# 开启L2VPN功能。
[PE2] l2vpn enable
# 全局使能LDP。
[PE2] mpls ldp
[PE2-ldp] quit
# 配置连接PE 3的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[PE2] interface ten-gigabitethernet 3/1/2
[PE2-Ten-GigabitEthernet3/1/2] ip address 10.1.2.1 24
[PE2-Ten-GigabitEthernet3/1/2] mpls enable
[PE2-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE2-Ten-GigabitEthernet3/1/2] quit
# 在PE2上运行OSPF,用于建立LSP。
[PE2] ospf
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 10.1.2.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] network 10.1.3.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] network 192.2.2.2 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
# 在PE 1,PE2和PE 3之间建立IBGP连接,并配置通过BGP发布路由信息。
[PE2] bgp 100
[PE2-bgp-default] peer 192.1.1.1 as-number 100
[PE2-bgp-default] peer 192.1.1.1 connect-interface loopback 0
[PE2-bgp-default] peer 192.3.3.3 as-number 100
[PE2-bgp-default] peer 192.3.3.3 connect-interface loopback 0
[PE2-bgp-default] address-family l2vpn evpn
[PE2-bgp-default-evpn] peer 192.1.1.1 enable
[PE2-bgp-default-evpn] peer 192.3.3.3 enable
[PE2-bgp-default-evpn] peer 192.1.1.1 advertise encap-type mpls
[PE2-bgp-default-evpn] peer 192.3.3.3 advertise encap-type mpls
[PE2-bgp-default-evpn] quit
[PE2-bgp-default] quit
# 在接入站点的接口Ten-GigabitEthernet3/1/1下配置ESI值和接口的冗余备份模式。
[PE2] interface ten-gigabitethernet 3/1/1
[PE2-Ten-GigabitEthernet3/1/1] esi 1.1.1.1.1
[PE2-Ten-GigabitEthernet3/1/1] evpn redundancy-mode all-active
[PE2-Ten-GigabitEthernet3/1/1] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[PE2] xconnect-group vpna
[PE2-xcg-vpna] evpn encapsulation mpls
[PE2-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE2-xcg-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE2-xcg-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[PE2-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将接口Ten-GigabitEthernet3/1/1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE2] xconnect-group vpna
[PE2-xcg-vpna] connection pw1
[PE2-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[PE2-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[PE2-xcg-vpna-pw1] evpn local-service-id 1 remote-service-id 2
[PE2-xcg-vpna-pw1-1-2] quit
[PE2-xcg-vpna-pw1] quit
[PE2-xcg-vpna] quit
# 配置Track项监控接口Ten-GigabitEthernet3/1/2的状态。
[PE2] track 1 interface Ten-GigabitEthernet3/1/2
[PE2-track-1] quit
# 配置Tcl监控策略,当Ten-GigabitEthernet3/1/2状态变为Down后,PE2能自动感知,并将Ten-GigabitEthernet3/1/1接口shutdown。
[PE2] rtm cli-policy policy1
[PE2-rtm-policy1] event track 1 state negative
[PE2-rtm-policy1] action 0 cli system-view
[PE2-rtm-policy1] action 1 cli interface Ten-GigabitEthernet3/1/1
[PE2-rtm-policy1] action 2 cli shutdown
[PE2-rtm-policy1] user-role network-admin
[PE2-rtm-policy1] quit
(4) 配置PE 3
# 配置LSR ID。
<PE3> system-view
[PE3] interface loopback 0
[PE3-LoopBack0] ip address 192.3.3.3 32
[PE3-LoopBack0] quit
[PE3] mpls lsr-id 192.3.3.3
# 开启L2VPN功能。
[PE3] l2vpn enable
# 全局使能LDP。
[PE3] mpls ldp
[PE3-ldp] quit
# 配置连接PE1和PE2的接口Ten-GigabitEthernet3/1/2和Ten-GigabitEthernet3/1/3,并在这两个接口上使能LDP。
[PE3] interface ten-gigabitethernet 3/1/2
[PE3-Ten-GigabitEthernet3/1/2] ip address 10.1.1.2 24
[PE3-Ten-GigabitEthernet3/1/2] mpls enable
[PE3-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE3-Ten-GigabitEthernet3/1/2] quit
[PE3] interface ten-gigabitethernet 3/1/3
[PE3-Ten-GigabitEthernet3/1/3] ip address 10.1.2.2 24
[PE3-Ten-GigabitEthernet3/1/3] mpls enable
[PE3-Ten-GigabitEthernet3/1/3] mpls ldp enable
[PE3-Ten-GigabitEthernet3/1/3] quit
# 在PE 3上运行OSPF,用于建立LSP。
[PE3] ospf
[PE3-ospf-1] area 0
[PE3-ospf-1-area-0.0.0.0] network 192.3.3.3 0.0.0.0
[PE3-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[PE3-ospf-1-area-0.0.0.0] network 10.1.2.0 0.0.0.255
[PE3-ospf-1-area-0.0.0.0] quit
[PE3-ospf-1] quit
# 在PE 1,PE2和PE 3之间建立IBGP连接,并配置通过BGP发布路由信息。
[PE3] bgp 100
[PE3-bgp-default] peer 192.1.1.1 as-number 100
[PE3-bgp-default] peer 192.1.1.1 connect-interface loopback 0
[PE3-bgp-default] peer 192.2.2.2 as-number 100
[PE3-bgp-default] peer 192.2.2.2 connect-interface loopback 0
[PE3-bgp-default] address-family l2vpn evpn
[PE3-bgp-default-evpn] peer 192.1.1.1 enable
[PE3-bgp-default-evpn] peer 192.2.2.2 enable
[PE3-bgp-default-evpn] peer 192.1.1.1 advertise encap-type mpls
[PE3-bgp-default-evpn] peer 192.2.2.2 advertise encap-type mpls
[PE3-bgp-default-evpn] quit
[PE3-bgp-default] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[PE3] xconnect-group vpna
[PE3-xcg-vpna] evpn encapsulation mpls
[PE3-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE3-xcg-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE3-xcg-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[PE3-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将接口Ten-GigabitEthernet3/1/1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE3] xconnect-group vpna
[PE3-xcg-vpna] connection pw1
[PE3-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[PE3-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[PE3-xcg-vpna-pw1] evpn local-service-id 2 remote-service-id 1
[PE3-xcg-vpna-pw1-2-1] quit
[PE3-xcg-vpna-pw1] quit
[PE3-xcg-vpna] quit
(5) 配置CE 2
<CE2> system-view
[CE2] interface Ten-GigabitEthernet3/1/1
[CE2-Vlan-interface10] ip address 100.1.1.2 24
[CE2-Vlan-interface10] quit
# 在PE 1上查看PW信息,可以看到建立EVPN PW。
<PE1> display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 1
1 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.3.3.3 2 710263/710265 EVPN M 0 Up
# 在PE 1上查看交叉连接的EVPN信息。
<PE1> display evpn route xconnect-group
Flags: P - Primary, B - Backup, C - Control word
Xconnect group name: vpna
Connection name: 1
ESI : 0001.0001.0001.0001.0001
Local service ID : 1
Remote service ID : 2
Control word : Disabled
In label : 710263
Local MTU : 1500
AC State : Up
PW type : Ethernet
Nexthop ESI Out label Flags MTU state
192.3.3.3 0000.0000.0000.0000.0000 710265 P 1500 Up
192.2.2.2 0001.0001.0001.0001.0001 710264 P 1500 Up
# 在PE 1上查看本地ES信息。
<PE1> display evpn es local
Redundancy mode: A - All-active, S - Single-active
Xconnect-group name : vpna
ESI Tag ID DF address Mode State ESI label
0001.0001.0001.0001.0001 0 192.1.1.1 A Up -
# 在PE 1上查看远端ES信息。
<PE1> display evpn es remote
Control Flags: P - Primary, B - Backup, C - Control word
Xconnect group name : vpna
ESI : 0001.0001.0001.0001.0001
Ethernet segment routes :
192.2.2.2
A-D per ES routes :
Peer IP Remote Redundancy mode
192.2.2.2 All-active
A-D per EVI routes :
Tag ID Peer IP Control Flags
1 192.2.2.2 P
# 在PE 2上也可以看到EVPN PW信息。
<PE2> display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 1
1 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.3.3.3 2 710124/710265 EVPN M 1 Up
# 在PE 3上也可以看到EVPN PW信息。
<PE3> display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 2
2 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.1.1.1 1 710265/710263 EVPN E 0 Up
192.2.2.2 1 710265/710124 EVPN E 0 Up
# CE 1与CE 2之间能够ping通,当其中一条PW故障时,CE 1与CE 2之间仍能够ping通。
如图1-19,PE 1和P、P和PE 2之间分别建立了一条MPLS TE隧道,但是在PE 1和PE 2之间未建立MPLS TE隧道。通过配置域内多段PW:P与PE 1之间、P与PE 2之间建立EVPN PW、在P上将两条PW关联,可以实现在PE 1和PE 2之间不存在公网隧道的情况下间接在PE 1和PE 2之间建立连接,确保CE 1和CE 2的二层报文跨越骨干网传送。
图1-19 域间多段PW配置组网图
设备 |
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
CE 1 |
XGE3/1/1 |
100.1.1.1/24 |
P |
Loop0 |
192.4.4.4/32 |
PE 1 |
Loop0 |
192.2.2.2/32 |
|
XGE3/1/1 |
23.1.1.2/24 |
|
XGE3/1/2 |
23.1.1.1/24 |
|
XGE3/1/2 |
26.2.2.2/24 |
CE 2 |
XGE3/1/1 |
100.1.1.2/24 |
PE 2 |
Loop0 |
192.3.3.3/32 |
|
|
|
|
XGE3/1/2 |
26.2.2.1/24 |
(1) 配置CE 1
<CE1> system-view
[CE1] interface ten-gigabitethernet 3/1/1
[CE1-Ten-GigabitEthernet3/1/1] ip address 100.1.1.1 24
[CE1-Ten-GigabitEthernet3/1/1] quit
(2) 配置PE 1
# 配置LSR ID。
<PE1> system-view
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 192.2.2.2 32
[PE1-LoopBack0] quit
[PE1] mpls lsr-id 192.2.2.2
# 开启L2VPN功能。
[PE1] l2vpn enable
# 配置MPLS TE,以便在PE 1和P之间建立MPLS TE隧道。详细配置过程,请参见“MPLS配置指导”中的“MPLS TE”。
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[PE1] xconnect-group vpna
[PE1-xcg-vpna] evpn encapsulation mpls
[PE1-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE1-xcg-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE1-xcg-vpna-evpn-mpls] vpn-target 1:2 import-extcommunity
[PE1-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将接口Ten-GigabitEthernet3/1/1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE1-xcg-vpna] connection pw1
[PE1-xcg-vpna-pw1] evpn local-service-id 2 remote-service-id 1
[PE1-xcg-vpna-pw1-2-1] quit
[PE1-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[PE1-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[PE1-xcg-vpna-pw1] quit
[PE1-xcg-vpna] quit
# 在PE 1和P之间建立IBGP连接,并配置在二者之间通过BGP发布路由信息。
[PE1] bgp 100
[PE1-bgp-default] peer 192.4.4.4 as-number 100
[PE1-bgp-default] peer 192.4.4.4 connect-interface LoopBack0
[PE1-bgp-default] address-family l2vpn evpn
[PE1-bgp-default-evpn] peer 192.4.4.4 enable
[PE1-bgp-default-evpn] peer 192.4.4.4 advertise encap-type mpls
[PE1-bgp-default-evpn] quit
[PE1-bgp-default] quit
(3) 配置P
# 配置LSR ID。
<P> system-view
[P] interface loopback 0
[P-LoopBack0] ip address 192.4.4.4 32
[P-LoopBack0] quit
[P] mpls lsr-id 192.4.4.4
# 开启L2VPN功能。
[P] l2vpn enable
# 配置MPLS TE,以便在PE 1和P、P和PE 2之间建立MPLS TE隧道。详细配置过程,请参见“MPLS配置指导”中的“MPLS TE”。
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[P] xconnect-group vpn1
[P-xcg-vpna] evpn encapsulation mpls
[P-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[P-xcg-vpna-evpn-mpls] vpn-target 1:2 export-extcommunity
[P-xcg-vpna-evpn-mpls] vpn-target 1:1 1:3 import-extcommunity
[P-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,在交叉连接内创建两条EVPN PW,将这两条PW关联,以便建立多段PW。
[P-xcg-vpna] connection pw1
[P-xcg-vpna-pw1] evpn local-service-id 1 remote-service-id 2
[P-xcg-vpna-pw1-1-2] quit
[P-xcg-vpna-pw1] evpn local-service-id 3 remote-service-id 4
[P-xcg-vpna-pw1-3-4] quit
[P-xcg-vpna-pw1] quit
[P-xcg-vpna] quit
# 在P和PE 1、PE2之间建立IBGP连接,并配置P和PE 1、PE2之间通过BGP发布路由信息。
[P] bgp 100
[P-bgp-default] peer 192.2.2.2 as-number 100
[P-bgp-default] peer 192.2.2.2 connect-interface LoopBack0
[P-bgp-default] peer 192.3.3.3 as-number 100
[P-bgp-default] peer 192.3.3.3 connect-interface LoopBack0
[P-bgp-default] address-family l2vpn evpn
[P-bgp-default-evpn] peer 192.2.2.2 enable
[P-bgp-default-evpn] peer 192.3.3.3 enable
[P-bgp-default-evpn] peer 192.2.2.2 advertise encap-type mpls
[P-bgp-default-evpn] peer 192.3.3.3 advertise encap-type mpls
[P-bgp-default-evpn] quit
[P-bgp-default] quit
(4) 配置PE 2
# 配置LSR ID。
<PE2> system-view
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 192.3.3.3 32
[PE2-LoopBack0] quit
[PE2] mpls lsr-id 192.3.3.3
# 开启L2VPN功能。
[PE2] l2vpn enable
# 配置MPLS TE,以便在PE 2和P之间建立MPLS TE隧道。详细配置过程,请参见“MPLS配置指导”中的“MPLS TE”。
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[PE2] xconnect-group vpn1
[PE2-xcg-vpna] evpn encapsulation mpls
[PE2-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE2-xcg-vpna-evpn-mpls] vpn-target 1:3 export-extcommunity
[PE2-xcg-vpna-evpn-mpls] vpn-target 1:2 import-extcommunity
[PE2-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将接口Ten-GigabitEthernet3/1/1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE2-xcg-vpna] connection pw1
[PE2-xcg-vpna-pw1] evpn local-service-id 4 remote-service-id 3
[PE2-xcg-vpna-pw1-4-3] quit
[PE2-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[PE2-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[PE2-xcg-vpna-pw1] quit
[PE2-xcg-vpna] quit
# 在PE 2和P之间建立IBGP连接,并配置在二者之间通过BGP发布路由信息。
[PE2] bgp 100
[PE2-bgp-default] peer 192.4.4.4 as-number 100
[PE2-bgp-default] peer 192.4.4.4 connect-interface LoopBack0
[PE2-bgp-default] address-family l2vpn evpn
[PE2-bgp-default-evpn] peer 192.4.4.4 enable
[PE2-bgp-default-evpn] peer 192.4.4.4 advertise encap-type mpls
[PE2-bgp-default-evpn] quit
[PE2-bgp-default] quit
(5) 配置CE 2
<CE2> system-view
[CE2] interface ten-gigabitethernet 3/1/1
[CE2-Ten-GigabitEthernet3/1/1] ip address 100.1.1.2 24
[CE2-Ten-GigabitEthernet3/1/1] quit
# 在PE 1上查看PW信息,可以看到已经建立了EVPN PW。
[PE1] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 1
1 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.4.4.4 1 1151/1150 EVPN M 0 Up
# 在P上查看PW信息,可以看到建立了两条PW连接,构成了多段PW。
[P] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 2
2 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.2.2.2 2 1150/1151 EVPN M 0 Up
192.3.3.3 4 1151/1151 EVPN M 1 Up
# 在PE 2上也可以看到PW信息。
[PE2] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 1
1 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpn1a
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.4.4.4 3 1151/1151 EVPN M 0 Up
# CE 1与CE 2之间能够ping通。
PE 1和ASBR 1属于AS 100,PE 2和ASBR 2属于AS 200。采用EVPN VPWS跨域Option A的方式,跨越AS域实现CE 1和CE 2的二层报文跨越骨干网传递。具体需求如下:
· CE 1通过AS 100的PE 1接入,CE 2通过AS 200的PE 2接入;
· PE 1和ASBR 1、PE 2和ASBR 2间分别建立EVPN PW;
· 同一个AS内部的MPLS骨干网使用OSPF作为IGP。
图1-20 配置跨域-Option A方式组网图
设备 |
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
CE 1 |
XGE3/1/1 |
100.1.1.1/24 |
ASBR 1 |
Loop0 |
192.2.2.2/32 |
PE 1 |
Loop0 |
192.1.1.1/32 |
|
XGE3/1/2 |
23.1.1.2/24 |
|
XGE3/1/2 |
23.1.1.1/24 |
|
XGE3/1/1 |
26.2.2.2/24 |
PE 2 |
Loop0 |
192.4.4.4/32 |
ASBR 2 |
Loop0 |
192.3.3.3/32 |
|
XGE3/1/2 |
22.2.2.1/24 |
|
XGE3/1/1 |
26.2.2.3/24 |
CE 2 |
XGE3/1/1 |
100.1.1.2/24 |
|
XGE3/1/2 |
22.2.2.3/24 |
(1) 配置CE 1
<CE1> system-view
[CE1] interface ten-gigabitethernet 3/1/1
[CE1-Ten-GigabitEthernet3/1/1] ip address 100.1.1.1 24
[CE1-Ten-GigabitEthernet3/1/1] quit
(2) 配置PE 1
# 配置LSR ID。
<PE1> system-view
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 192.1.1.1 32
[PE1-LoopBack0] quit
[PE1] mpls lsr-id 192.1.1.1
# 开启L2VPN功能。
[PE1] l2vpn enable
# 全局使能LDP。
[PE1] mpls ldp
[PE1-ldp] quit
# 配置连接ASBR 1的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[PE1] interface ten-gigabitethernet 3/1/2
[PE1-Ten-GigabitEthernet3/1/2] ip address 23.1.1.1 24
[PE1-Ten-GigabitEthernet3/1/2] mpls enable
[PE1-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE1-Ten-GigabitEthernet3/1/2] quit
# 在PE 1上运行OSPF,用于建立域内LSP。
[PE1] ospf
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 23.1.1.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 192.1.1.1 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[PE1] xconnect-group vpn1
[PE1-xcg-vpna] evpn encapsulation mpls
[PE1-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE1-xcg-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE1-xcg-vpna-evpn-mpls] vpn-target 1:2 import-extcommunity
[PE1-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将接口Ten-GigabitEthernet3/1/1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE1-xcg-vpna] connection pw1
[PE1-xcg-vpna-pw1] evpn local-service-id 2 remote-service-id 1
[PE1-xcg-vpna-pw1-2-1] quit
[PE1-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[PE1-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[PE1-xcg-vpna-pw1] quit
[PE1-xcg-vpna] quit
# 在PE 1和ASBR 1之间建立IBGP连接,并配置在二者之间通过BGP发布EVPN路由信息。
[PE1] bgp 100
[PE1-bgp-default] peer 192.2.2.2 as-number 100
[PE1-bgp-default] peer 192.2.2.2 connect-interface LoopBack0
[PE1-bgp-default] address-family l2vpn evpn
[PE1-bgp-default-evpn] peer 192.2.2.2 enable
[PE1-bgp-default-evpn] peer 192.2.2.2 advertise encap-type mpls
[PE1-bgp-default-evpn] quit
[PE1-bgp-default] quit
(3) 配置ASBR 1
# 配置LSR ID。
<ASBR1> system-view
[ASBR1] interface loopback 0
[ASBR1-LoopBack0] ip address 192.2.2.2 32
[ASBR1-LoopBack0] quit
[ASBR1] mpls lsr-id 192.2.2.2
# 开启L2VPN功能。
[ASBR1] l2vpn enable
# 全局使能LDP。
[ASBR1] mpls ldp
[ASBR1-ldp] quit
# 配置连接PE 1的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[ASBR1] interface ten-gigabitethernet 3/1/2
[ASBR1-Ten-GigabitEthernet3/1/2] ip address 23.1.1.2 24
[ASBR1-Ten-GigabitEthernet3/1/2] mpls enable
[ASBR1-Ten-GigabitEthernet3/1/2] mpls ldp enable
[ASBR1-Ten-GigabitEthernet3/1/2] quit
# 在ASBR 1上运行OSPF,用于建立域内LSP。
[ASBR1] ospf
[ASBR1-ospf-1] area 0
[ASBR1-ospf-1-area-0.0.0.0] network 23.1.1.0 0.0.0.255
[ASBR1-ospf-1-area-0.0.0.0] network 192.2.2.2 0.0.0.0
[ASBR1-ospf-1-area-0.0.0.0] quit
[ASBR1-ospf-1] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[ASBR1] xconnect-group vpn1
[ASBR1-xcg-vpna] evpn encapsulation mpls
[ASBR1-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[ASBR1-xcg-vpna-evpn-mpls] vpn-target 1:2 export-extcommunity
[ASBR1-xcg-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[ASBR1-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将连接ASBR 2的接口Ten-GigabitEthernet3/1/1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[ASBR1-xcg-vpna] connection pw1
[ASBR1-xcg-vpna-pw1] evpn local-service-id 1 remote-service-id 2
[ASBR1-xcg-vpna-pw1-1-2] quit
[ASBR1-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[ASBR1-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[ASBR1-xcg-vpna-pw1] quit
[ASBR1-xcg-vpna] quit
# 在ASBR 1和PE 1之间建立IBGP连接,并配置在二者之间通过BGP发布EVPN路由信息。
[ASBR1] bgp 100
[ASBR1-bgp-default] peer 192.1.1.1 as-number 100
[ASBR1-bgp-default] peer 192.1.1.1 connect-interface LoopBack0
[ASBR1-bgp-default] address-family l2vpn evpn
[ASBR1-bgp-default-evpn] peer 192.1.1.1 enable
[ASBR1-bgp-default-evpn] peer 192.1.1.1 advertise encap-type mpls
[ASBR1-bgp-default-evpn] quit
[ASBR1-bgp-default] quit
(4) 配置ASBR 2
# 配置LSR ID。
<ASBR2> system-view
[ASBR2] interface loopback 0
[ASBR2-LoopBack0] ip address 192.3.3.3 32
[ASBR2-LoopBack0] quit
[ASBR2] mpls lsr-id 192.3.3.3
# 开启L2VPN功能。
[ASBR2] l2vpn enable
# 全局使能LDP。
[ASBR2] mpls ldp
[ASBR2-ldp] quit
# 配置连接PE 2的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[ASBR2] interface ten-gigabitethernet 3/1/2
[ASBR2-Ten-GigabitEthernet3/1/2] ip address 22.2.2.3 24
[ASBR2-Ten-GigabitEthernet3/1/2] mpls enable
[ASBR2-Ten-GigabitEthernet3/1/2] mpls ldp enable
[ASBR2-Ten-GigabitEthernet3/1/2] quit
# 在ASBR 2上运行OSPF,用于建立域内LSP。
[ASBR2] ospf
[ASBR2-ospf-1] area 0
[ASBR2-ospf-1-area-0.0.0.0] network 22.2.2.0 0.0.0.255
[ASBR2-ospf-1-area-0.0.0.0] network 192.3.3.3 0.0.0.0
[ASBR2-ospf-1-area-0.0.0.0] quit
[ASBR2-ospf-1] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[ASBR2] xconnect-group vpn1
[ASBR2-xcg-vpna] evpn encapsulation mpls
[ASBR2-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[ASBR2-xcg-vpna-evpn-mpls] vpn-target 2:2 export-extcommunity
[ASBR2-xcg-vpna-evpn-mpls] vpn-target 2:1 import-extcommunity
[ASBR2-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将连接ASBR 1的接口Ten-GigabitEthernet3/1/1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[ASBR2-xcg-vpna] connection pw1
[ASBR2-xcg-vpna-pw1] evpn local-service-id 3 remote-service-id 4
[ASBR2-xcg-vpna-pw1-3-4] quit
[ASBR2-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[ASBR2-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[ASBR2-xcg-vpna-pw1] quit
[ASBR2-xcg-vpna] quit
# 在ASBR 2和PE 2之间建立IBGP连接,并配置在二者之间通过BGP发布EVPN路由信息。
[ASBR2] bgp 200
[ASBR2-bgp-default] peer 192.4.4.4 as-number 200
[ASBR2-bgp-default] peer 192.4.4.4 connect-interface LoopBack0
[ASBR2-bgp-default] address-family l2vpn evpn
[ASBR2-bgp-default-evpn] peer 192.4.4.4 enable
[ASBR2-bgp-default-evpn] peer 192.4.4.4 advertise encap-type mpls
[ASBR2-bgp-default-evpn] quit
[ASBR2-bgp-default] quit
(5) 配置PE 2
# 配置LSR ID。
<PE2> system-view
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 192.4.4.4 32
[PE2-LoopBack0] quit
[PE2] mpls lsr-id 192.4.4.4
# 开启L2VPN功能。
[PE2] l2vpn enable
# 全局使能LDP。
[PE2] mpls ldp
[PE2-ldp] quit
# 配置连接ASBR 2的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[PE2] interface ten-gigabitethernet 3/1/2
[PE2-Ten-GigabitEthernet3/1/2] ip address 22.2.2.1 24
[PE2-Ten-GigabitEthernet3/1/2] mpls enable
[PE2-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE2-Ten-GigabitEthernet3/1/2] quit
# 在PE 2上运行OSPF,用于建立域内LSP。
[PE2] ospf
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 192.4.4.4 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] network 22.2.2.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[PE2] xconnect-group vpn1
[PE2-xcg-vpna] evpn encapsulation mpls
[PE2-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE2-xcg-vpna-evpn-mpls] vpn-target 2:1 export-extcommunity
[PE2-xcg-vpna-evpn-mpls] vpn-target 2:2 import-extcommunity
[PE2-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将接口Ten-GigabitEthernet3/1/1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE2-xcg-vpna] connection pw1
[PE2-xcg-vpna-pw1] evpn local-service-id 4 remote-service-id 3
[PE2-xcg-vpna-pw1-4-3] quit
[PE2-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[PE2-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[PE2-xcg-vpna-pw1] quit
[PE2-xcg-vpna] quit
# 在PE 2和ASBR 2之间建立IBGP连接,并配置在二者之间通过BGP发布EVPN路由信息。
[PE2] bgp 200
[PE2-bgp-default] peer 192.3.3.3 as-number 200
[PE2-bgp-default] peer 192.3.3.3 connect-interface LoopBack0
[PE2-bgp-default] address-family l2vpn evpn
[PE2-bgp-default-evpn] peer 192.3.3.3 enable
[PE2-bgp-default-evpn] peer 192.3.3.3 advertise encap-type mpls
[PE2-bgp-default-evpn] quit
[PE2-bgp-default] quit
(6) 配置CE 2
<CE2> system-view
[CE2] interface ten-gigabitethernet 3/1/1
[CE2-Ten-GigabitEthernet3/1/1] ip address 100.1.1.2 24
[CE2-Ten-GigabitEthernet3/1/1] quit
# 在PE 1上查看PW信息,可以看到已经建立了EVPN PW。
[PE1] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 1
1 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.2.2.2 1 710127/710126 EVPN M 0 Up
# 在ASBR 1上查看PW信息,可以看到已经建立了EVPN PW。
[ASBR1] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 2
2 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpn1
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.1.1.1 2 710126/710127 EVPN M 0 Up
# 在ASBR 2上查看PW信息,可以看到已经建立了EVPN PW。
[ASBR2] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 2
2 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.4.4.4 4 710127/710127 EVPN M 1 Up
# 在PE 2上也可以看到PW信息。
[PE2] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 1
1 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.3.3.3 3 710127/710127 EVPN M 0 Up
# CE 1与CE 2之间能够ping通。
PE 1和ASBR 1属于AS 100,PE 2和ASBR 2属于AS 200。采用多段PW功能作为跨域Option B的解决方案,跨越AS域在PE 1和PE 2之间建立连接,实现CE 1和CE 2的二层报文跨越骨干网传递。具体需求如下:
· PE 1和ASBR 1、PE 2和ASBR 2之间分别建立EVPN PW,并通过LDP建立承载该PW的公网隧道。
· ASBR 1和ASBR 2之间通过BGP发布EVPN路由建立EVPN PW;通过BGP发布带标签的IPv4单播路由,建立承载EVPN PW的公网隧道。
· 在ASBR 1和ASBR 2上分别将两条隧道关联,以便建立多段PW。
图1-21 配置跨域-Option B方式组网图
设备 |
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
CE 1 |
XGE3/1/1 |
100.1.1.1/24 |
ASBR 1 |
Loop0 |
192.2.2.2/32 |
PE 1 |
Loop0 |
192.1.1.1/32 |
|
XGE3/1/2 |
23.1.1.2/24 |
|
XGE3/1/2 |
23.1.1.1/24 |
|
XGE3/1/1 |
26.2.2.2/24 |
PE 2 |
Loop0 |
192.4.4.4/32 |
ASBR 2 |
Loop0 |
192.3.3.3/32 |
|
XGE3/1/2 |
22.2.2.1/24 |
|
XGE3/1/1 |
26.2.2.3/24 |
CE 2 |
XGE3/1/1 |
100.1.1.2/24 |
|
XGE3/1/2 |
22.2.2.3/24 |
(1) 配置CE 1
<CE1> system-view
[CE1] interface ten-gigabitethernet 3/1/1
[CE1-Ten-GigabitEthernet3/1/1] ip address 100.1.1.1 24
[CE1-Ten-GigabitEthernet3/1/1] quit
(2) 配置PE 1
# 配置LSR ID。
<PE1> system-view
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 192.1.1.1 32
[PE1-LoopBack0] quit
[PE1] mpls lsr-id 192.1.1.1
# 开启L2VPN功能。
[PE1] l2vpn enable
# 全局使能LDP。
[PE1] mpls ldp
[PE1-ldp] quit
# 配置连接ASBR 1的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[PE1] interface ten-gigabitethernet 3/1/2
[PE1-Ten-GigabitEthernet3/1/2] ip address 23.1.1.1 24
[PE1-Ten-GigabitEthernet3/1/2] mpls enable
[PE1-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE1-Ten-GigabitEthernet3/1/2] quit
# 在PE 1上运行OSPF,用于建立域内LSP。
[PE1] ospf
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 23.1.1.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 192.1.1.1 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[PE1] xconnect-group vpn1
[PE1-xcg-vpna] evpn encapsulation mpls
[PE1-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE1-xcg-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE1-xcg-vpna-evpn-mpls] vpn-target 1:2 import-extcommunity
[PE1-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将接口Ten-GigabitEthernet3/1/1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE1-xcg-vpna] connection pw1
[PE1-xcg-vpna-pw1] evpn local-service-id 2 remote-service-id 1
[PE1-xcg-vpna-pw1-2-1] quit
[PE1-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[PE1-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[PE1-xcg-vpna-pw1] quit
[PE1-xcg-vpna] quit
# 在PE 1和ASBR 1之间建立IBGP连接,并配置在二者之间通过BGP发布EVPN路由信息。
[PE1] bgp 100
[PE1-bgp-default] peer 192.2.2.2 as-number 100
[PE1-bgp-default] peer 192.2.2.2 connect-interface LoopBack0
[PE1-bgp-default] address-family l2vpn evpn
[PE1-bgp-default-evpn] peer 192.2.2.2 enable
[PE1-bgp-default-evpn] peer 192.2.2.2 advertise encap-type mpls
[PE1-bgp-default-evpn] quit
[PE1-bgp-default] quit
(3) 配置ASBR 1
# 配置LSR ID。
<ASBR1> system-view
[ASBR1] interface loopback 0
[ASBR1-LoopBack0] ip address 192.2.2.2 32
[ASBR1-LoopBack0] quit
[ASBR1] mpls lsr-id 192.2.2.2
# 开启L2VPN功能。
[ASBR1] l2vpn enable
# 全局使能LDP。
[ASBR1] mpls ldp
[ASBR1-ldp] quit
# 配置连接PE 1的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[ASBR1] interface ten-gigabitethernet 3/1/2
[ASBR1-Ten-GigabitEthernet3/1/2] ip address 23.1.1.2 24
[ASBR1-Ten-GigabitEthernet3/1/2] mpls enable
[ASBR1-Ten-GigabitEthernet3/1/2] mpls ldp enable
[ASBR1-Ten-GigabitEthernet3/1/2] quit
# 配置连接ASBR 2的接口Ten-GigabitEthernet3/1/1,在此接口上使能MPLS。
[ASBR1] interface ten-gigabitethernet 3/1/1
[ASBR1-Ten-GigabitEthernet3/1/1] ip address 26.2.2.2 24
[ASBR1-Ten-GigabitEthernet3/1/1] mpls enable
[ASBR1-Ten-GigabitEthernet3/1/1] quit
# 在ASBR 1上运行OSPF,用于建立域内LSP。
[ASBR1] ospf
[ASBR1-ospf-1] area 0
[ASBR1-ospf-1-area-0.0.0.0] network 23.1.1.0 0.0.0.255
[ASBR1-ospf-1-area-0.0.0.0] network 192.2.2.2 0.0.0.0
[ASBR1-ospf-1-area-0.0.0.0] quit
[ASBR1-ospf-1] quit
# 在ASBR 1和PE 1之间建立IBGP连接,并配置在二者之间通过BGP发布EVPN路由信息。
[ASBR1] bgp 100
[ASBR1-bgp-default] peer 192.1.1.1 as-number 100
[ASBR1-bgp-default] peer 192.1.1.1 connect-interface LoopBack0
[ASBR1-bgp-default] address-family l2vpn evpn
[ASBR1-bgp-default-evpn] peer 192.1.1.1 enable
[ASBR1-bgp-default-evpn] peer 192.1.1.1 advertise encap-type mpls
[ASBR1-bgp-default-evpn] quit
# 在ASBR 1和ASBR 2之间建立EBGP连接,并配置在二者之间通过BGP发布EVPN路由和带标签的单播路由信息。
[ASBR1-bgp-default] peer 26.2.2.3 as-number 200
[ASBR1-bgp-default] address-family ipv4 unicast
[ASBR1-bgp-default-ipv4] import-route direct
[ASBR1-bgp-default-ipv4] peer 26.2.2.3 enable
[ASBR1-bgp-default-ipv4] peer 26.2.2.3 route-policy policy1 export
[ASBR1-bgp-default-ipv4] peer 26.2.2.3 label-route-capability
[ASBR1-bgp-default] address-family l2vpn evpn
[ASBR1-bgp-default-evpn] peer 26.2.2.3 enable
[ASBR1-bgp-default-evpn] peer 26.2.2.3 advertise encap-type mpls
[ASBR1-bgp-default-evpn] quit
[ASBR1-bgp-default] quit
[ASBR1] route-policy policy1 permit node 1
[ASBR1-route-policy-policy1-1] apply mpls-label
[ASBR1-route-policy-policy1-1] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[ASBR1] xconnect-group vpn1
[ASBR1-xcg-vpna] evpn encapsulation mpls
[ASBR1-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[ASBR1-xcg-vpna-evpn-mpls] vpn-target 1:2 export-extcommunity
[ASBR1-xcg-vpna-evpn-mpls] vpn-target 1:1 2:2 import-extcommunity
[ASBR1-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,在交叉连接内创建两条EVPN PW,将这两条PW关联,以便建立多段PW。
[ASBR1-xcg-vpna] connection pw1
[ASBR1-xcg-vpna-pw1] evpn local-service-id 1 remote-service-id 2
[ASBR1-xcg-vpna-pw1-1-2] quit
[ASBR1-xcg-vpna-pw1] evpn local-service-id 3 remote-service-id 4
[ASBR1-xcg-vpna-pw1-3-4] quit
[ASBR1-xcg-vpna-pw1] quit
[ASBR1-xcg-vpna] quit
(4) 配置ASBR 2
# 配置LSR ID。
<ASBR2> system-view
[ASBR2] interface loopback 0
[ASBR2-LoopBack0] ip address 192.3.3.3 32
[ASBR2-LoopBack0] quit
[ASBR2] mpls lsr-id 192.3.3.3
# 开启L2VPN功能。
[ASBR2] l2vpn enable
# 全局使能LDP。
[ASBR2] mpls ldp
[ASBR2-ldp] quit
# 配置连接PE 2的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[ASBR2] interface ten-gigabitethernet 3/1/2
[ASBR2-Ten-GigabitEthernet3/1/2] ip address 22.2.2.3 24
[ASBR2-Ten-GigabitEthernet3/1/2] mpls enable
[ASBR2-Ten-GigabitEthernet3/1/2] mpls ldp enable
[ASBR2-Ten-GigabitEthernet3/1/2] quit
# 配置连接ASBR 1的接口Ten-GigabitEthernet3/1/1,在此接口上使能MPLS。
[ASBR2] interface ten-gigabitethernet 3/1/1
[ASBR2-Ten-GigabitEthernet3/1/1] ip address 26.2.2.3 24
[ASBR2-Ten-GigabitEthernet3/1/1] mpls enable
[ASBR2-Ten-GigabitEthernet3/1/1] quit
# 在ASBR 2上运行OSPF,用于建立域内LSP。
[ASBR2] ospf
[ASBR2-ospf-1] area 0
[ASBR2-ospf-1-area-0.0.0.0] network 22.2.2.0 0.0.0.255
[ASBR2-ospf-1-area-0.0.0.0] network 192.3.3.3 0.0.0.0
[ASBR2-ospf-1-area-0.0.0.0] quit
[ASBR2-ospf-1] quit
# 在ASBR 2和PE 2之间建立IBGP连接,并配置在二者之间通过BGP发布EVPN路由信息。
[ASBR2] bgp 200
[ASBR2-bgp-default] peer 192.4.4.4 as-number 200
[ASBR2-bgp-default] peer 192.4.4.4 connect-interface LoopBack0
[ASBR2-bgp-default] address-family l2vpn evpn
[ASBR2-bgp-default-evpn] peer 192.4.4.4 enable
[ASBR2-bgp-default-evpn] peer 192.4.4.4 advertise encap-type mpls
[ASBR2-bgp-default-evpn] quit
# 在ASBR 2和ASBR 1之间建立EBGP连接,并配置在二者之间通过BGP发布EVPN路由和带标签的单播路由信息。
[ASBR2-bgp-default] peer 26.2.2.2 as-number 100
[ASBR2-bgp-default] address-family ipv4 unicast
[ASBR2-bgp-default-ipv4] import-route direct
[ASBR2-bgp-default-ipv4] peer 26.2.2.2 enable
[ASBR2-bgp-default-ipv4] peer 26.2.2.2 route-policy policy1 export
[ASBR2-bgp-default-ipv4] peer 26.2.2.2 label-route-capability
[ASBR2-bgp-default-ipv4] quit
[ASBR2-bgp-default] address-family l2vpn evpn
[ASBR2-bgp-default-evpn] peer 26.2.2.2 enable
[ASBR2-bgp-default-evpn] peer 26.2.2.2 advertise encap-type mpls
[ASBR2-bgp-default-evpn] quit
[ASBR2-bgp-default] quit
[ASBR2] route-policy policy1 permit node 1
[ASBR2-route-policy-policy1-1] apply mpls-label
[ASBR2-route-policy-policy1-1] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[ASBR2] xconnect-group vpn1
[ASBR2-xcg-vpna] evpn encapsulation mpls
[ASBR2-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[ASBR2-xcg-vpna-evpn-mpls] vpn-target 2:2 export-extcommunity
[ASBR2-xcg-vpna-evpn-mpls] vpn-target 1:2 2:1 import-extcommunity
[ASBR2-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,在交叉连接内创建两条EVPN PW,将这两条PW关联,以便建立多段PW。
[ASBR2-xcg-vpna] connection pw1
[ASBR2-xcg-vpna-pw1] evpn local-service-id 4 remote-service-id 3
[ASBR2-xcg-vpna-pw1-4-3] quit
[ASBR2-xcg-vpna-pw1] evpn local-service-id 5 remote-service-id 6
[ASBR2-xcg-vpna-pw1-5-6] quit
[ASBR2-xcg-vpna-pw1] quit
[ASBR2-xcg-vpna] quit
(5) 配置PE 2
# 配置LSR ID。
<PE2> system-view
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 192.4.4.4 32
[PE2-LoopBack0] quit
[PE2] mpls lsr-id 192.4.4.4
# 开启L2VPN功能。
[PE2] l2vpn enable
# 全局使能LDP。
[PE2] mpls ldp
[PE2-ldp] quit
# 配置连接ASBR 2的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[PE2] interface ten-gigabitethernet 3/1/2
[PE2-Ten-GigabitEthernet3/1/2] ip address 22.2.2.1 24
[PE2-Ten-GigabitEthernet3/1/2] mpls enable
[PE2-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE2-Ten-GigabitEthernet3/1/2] quit
# 在PE 2上运行OSPF,用于建立域内LSP。
[PE2] ospf
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 192.4.4.4 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] network 22.2.2.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[PE2] xconnect-group vpn1
[PE2-xcg-vpna] evpn encapsulation mpls
[PE2-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE2-xcg-vpna-evpn-mpls] vpn-target 2:1 export-extcommunity
[PE2-xcg-vpna-evpn-mpls] vpn-target 2:2 import-extcommunity
[PE2-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将接口Ten-GigabitEthernet3/1/1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE2-xcg-vpna] connection pw1
[PE2-xcg-vpna-pw1] evpn local-service-id 6 remote-service-id 5
[PE2-xcg-vpna-pw1-6-5] quit
[PE2-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[PE2-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[PE2-xcg-vpna-pw1] quit
[PE2-xcg-vpna] quit
# 在PE 2和ASBR 2之间建立IBGP连接,并配置在二者之间通过BGP发布EVPN路由信息。
[PE2] bgp 200
[PE2-bgp-default] peer 192.3.3.3 as-number 200
[PE2-bgp-default] peer 192.3.3.3 connect-interface LoopBack0
[PE2-bgp-default] address-family l2vpn evpn
[PE2-bgp-default-evpn] peer 192.3.3.3 enable
[PE2-bgp-default-evpn] peer 192.3.3.3 advertise encap-type mpls
[PE2-bgp-default-evpn] quit
[PE2-bgp-default] quit
(6) 配置CE 2
<CE2> system-view
[CE2] interface ten-gigabitethernet 3/1/1
[CE2-Ten-GigabitEthernet3/1/1] ip address 100.1.1.2 24
[CE2-Ten-GigabitEthernet3/1/1] quit
# 在PE 1上查看PW信息,可以看到已经建立了EVPN PW。
[PE1] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass,
PBY - pw-bypass
Total number of PWs: 1
1 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.2.2.2 1 710127/710126 EVPN M 0 Up
# 在ASBR 1上查看PW信息,可以看到建立了两条PW连接,构成了多段PW。
[ASBR1] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 2
2 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpn1
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.1.1.1 2 710126/710127 EVPN M 0 Up
26.2.2.3 4 710127/710126 EVPN M 1 Up
# 在ASBR 2上查看PW信息,可以看到建立了两条PW连接,构成了多段PW。
[ASBR2] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 2
2 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
26.2.2.2 3 710126/710127 EVPN M 0 Up
192.4.4.4 6 710127/710127 EVPN M 1 Up
# 在PE 2上也可以看到PW信息。
[PE2] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 1
1 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.3.3.3 5 710127/710127 EVPN M 0 Up
# CE 1与CE 2之间能够ping通。
PE 1和ASBR 1属于AS 100,PE 2和ASBR 2属于AS 200。采用EVPN VPWS跨域Option C的方式,跨越AS域在PE 1和PE 2之间建立连接,实现CE 1和CE 2的二层报文跨越骨干网传递。具体需求如下:
· PE 1与ASBR 1间通过IBGP交换标签IPv4路由;
· PE 2与ASBR 2间通过IBGP交换标签IPv4路由;
· PE 1与PE 2间发布EVPN路由建立EVPN PW;
· ASBR 1和ASBR 2上分别配置路由策略,对从对方接收的路由压入标签;
· ASBR 1与ASBR 2间通过EBGP交换标签IPv4路由。
图1-22 配置跨域-Option C方式组网图
设备 |
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
CE 1 |
XGE3/1/1 |
100.1.1.1/24 |
ASBR 1 |
Loop0 |
192.2.2.2/32 |
PE 1 |
Loop0 |
192.1.1.1/32 |
|
XGE3/1/2 |
23.1.1.2/24 |
|
XGE3/1/2 |
23.1.1.1/24 |
|
XGE3/1/1 |
26.2.2.2/24 |
PE 2 |
Loop0 |
192.4.4.4/32 |
ASBR 2 |
Loop0 |
192.3.3.3/32 |
|
XGE3/1/2 |
22.2.2.1/24 |
|
XGE3/1/1 |
26.2.2.3/24 |
CE 2 |
XGE3/1/1 |
100.1.1.2/24 |
|
XGE3/1/2 |
22.2.2.3/24 |
(1) 配置CE 1
<CE1> system-view
[CE1] interface ten-gigabitethernet 3/1/1
[CE1-Ten-GigabitEthernet3/1/1] ip address 100.1.1.1 24
[CE1-Ten-GigabitEthernet3/1/1] quit
(2) 配置PE 1
# 配置LSR ID。
<PE1> system-view
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 192.1.1.1 32
[PE1-LoopBack0] quit
[PE1] mpls lsr-id 192.1.1.1
# 开启L2VPN功能。
[PE1] l2vpn enable
# 全局使能LDP。
[PE1] mpls ldp
[PE1-ldp] quit
# 配置连接ASBR 1的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[PE1] interface ten-gigabitethernet 3/1/2
[PE1-Ten-GigabitEthernet3/1/2] ip address 23.1.1.1 24
[PE1-Ten-GigabitEthernet3/1/2] mpls enable
[PE1-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE1-Ten-GigabitEthernet3/1/2] quit
# 在PE 1上运行OSPF,用于建立域内LSP。
[PE1] ospf
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 23.1.1.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 192.1.1.1 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[PE1] xconnect-group vpn1
[PE1-xcg-vpna] evpn encapsulation mpls
[PE1-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE1-xcg-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE1-xcg-vpna-evpn-mpls] vpn-target 2:2 import-extcommunity
[PE1-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将接口Ten-GigabitEthernet3/1/1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE1-xcg-vpna] connection pw1
[PE1-xcg-vpna-pw1] evpn local-service-id 2 remote-service-id 1
[PE1-xcg-vpna-pw1-2-1] quit
[PE1-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[PE1-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[PE1-xcg-vpna-pw1] quit
[PE1-xcg-vpna] quit
# 在PE 1和ASBR 1之间建立IBGP连接,并配置在二者之间通过BGP发布EVPN路由信息和带标签的单播路由信息。
[PE1] bgp 100
[PE1-bgp-default] peer 192.2.2.2 as-number 100
[PE1-bgp-default] peer 192.2.2.2 connect-interface LoopBack0
[PE1-bgp-default] address-family l2vpn evpn
[PE1-bgp-default-evpn] peer 192.2.2.2 enable
[PE1-bgp-default-evpn] peer 192.2.2.2 advertise encap-type mpls
[PE1-bgp-default] address-family ipv4 unicast
[PE1-bgp-default-ipv4] peer 192.2.2.2 enable
[PE1-bgp-default-ipv4] peer 192.2.2.2 label-route-capability
[PE1-bgp-default-ipv4] quit
[PE1-bgp-default] quit
# 在PE 1和PE 2之间发布EVPN路由信息建立EVPN PW。
[PE1] bgp 100
[PE1-bgp-default] peer 192.4.4.4 as-number 200
[PE1-bgp-default] peer 192.4.4.4 connect-interface LoopBack0
[PE1-bgp-default] peer 192.4.4.4 ebgp-max-hop 10
[PE1-bgp-default] address-family l2vpn evpn
[PE1-bgp-default-evpn] peer 192.4.4.4 enable
[PE1-bgp-default-evpn] peer 192.4.4.4 advertise encap-type mpls
[PE1-bgp-default-evpn] quit
[PE1-bgp-default] quit
(3) 配置ASBR 1
# 配置LSR ID。
<ASBR1> system-view
[ASBR1] interface loopback 0
[ASBR1-LoopBack0] ip address 192.2.2.2 32
[ASBR1-LoopBack0] quit
[ASBR1] mpls lsr-id 192.2.2.2
# 开启L2VPN功能。
[ASBR1] l2vpn enable
# 全局使能LDP。
[ASBR1] mpls ldp
[ASBR1-ldp] quit
# 配置连接PE 1的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[ASBR1] interface ten-gigabitethernet 3/1/2
[ASBR1-Ten-GigabitEthernet3/1/2] ip address 23.1.1.2 24
[ASBR1-Ten-GigabitEthernet3/1/2] mpls enable
[ASBR1-Ten-GigabitEthernet3/1/2] mpls ldp enable
[ASBR1-Ten-GigabitEthernet3/1/2] quit
# 配置连接ASBR 2的接口Ten-GigabitEthernet3/1/1,在此接口上使能MPLS。
[ASBR1] interface ten-gigabitethernet 3/1/1
[ASBR1-Ten-GigabitEthernet3/1/1] ip address 26.2.2.2 24
[ASBR1-Ten-GigabitEthernet3/1/1] mpls enable
[ASBR1-Ten-GigabitEthernet3/1/1] quit
# 在ASBR 1上运行OSPF,用于建立域内LSP。
[ASBR1] ospf
[ASBR1-ospf-1] area 0
[ASBR1-ospf-1-area-0.0.0.0] network 23.1.1.0 0.0.0.255
[ASBR1-ospf-1-area-0.0.0.0] network 192.2.2.2 0.0.0.0
[ASBR1-ospf-1-area-0.0.0.0] quit
[ASBR1-ospf-1] quit
# 创建路由策略。
[ASBR1] route-policy policy1 permit node 1
[ASBR1-route-policy-policy1-1] apply mpls-label
[ASBR1-route-policy-policy1-1] quit
[ASBR1] route-policy policy2 permit node 1
[ASBR1-route-policy-policy2-1] if-match mpls-label
[ASBR1-route-policy-policy2-1] apply mpls-label
[ASBR1-route-policy-policy2-1] quit
# 在ASBR 1上运行BGP,对向IBGP对等体192.1.1.1发布的路由应用已配置的路由策略policy2。
[ASBR1] bgp 100
[ASBR1-bgp-default] peer 192.1.1.1 as-number 100
[ASBR1-bgp-default] peer 192.1.1.1 connect-interface LoopBack0
[ASBR1-bgp-default] address-family ipv4 unicast
[ASBR1-bgp-default-ipv4] peer 192.1.1.1 enable
[ASBR1-bgp-default-ipv4] peer 192.1.1.1 route-policy policy2 export
# 向IBGP对等体192.1.1.1发布标签路由及从192.1.1.1接收标签路由的能力。
[ASBR1-bgp-default-ipv4] peer 192.1.1.1 label-route-capability
# 引入OSPF进程1的路由。
[ASBR1-bgp-default-ipv4] import-route ospf 1
[ASBR1-bgp-default-ipv4] quit
# 配置向IBGP对等体192.1.1.1发布EVPN路由信息。
[ASBR1-bgp-default] address-family l2vpn evpn
[ASBR1-bgp-default-evpn] peer 192.1.1.1 enable
[ASBR1-bgp-default-evpn] peer 192.1.1.1 advertise encap-type mpls
[ASBR1-bgp-default-evpn] quit
# 对向EBGP对等体26.2.2.3发布的路由应用已配置的路由策略policy1。
[ASBR1-bgp-default] peer 26.2.2.3 as-number 200
[ASBR1-bgp-default] address-family ipv4 unicast
[ASBR1-bgp-default-ipv4] peer 26.2.2.3 enable
[ASBR1-bgp-default-ipv4] peer 26.2.2.3 route-policy policy1 export
# 配置向EBGP对等体26.2.2.3发布标签路由及从26.2.2.3接收标签路由的能力。
[ASBR1-bgp-default-ipv4] peer 26.2.2.3 label-route-capability
[ASBR1-bgp-default-ipv4] quit
# 配置向EBGP对等体26.2.2.3发布EVPN路由信息。
[ASBR1-bgp-default] address-family l2vpn evpn
[ASBR1-bgp-default-evpn] peer 26.2.2.3 enable
[ASBR1-bgp-default-evpn] peer 26.2.2.3 advertise encap-type mpls
[ASBR1-bgp-default-evpn] quit
[ASBR1-bgp-default] quit
(4) 配置ASBR 2
# 配置LSR ID。
<ASBR2> system-view
[ASBR2] interface loopback 0
[ASBR2-LoopBack0] ip address 192.3.3.3 32
[ASBR2-LoopBack0] quit
[ASBR2] mpls lsr-id 192.3.3.3
# 开启L2VPN功能。
[ASBR2] l2vpn enable
# 全局使能LDP。
[ASBR2] mpls ldp
[ASBR2-ldp] quit
# 配置连接PE 2的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[ASBR2] interface ten-gigabitethernet 3/1/2
[ASBR2-Ten-GigabitEthernet3/1/2] ip address 22.2.2.3 24
[ASBR2-Ten-GigabitEthernet3/1/2] mpls enable
[ASBR2-Ten-GigabitEthernet3/1/2] mpls ldp enable
[ASBR2-Ten-GigabitEthernet3/1/2] quit
# 配置连接ASBR 1的接口Ten-GigabitEthernet3/1/1,在此接口上使能MPLS。
[ASBR2] interface ten-gigabitethernet 3/1/1
[ASBR2-Ten-GigabitEthernet3/1/1] ip address 26.2.2.3 24
[ASBR2-Ten-GigabitEthernet3/1/1] mpls enable
[ASBR2-Ten-GigabitEthernet3/1/1] quit
# 在ASBR 2上运行OSPF,用于建立域内LSP。
[ASBR2] ospf
[ASBR2-ospf-1] area 0
[ASBR2-ospf-1-area-0.0.0.0] network 22.2.2.0 0.0.0.255
[ASBR2-ospf-1-area-0.0.0.0] network 192.3.3.3 0.0.0.0
[ASBR2-ospf-1-area-0.0.0.0] quit
[ASBR2-ospf-1] quit
# 创建路由策略。
[ASBR2] route-policy policy1 permit node 1
[ASBR2-route-policy-policy1-1] apply mpls-label
[ASBR2-route-policy-policy1-1] quit
[ASBR2] route-policy policy2 permit node 1
[ASBR2-route-policy-policy2-1] if-match mpls-label
[ASBR2-route-policy-policy2-1] apply mpls-label
[ASBR2-route-policy-policy2-1] quit
# 在ASBR 2上运行BGP,对向IBGP对等体192.4.4.4发布的路由应用已配置的路由策略policy2。
[ASBR2] bgp 200
[ASBR2-bgp-default] peer 192.4.4.4 as-number 200
[ASBR2-bgp-default] peer 192.4.4.4 connect-interface LoopBack0
[ASBR2-bgp-default] address-family ipv4 unicast
[ASBR2-bgp-default-ipv4] peer 192.4.4.4 enable
[ASBR2-bgp-default-ipv4] peer 192.4.4.4 route-policy policy2 export
# 向IBGP对等体192.1.1.1发布标签路由及从192.4.4.4接收标签路由的能力。
[ASBR2-bgp-default-ipv4] peer 192.4.4.4 label-route-capability
# 引入OSPF进程1的路由。
[ASBR2-bgp-default-ipv4] import-route ospf 1
[ASBR2-bgp-default-ipv4] quit
# 配置向IBGP对等体192.4.4.4发布EVPN路由信息。
[ASBR2-bgp-default] address-family l2vpn evpn
[ASBR2-bgp-default-evpn] peer 192.4.4.4 enable
[ASBR2-bgp-default-evpn] peer 192.4.4.4 advertise encap-type mpls
[ASBR2-bgp-default-evpn] quit
# 对向EBGP对等体26.2.2.2发布的路由应用已配置的路由策略policy1。
[ASBR2-bgp-default] peer 26.2.2.2 as-number 100
[ASBR2-bgp-default] address-family ipv4 unicast
[ASBR2-bgp-default-ipv4] peer 26.2.2.2 enable
[ASBR2-bgp-default-ipv4] peer 26.2.2.2 route-policy policy1 export
# 配置向EBGP对等体26.2.2.2发布标签路由及从26.2.2.2接收标签路由的能力。
[ASBR2-bgp-default-ipv4] peer 26.2.2.2 label-route-capability
[ASBR2-bgp-default-ipv4] quit
# 配置向EBGP对等体26.2.2.2发布EVPN路由信息。
[ASBR2-bgp-default] address-family l2vpn evpn
[ASBR2-bgp-default-evpn] peer 26.2.2.2 enable
[ASBR2-bgp-default-evpn] peer 26.2.2.2 advertise encap-type mpls
[ASBR2-bgp-default-evpn] quit
[ASBR2-bgp-default] quit
(5) 配置PE 2
# 配置LSR ID。
<PE2> system-view
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 192.4.4.4 32
[PE2-LoopBack0] quit
[PE2] mpls lsr-id 192.4.4.4
# 开启L2VPN功能。
[PE2] l2vpn enable
# 全局使能LDP。
[PE2] mpls ldp
[PE2-ldp] quit
# 配置连接ASBR 2的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[PE2] interface ten-gigabitethernet 3/1/2
[PE2-Ten-GigabitEthernet3/1/2] ip address 22.2.2.1 24
[PE2-Ten-GigabitEthernet3/1/2] mpls enable
[PE2-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE2-Ten-GigabitEthernet3/1/2] quit
# 在PE 2上运行OSPF,用于建立域内LSP。
[PE2] ospf
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 192.4.4.4 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] network 22.2.2.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[PE2] xconnect-group vpn1
[PE2-xcg-vpna] evpn encapsulation mpls
[PE2-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE2-xcg-vpna-evpn-mpls] vpn-target 2:2 export-extcommunity
[PE2-xcg-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[PE2-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将接口Ten-GigabitEthernet3/1/1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE2-xcg-vpna] connection pw1
[PE2-xcg-vpna-pw1] evpn local-service-id 1 remote-service-id 2
[PE2-xcg-vpna-pw1-1-2] quit
[PE2-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[PE2-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[PE2-xcg-vpna-pw1] quit
[PE2-xcg-vpna] quit
# 在PE 2和ASBR 2之间建立IBGP连接,并配置在二者之间通过BGP发布EVPN路由信息和带标签的单播路由信息。
[PE2] bgp 200
[PE2-bgp-default] peer 192.3.3.3 as-number 200
[PE2-bgp-default] peer 192.3.3.3 connect-interface LoopBack0
[PE2-bgp-default] address-family l2vpn evpn
[PE2-bgp-default-evpn] peer 192.3.3.3 enable
[PE2-bgp-default-evpn] peer 192.3.3.3 advertise encap-type mpls
[PE2-bgp-default-evpn] quit
[PE2-bgp-default] address-family ipv4 unicast
[PE2-bgp-default-ipv4] peer 192.3.3.3 enable
[PE2-bgp-default-ipv4] peer 192.3.3.3 label-route-capability
[PE2-bgp-default-ipv4] quit
[PE1-bgp-default] quit
# 在PE 1和PE 2之间发布EVPN路由信息建立EVPN PW。
[PE2] bgp 200
[PE2-bgp-default] peer 192.1.1.1 as-number 100
[PE2-bgp-default] peer 192.1.1.1 connect-interface LoopBack0
[PE2-bgp-default] peer 192.1.1.1 ebgp-max-hop 10
[PE2-bgp-default] address-family l2vpn evpn
[PE2-bgp-default-evpn] peer 192.1.1.1 enable
[PE2-bgp-default-evpn] peer 192.1.1.1 advertise encap-type mpls
[PE2-bgp-default-evpn] quit
[PE2-bgp-default] quit
(6) 配置CE 2
<CE2> system-view
[CE2] interface ten-gigabitethernet 3/1/1
[CE2-Ten-GigabitEthernet3/1/1] ip address 100.1.1.2 24
[CE2-Ten-GigabitEthernet3/1/1] quit
# 在PE 1上查看PW信息,可以看到已经建立了EVPN PW。
[PE1] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass,
PBY - pw-bypass
Total number of PWs: 1
1 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.4.4.4 1 710127/710126 EVPN M 0 Up
# 在PE 2上也可以看到PW信息。
[PE2] display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 1
1 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
192.1.1.1 2 710126/710127 EVPN M 0 Up
# CE 1与CE 2之间能够ping通。
如图1-23所示,PE 1、PE 2和PE 3为服务提供商边缘设备,均属于AS 100。RR 1和RR 2在PE间反射BGP路由。PE 1、PE 2和PE 3上均运行EVPN VPWS功能,PE 1和PE 2上运行Bypass PW和主备PW功能,提升网络可靠性。CE 1和CE 2通过骨干网实现二层互通。具体需求如下:
· CE 1双归属接入PE 1和PE 2,在PE 1和PE 2之间通过S-Trunk跨设备形成链路聚合,以提高可靠性;
· PE 1与PE 2之间建立Bypass PW,并通过LDP建立承载该PW的公网隧道;
· RR 1和RR 2向PE 1和PE 2反射路由时修改下一跳属性并重新分配MPLS标签;
· RR 1和RR 2配置路由策略修改路由属性用于选路;
· PE 1、PE 2分别通过RR 1和RR 2两条路径与PE 3建立一主一备两条EVPN PW;
· AS内部使用OSPF作为IGP。
图1-23 EVPN VPWS的FRR功能
设备 |
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
PE 1 |
Loop0 |
1.1.1.1/32 |
PE 3 |
Loop0 |
3.3.3.3/32 |
|
XGE3/1/1 |
- |
|
XGE3/1/1 |
- |
|
XGE3/1/2 |
10.1.1.1/24 |
|
XGE3/1/2 |
10.1.6.3/24 |
|
XGE3/1/3 |
10.1.2.1/24 |
|
XGE3/1/3 |
10.1.7.3/24 |
|
XGE3/1/4 |
10.1.3.1/24 |
RR 1 |
Loop0 |
4.4.4.4/32 |
PE 2 |
Loop0 |
2.2.2.2/32 |
|
XGE3/1/1 |
10.1.1.4/24 |
|
XGE3/1/1 |
- |
|
XGE3/1/2 |
10.1.6.4/24 |
|
XGE3/1/2 |
10.1.4.2/24 |
|
XGE3/1/4 |
10.1.5.4/24 |
|
XGE3/1/3 |
10.1.2.2/24 |
RR 2 |
Loop0 |
5.5.5.5/32 |
|
XGE3/1/4 |
10.1.5.2/24 |
|
XGE3/1/1 |
10.1.4.5/24 |
CE 1 |
RAGG1 |
100.1.1.1/24 |
|
XGE3/1/2 |
10.1.7.5/24 |
CE 2 |
XGE3/1/1 |
100.1.1.2/24 |
|
XGE3/1/4 |
10.1.3.5/24 |
(1) 配置CE 1
# 创建三层聚合接口1,采用动态聚合模式,并为其配置IP地址和子网掩码。
<CE1> system-view
[CE1] interface route-aggregation 1
[CE1-Route-Aggregation1] link-aggregation mode dynamic
[CE1-Route-Aggregation1] ip address 100.1.1.1 24
[CE1-Route-Aggregation1] quit
# 将接口Ten-GigabitEthernet3/1/1至Ten-GigabitEthernet3/1/2加入到聚合组1中。
[CE1] interface ten-gigabitethernet 3/1/1
[CE1-Ten-GigabitEthernet3/1/1] port link-aggregation group 1
[CE1-Ten-GigabitEthernet3/1/1] quit
[CE1] interface ten-gigabitethernet 3/1/2
[CE1-Ten-GigabitEthernet3/1/2] port link-aggregation group 1
[CE1-Ten-GigabitEthernet3/1/2] quit
(2) 配置PE 1
# 配置LSR ID。
<PE1> system-view
[PE1] interface loopback 0
[PE1-LoopBack0] ip address 1.1.1.1 32
[PE1-LoopBack0] quit
[PE1] mpls lsr-id 1.1.1.1
# 开启L2VPN功能。
[PE1] l2vpn enable
# 全局使能LDP。
[PE1] mpls ldp
[PE1-ldp] quit
# 全局开启EVPN VPWS的Bypass PW功能。
[PE1] evpn multihoming vpws-frr local
# 配置连接RR 1的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[PE1] interface ten-gigabitethernet 3/1/2
[PE1-Ten-GigabitEthernet3/1/2] ip address 10.1.1.1 24
[PE1-Ten-GigabitEthernet3/1/2] mpls enable
[PE1-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE1-Ten-GigabitEthernet3/1/2] quit
# 配置连接PE 2的接口Ten-GigabitEthernet3/1/3,在此接口上使能LDP,用于创建Bypass PW。
[PE1] interface ten-gigabitethernet 3/1/3
[PE1-Ten-GigabitEthernet3/1/3] ip address 10.1.2.1 24
[PE1-Ten-GigabitEthernet3/1/3] mpls enable
[PE1-Ten-GigabitEthernet3/1/3] mpls ldp enable
[PE1-Ten-GigabitEthernet3/1/3] quit
# 配置连接RR 2的接口Ten-GigabitEthernet3/1/4,在此接口上使能LDP。
[PE1] interface ten-gigabitethernet 3/1/4
[PE1-Ten-GigabitEthernet3/1/4] ip address 10.1.3.1 24
[PE1-Ten-GigabitEthernet3/1/4] mpls enable
[PE1-Ten-GigabitEthernet3/1/4] mpls ldp enable
[PE1-Ten-GigabitEthernet3/1/4] quit
# 在PE 1上运行OSPF,以确保各台设备间的路由可达。
[PE1] ospf
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 10.1.2.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 10.1.3.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 1.1.1.1 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] quit
# 配置PE 1与RR 1、RR 2建立IBGP连接,并配置通过BGP发布EVPN路由信息。
[PE1] bgp 100
[PE1-bgp-default] peer 4.4.4.4 as-number 100
[PE1-bgp-default] peer 4.4.4.4 connect-interface loopback 0
[PE1-bgp-default] peer 5.5.5.5 as-number 100
[PE1-bgp-default] peer 5.5.5.5 connect-interface loopback 0
[PE1-bgp-default] address-family l2vpn evpn
[PE1-bgp-default-evpn] peer 4.4.4.4 enable
[PE1-bgp-default-evpn] peer 5.5.5.5 enable
[PE1-bgp-default-evpn] peer 4.4.4.4 advertise encap-type mpls
[PE1-bgp-default-evpn] peer 5.5.5.5 advertise encap-type mpls
[PE1-bgp-default-evpn] quit
[PE1-bgp-default] quit
# 配置S-Trunk,在PE 1和PE 2之间跨设备建立链路聚合。
[PE1] lacp system-priority 10
[PE1] lacp system-mac 1-1-1
[PE1] lacp system-number 1
[PE1] s-trunk id 1
[PE1-s-trunk1] s-trunk ip destination 10.1.2.2 source 10.1.2.1
[PE1-s-trunk1] quit
[PE1] interface route-aggregation 1
[PE1-Route-Aggregation1] link-aggregation mode dynamic
[PE1-Route-Aggregation1] s-trunk 1
[PE1-Route-Aggregation1] s-trunk port-role primary
[PE1-Route-Aggregation1] quit
[PE1] interface ten-gigabitethernet 3/1/1
[PE1-Ten-GigabitEthernet3/1/1] port link-aggregation group 1
[PE1-Ten-GigabitEthernet3/1/1] quit
# 在接入站点的接口Route-Aggregation1下配置ESI值和接口的冗余备份模式。
[PE1] interface route-aggregation 1
[PE1-Route-Aggregation1] esi 1.1.1.1.1
[PE1-Route-Aggregation1] evpn redundancy-mode all-active
[PE1-Route-Aggregation1] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[PE1] xconnect-group vpna
[PE1-xcg-vpna] evpn encapsulation mpls
[PE1-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE1-xcg-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE1-xcg-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[PE1-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将接口Route-Aggregation1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE1] xconnect-group vpna
[PE1-xcg-vpna] connection pw1
[PE1-xcg-vpna-pw1] ac interface route-aggregation 1
[PE1-xcg-vpna-pw1-Route-Aggregation1] quit
[PE1-xcg-vpna-pw1] evpn local-service-id 1 remote-service-id 2
[PE1-xcg-vpna-pw1-1-2] quit
[PE1-xcg-vpna-pw1] quit
[PE1-xcg-vpna] quit
# 全局开启EVPN VPWS的主备PW功能,用于PE 1与PE 3间建立主备两条PW。
[PE1] evpn vpws-frr remote
(3) 配置PE 2
# 配置LSR ID。
<PE2> system-view
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 2.2.2.2 32
[PE2-LoopBack0] quit
[PE2] mpls lsr-id 2.2.2.2
# 开启L2VPN功能。
[PE2] l2vpn enable
# 全局使能LDP。
[PE2] mpls ldp
[PE2-ldp] quit
# 全局开启EVPN VPWS的Bypass PW功能。
[PE1] evpn multihoming vpws-frr local
# 配置连接RR 2的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[PE2] interface ten-gigabitethernet 3/1/2
[PE2-Ten-GigabitEthernet3/1/2] ip address 10.1.4.2 24
[PE2-Ten-GigabitEthernet3/1/2] mpls enable
[PE2-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE2-Ten-GigabitEthernet3/1/2] quit
# 配置连接PE 1的接口Ten-GigabitEthernet3/1/3,在此接口上使能LDP,用于创建Bypass PW。
[PE2] interface ten-gigabitethernet 3/1/3
[PE2-Ten-GigabitEthernet3/1/3] ip address 10.1.2.2 24
[PE2-Ten-GigabitEthernet3/1/3] mpls enable
[PE2-Ten-GigabitEthernet3/1/3] mpls ldp enable
[PE2-Ten-GigabitEthernet3/1/3] quit
# 配置连接RR 1的接口Ten-GigabitEthernet3/1/4,在此接口上使能LDP。
[PE2] interface ten-gigabitethernet 3/1/4
[PE2-Ten-GigabitEthernet3/1/4] ip address 10.1.5.2 24
[PE2-Ten-GigabitEthernet3/1/4] mpls enable
[PE2-Ten-GigabitEthernet3/1/4] mpls ldp enable
[PE2-Ten-GigabitEthernet3/1/4] quit
# 在PE 2上运行OSPF,以确保各台设备之间路由可达。
[PE2] ospf
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 10.1.2.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] network 10.1.4.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] network 10.1.5.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] network 2.2.2.2 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] quit
# 配置PE 2与RR 1、RR 2建立IBGP连接,并配置通过BGP发布EVPN路由信息。
[PE2] bgp 100
[PE2-bgp-default] peer 4.4.4.4 as-number 100
[PE2-bgp-default] peer 4.4.4.4 connect-interface loopback 0
[PE2-bgp-default] peer 5.5.5.5 as-number 100
[PE2-bgp-default] peer 5.5.5.5 connect-interface loopback 0
[PE2-bgp-default] address-family l2vpn evpn
[PE2-bgp-default-evpn] peer 4.4.4.4 enable
[PE2-bgp-default-evpn] peer 5.5.5.5 enable
[PE2-bgp-default-evpn] peer 4.4.4.4 advertise encap-type mpls
[PE2-bgp-default-evpn] peer 5.5.5.5 advertise encap-type mpls
[PE2-bgp-default-evpn] quit
[PE2-bgp-default] quit
# 配置S-Trunk,在PE 1和PE 2之间跨设备建立链路聚合。
[PE2] lacp system-priority 10
[PE2] lacp system-mac 1-1-1
[PE2] lacp system-number 2
[PE2] s-trunk id 1
[PE2-s-trunk1] s-trunk ip destination 10.1.2.1 source 10.1.2.2
[PE2-s-trunk1] quit
[PE2] interface route-aggregation 1
[PE2-Route-Aggregation1] link-aggregation mode dynamic
[PE2-Route-Aggregation1] s-trunk 1
[PE2-Route-Aggregation1] s-trunk port-role primary
[PE2-Route-Aggregation1] quit
[PE2] interface ten-gigabitethernet 3/1/1
[PE2-Ten-GigabitEthernet3/1/1] port link-aggregation group 1
[PE2-Ten-GigabitEthernet3/1/1] quit
# 在接入站点的接口Route-Aggregation1下配置ESI值和接口的冗余备份模式。
[PE2] interface route-aggregation 1
[PE2-Route-Aggregation1] esi 1.1.1.1.1
[PE2-Route-Aggregation1] evpn redundancy-mode all-active
[PE2-Route-Aggregation1] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[PE2] xconnect-group vpna
[PE2-xcg-vpna] evpn encapsulation mpls
[PE2-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE2-xcg-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE2-xcg-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[PE2-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将接口Route-Aggregation1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE2] xconnect-group vpna
[PE2-xcg-vpna] connection pw1
[PE2-xcg-vpna-pw1] ac interface route-aggregation 1
[PE2-xcg-vpna-pw1-Route-Aggregation1] quit
[PE2-xcg-vpna-pw1] evpn local-service-id 1 remote-service-id 2
[PE2-xcg-vpna-pw1-1-2] quit
[PE2-xcg-vpna-pw1] quit
[PE2-xcg-vpna] quit
# 全局开启EVPN VPWS的主备PW功能,用于PE 2与PE 3间建立主备两条PW。
[PE2] evpn vpws-frr remote
(4) 配置RR 1
# 配置LSR ID。
<RR1> system-view
[RR1] interface loopback 0
[RR1-LoopBack0] ip address 4.4.4.4 32
[RR1-LoopBack0] quit
[RR1] mpls lsr-id 4.4.4.4
# 开启L2VPN功能。
[RR1] l2vpn enable
# 全局使能LDP。
[RR1] mpls ldp
[RR1-ldp] quit
# 配置连接PE 1的接口Ten-GigabitEthernet3/1/1,在此接口上使能LDP。
[RR1] interface ten-gigabitethernet 3/1/1
[RR1-Ten-GigabitEthernet3/1/1] ip address 10.1.1.4 24
[RR1-Ten-GigabitEthernet3/1/1] mpls enable
[RR1-Ten-GigabitEthernet3/1/1] mpls ldp enable
[RR1-Ten-GigabitEthernet3/1/1] quit
# 配置连接PE 2的接口Ten-GigabitEthernet3/1/4,在此接口上使能LDP。
[RR1] interface ten-gigabitethernet 3/1/4
[RR1-Ten-GigabitEthernet3/1/4] ip address 10.1.5.4 24
[RR1-Ten-GigabitEthernet3/1/4] mpls enable
[RR1-Ten-GigabitEthernet3/1/4] mpls ldp enable
[RR1-Ten-GigabitEthernet3/1/4] quit
# 配置连接PE 3的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[RR1] interface ten-gigabitethernet 3/1/2
[RR1-Ten-GigabitEthernet3/1/2] ip address 10.1.6.4 24
[RR1-Ten-GigabitEthernet3/1/2] mpls enable
[RR1-Ten-GigabitEthernet3/1/2] mpls ldp enable
[RR1-Ten-GigabitEthernet3/1/2] quit
# 在RR 1上运行OSPF,以确保各台设备间的路由可达。
[RR1] ospf
[RR1-ospf-1] area 0
[RR1-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[RR1-ospf-1-area-0.0.0.0] network 10.1.5.0 0.0.0.255
[RR1-ospf-1-area-0.0.0.0] network 10.1.6.0 0.0.0.255
[RR1-ospf-1-area-0.0.0.0] network 4.4.4.4 0.0.0.0
[RR1-ospf-1-area-0.0.0.0] quit
[RR1-ospf-1] quit
# 创建路由策略,修改路由的开销值。
[RR1] route-policy policy1 permit node 10
[RR1-route-policy-policy1-10] if-match route-type bgp-evpn-ad
[RR1-route-policy-policy1-10] apply cost 200
[RR1-route-policy-policy1-10] quit
[RR1] route-policy policy2 permit node 20
[RR1-route-policy-policy2-10] if-match route-type bgp-evpn-ad
[RR1-route-policy-policy2-10] apply cost 500
[RR1-route-policy-policy2-10] quit
# 配置RR 1与PE 1、PE 2、PE 3建立IBGP连接。
[RR1] bgp 100
[RR1-bgp-default] peer 1.1.1.1 as-number 100
[RR1-bgp-default] peer 2.2.2.2 as-number 100
[RR1-bgp-default] peer 3.3.3.3 as-number 100
[RR1-bgp-default] peer 1.1.1.1 connect-interface loopback 0
[RR1-bgp-default] peer 2.2.2.2 connect-interface loopback 0
[RR1-bgp-default] peer 3.3.3.3 connect-interface loopback 0
# 配置BGP发布EVPN路由,并关闭BGP EVPN路由的VPN-Target过滤功能。
[RR1-bgp-default] address-family l2vpn evpn
[RR1-bgp-default-evpn] peer 1.1.1.1 enable
[RR1-bgp-default-evpn] peer 2.2.2.2 enable
[RR1-bgp-default-evpn] peer 3.3.3.3 enable
[RR1-bgp-default-evpn] peer 1.1.1.1 advertise encap-type mpls
[RR1-bgp-default-evpn] peer 2.2.2.2 advertise encap-type mpls
[RR1-bgp-default-evpn] peer 3.3.3.3 advertise encap-type mpls
[RR1-bgp-default-evpn] undo policy vpn-target
# 配置RR 1为路由反射器。
[RR1-bgp-default-evpn] peer 1.1.1.1 reflect-client
[RR1-bgp-default-evpn] peer 2.2.2.2 reflect-client
[RR1-bgp-default-evpn] peer 3.3.3.3 reflect-client
# 配置允许RR 1反射路由时修改路由属性。
[RR1-bgp-default-evpn] reflect change-path-attribute
# 配置RR 1向PE 1和PE 2反射路由时修改下一跳属性。
[RR1-bgp-default-evpn] peer 1.1.1.1 next-hop-local
[RR1-bgp-default-evpn] peer 2.2.2.2 next-hop-local
# 将PE 1和PE 2加入就近反射组中,使RR 1在PE 1和PE 2间反射路由时,不修改下一跳属性。
[RR1-bgp-default-evpn] peer 1.1.1.1 reflect-nearby-group
[RR1-bgp-default-evpn] peer 2.2.2.2 reflect-nearby-group
# 对向IBGP对等体1.1.1.1发布的路由应用路由策略policy1。
[RR1-bgp-default-evpn] peer 1.1.1.1 route-policy policy1 export
# 对向IBGP对等体2.2.2.2发布的路由应用路由策略policy2。
[RR1-bgp-default-evpn] peer 2.2.2.2 route-policy policy2 export
[RR1-bgp-default-evpn] quit
[RR1-bgp-default] quit
(5) 配置RR 2
# 配置LSR ID。
<RR2> system-view
[RR2] interface loopback 0
[RR2-LoopBack0] ip address 5.5.5.5 32
[RR2-LoopBack0] quit
[RR2] mpls lsr-id 5.5.5.5
# 开启L2VPN功能。
[RR2] l2vpn enable
# 全局使能LDP。
[RR2] mpls ldp
[RR2-ldp] quit
# 配置连接PE 1的接口Ten-GigabitEthernet3/1/4,在此接口上使能LDP。
[RR2] interface ten-gigabitethernet 3/1/4
[RR2-Ten-GigabitEthernet3/1/4] ip address 10.1.3.5 24
[RR2-Ten-GigabitEthernet3/1/4] mpls enable
[RR2-Ten-GigabitEthernet3/1/4] mpls ldp enable
[RR2-Ten-GigabitEthernet3/1/4] quit
# 配置连接PE 2的接口Ten-GigabitEthernet3/1/1,在此接口上使能LDP。
[RR2] interface ten-gigabitethernet 3/1/1
[RR2-Ten-GigabitEthernet3/1/1] ip address 10.1.4.5 24
[RR2-Ten-GigabitEthernet3/1/1] mpls enable
[RR2-Ten-GigabitEthernet3/1/1] mpls ldp enable
[RR2-Ten-GigabitEthernet3/1/1] quit
# 配置连接PE 3的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[RR2] interface ten-gigabitethernet 3/1/2
[RR2-Ten-GigabitEthernet3/1/2] ip address 10.1.7.5 24
[RR2-Ten-GigabitEthernet3/1/2] mpls enable
[RR2-Ten-GigabitEthernet3/1/2] mpls ldp enable
[RR2-Ten-GigabitEthernet3/1/2] quit
# 在RR 2上运行OSPF,以确保各台设备间的路由可达。
[RR2] ospf
[RR2-ospf-1] area 0
[RR2-ospf-1-area-0.0.0.0] network 10.1.3.0 0.0.0.255
[RR2-ospf-1-area-0.0.0.0] network 10.1.4.0 0.0.0.255
[RR2-ospf-1-area-0.0.0.0] network 10.1.7.0 0.0.0.255
[RR2-ospf-1-area-0.0.0.0] network 5.5.5.5 0.0.0.0
[RR2-ospf-1-area-0.0.0.0] quit
[RR2-ospf-1] quit
# 创建路由策略,修改路由的开销值。
[RR2] route-policy policy1 permit node 10
[RR2-route-policy-policy1-10] if-match route-type bgp-evpn-ad
[RR2-route-policy-policy1-10] apply cost 200
[RR2-route-policy-policy1-10] quit
[RR2] route-policy policy2 permit node 20
[RR2-route-policy-policy2-10] if-match route-type bgp-evpn-ad
[RR2-route-policy-policy2-10] apply cost 500
[RR2-route-policy-policy2-10] quit
# 配置RR 2与PE 1、PE 2、PE 3建立IBGP连接。
[RR2] bgp 100
[RR2-bgp-default] peer 1.1.1.1 as-number 100
[RR2-bgp-default] peer 2.2.2.2 as-number 100
[RR2-bgp-default] peer 3.3.3.3 as-number 100
[RR2-bgp-default] peer 1.1.1.1 connect-interface loopback 0
[RR2-bgp-default] peer 2.2.2.2 connect-interface loopback 0
[RR2-bgp-default] peer 3.3.3.3 connect-interface loopback 0
# 配置BGP发布EVPN路由,并关闭BGP EVPN路由的VPN-Target过滤功能。
[RR2-bgp-default] address-family l2vpn evpn
[RR2-bgp-default-evpn] peer 1.1.1.1 enable
[RR2-bgp-default-evpn] peer 2.2.2.2 enable
[RR2-bgp-default-evpn] peer 3.3.3.3 enable
[RR2-bgp-default-evpn] peer 1.1.1.1 advertise encap-type mpls
[RR2-bgp-default-evpn] peer 2.2.2.2 advertise encap-type mpls
[RR2-bgp-default-evpn] peer 3.3.3.3 advertise encap-type mpls
[RR2-bgp-default-evpn] undo policy vpn-target
# 配置RR 2为路由反射器。
[RR2-bgp-default-evpn] peer 1.1.1.1 reflect-client
[RR2-bgp-default-evpn] peer 2.2.2.2 reflect-client
[RR2-bgp-default-evpn] peer 3.3.3.3 reflect-client
# 配置允许RR 2反射路由时修改路由属性。
[RR2-bgp-default-evpn] reflect change-path-attribute
# 配置RR 2向PE 1和PE 2反射路由时修改下一跳属性。
[RR2-bgp-default-evpn] peer 1.1.1.1 next-hop-local
[RR2-bgp-default-evpn] peer 2.2.2.2 next-hop-local
# 将PE 1和PE 2加入就近反射组中,使RR 2在PE 1和PE 2间反射路由时,不修改下一跳属性。
[RR2-bgp-default-evpn] peer 1.1.1.1 reflect-nearby-group
[RR2-bgp-default-evpn] peer 2.2.2.2 reflect-nearby-group
# 对向IBGP对等体1.1.1.1发布的路由应用路由策略policy1。
[RR2-bgp-default-evpn] peer 1.1.1.1 route-policy policy1 export
# 对向IBGP对等体2.2.2.2发布的路由应用路由策略policy2。
[RR2-bgp-default-evpn] peer 2.2.2.2 route-policy policy2 export
[RR2-bgp-default-evpn] quit
[RR2-bgp-default] quit
(6) 配置PE 3
# 配置LSR ID。
<PE3> system-view
[PE3] interface loopback 0
[PE3-LoopBack0] ip address 3.3.3.3 32
[PE3-LoopBack0] quit
[PE3] mpls lsr-id 3.3.3.3
# 开启L2VPN功能。
[PE3] l2vpn enable
# 全局使能LDP。
[PE3] mpls ldp
[PE3-ldp] quit
# 全局开启EVPN VPWS的Bypass PW功能。
[PE3] evpn multihoming vpws-frr local
# 配置连接RR 1的接口Ten-GigabitEthernet3/1/2,在此接口上使能LDP。
[PE3] interface ten-gigabitethernet 3/1/2
[PE3-Ten-GigabitEthernet3/1/2] ip address 10.1.6.3 24
[PE3-Ten-GigabitEthernet3/1/2] mpls enable
[PE3-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE3-Ten-GigabitEthernet3/1/2] quit
# 配置连接RR 2的接口Ten-GigabitEthernet3/1/3,在此接口上使能LDP。
[PE3] interface ten-gigabitethernet 3/1/3
[PE3-Ten-GigabitEthernet3/1/3] ip address 10.1.7.3 24
[PE3-Ten-GigabitEthernet3/1/3] mpls enable
[PE3-Ten-GigabitEthernet3/1/3] mpls ldp enable
[PE3-Ten-GigabitEthernet3/1/3] quit
# 在PE 1上运行OSPF,用于建立LSP和BGP邻居。
[PE3] ospf
[PE3-ospf-1] area 0
[PE3-ospf-1-area-0.0.0.0] network 10.1.6.0 0.0.0.255
[PE3-ospf-1-area-0.0.0.0] network 10.1.7.0 0.0.0.255
[PE3-ospf-1-area-0.0.0.0] network 3.3.3.3 0.0.0.0
[PE3-ospf-1-area-0.0.0.0] quit
[PE3-ospf-1] quit
# 配置PE 3与RR 1、RR 2建立IBGP连接,并配置通过BGP发布EVPN路由信息。
[PE3] bgp 100
[PE3-bgp-default] peer 4.4.4.4 as-number 100
[PE3-bgp-default] peer 4.4.4.4 connect-interface loopback 0
[PE3-bgp-default] peer 5.5.5.5 as-number 100
[PE3-bgp-default] peer 5.5.5.5 connect-interface loopback 0
[PE3-bgp-default] address-family l2vpn evpn
[PE3-bgp-default-evpn] peer 4.4.4.4 enable
[PE3-bgp-default-evpn] peer 5.5.5.5 enable
[PE3-bgp-default-evpn] peer 4.4.4.4 advertise encap-type mpls
[PE3-bgp-default-evpn] peer 5.5.5.5 advertise encap-type mpls
[PE3-bgp-default-evpn] quit
[PE3-bgp-default] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,同时配置交叉连接组EVPN实例的RD与RT。
[PE3] xconnect-group vpna
[PE3-xcg-vpna] evpn encapsulation mpls
[PE3-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE3-xcg-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE3-xcg-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[PE3-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,将接口Ten-GigabitEthernet3/1/1与此交叉连接关联,并在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE3] xconnect-group vpna
[PE3-xcg-vpna] connection pw1
[PE3-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[PE3-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[PE3-xcg-vpna-pw1] evpn local-service-id 2 remote-service-id 1
[PE3-xcg-vpna-pw1-2-1] quit
[PE3-xcg-vpna-pw1] quit
[PE3-xcg-vpna] quit
(7) 配置CE 2
<CE2> system-view
[CE2] interface ten-gigabitethernet 3/1/1
[CE2-Vlan-interface10] ip address 100.1.1.2 24
[CE2-Vlan-interface10] quit
(1) 查看PW信息。
# 在PE 1上查看PW信息,可以看到PE 1与PE 3建立了一主一备两条PW,PE 1与PE 2间建立了Bypass PW。
<PE1> display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 3
1 up, 2 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
4.4.4.4 2 1151/1403 EVPN M 0 Up
5.5.5.5 2 1151/1275 EVPN B 0 Blocked
2.2.2.2 1 1151/1151 EVPN ABY 1 Blocked
# 在PE 2上查看PW信息,可以看到PE 2与PE 3建立了一主一备两条PW,PE 1与PE 2间建立了Bypass PW。
<PE2> display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 3
1 up, 2 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
5.5.5.5 2 1152/1404 EVPN M 0 Up
4.4.4.4 2 1152/1276 EVPN B 0 Blocked
1.1.1.1 1 1152/1152 EVPN ABY 1 Blocked
(2) 验证站点间互通。
# CE 1和CE 2之间能够ping通。
PE 1、PE 2和PE 4位于MPLS L2VPN网络,采用LDP信令协议建立LDP PW。PE 1、PE 2和PE 3位于EVPN VPWS网络,通过BGP EVPN路由建立EVPN PW。PE 1和PE 2为MPLS L2VPN网络和EVPN VPWS网络的边缘设备。PE 1和PE 2上配置LDP PW接入EVPN PW功能,实现MPLS L2VPN和EVPN VPWS网络的互通。其中,PE 4与PE 1、PE 4与PE 2之间的两条LDP PW作为UPW,多归属接入PE。
图1-24 LDP PW接入EVPN PW配置组网图
设备 |
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
PE 1 |
Loop0 |
1.1.1.9/32 |
PE 3 |
Loop0 |
3.3.3.9/32 |
|
XGE3/1/1 |
10.1.1.1/24 |
|
XGE3/1/1 |
- |
|
XGE3/1/2 |
30.1.1.1/24 |
|
XGE3/1/2 |
30.1.1.3/24 |
|
XGE3/1/3 |
10.1.3.1/24 |
|
XGE3/1/3 |
10.1.2.3/24 |
PE 2 |
Loop0 |
2.2.2.9/32 |
PE 4 |
Loop0 |
4.4.4.9/32 |
|
XGE3/1/1 |
20.1.1.2/24 |
|
XGE3/1/3 |
- |
|
XGE3/1/2 |
10.1.2.2/24 |
|
XGE3/1/1 |
10.1.1.4/24 |
|
XGE3/1/3 |
10.1.3.2/24 |
|
XGE3/1/2 |
20.1.1.4/24 |
CE 1 |
XGE3/1/1 |
100.1.1.1/32 |
CE 2 |
XGE3/1/1 |
100.1.1.2/32 |
(1) 配置CE 1
# 将接口Ten-GigabitEthernet3/1/1为其配置IP地址和子网掩码。
<CE1> system-view
[CE1] interface ten-gigabitethernet 3/1/1
[CE1-Ten-GigabitEthernet3/1/1] ip address 100.1.1.1 24
[CE1-Ten-GigabitEthernet3/1/1] quit
(2) 配置PE 4
# 配置MPLS基本能力。
<PE4> system-view
[PE4] interface loopback 0
[PE4-LoopBack0] ip address 1.1.1.9 32
[PE4-LoopBack0] quit
[PE4] mpls lsr-id 1.1.1.9
# 全局使能LDP。
[PE4] mpls ldp
[PE4-ldp] quit
# 开启L2VPN功能。
[PE4] l2vpn enable
# 配置连接PE 1的接口Ten-GigabitEthernet3/1/1。
[PE4] interface ten-gigabitethernet 3/1/1
[PE4-Ten-GigabitEthernet3/1/1] ip address 10.1.1.4 24
[PE4-Ten-GigabitEthernet3/1/1] ospf 1 area 0
[PE4-Ten-GigabitEthernet3/1/1] mpls enable
[PE4-Ten-GigabitEthernet3/1/1] mpls ldp enable
[PE4-Ten-GigabitEthernet3/1/1] undo shutdown
[PE4-Ten-GigabitEthernet3/1/1] quit
# 配置连接PE 2的接口Ten-GigabitEthernet3/1/2。
[PE4] interface ten-gigabitethernet 3/1/2
[PE4-Ten-GigabitEthernet3/1/2] ip address 20.1.1.4 24
[PE4-Ten-GigabitEthernet3/1/2] ospf 1 area 0
[PE4-Ten-GigabitEthernet3/1/2] mpls enable
[PE4-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE4-Ten-GigabitEthernet3/1/2] undo shutdown
[PE4-Ten-GigabitEthernet3/1/2] quit
# 创建交叉连接组vpna,在该交叉连接组内创建名称为pw1的交叉连接,将接口Ten-GigabitEthernet3/1/3与此交叉连接关联。在交叉连接内创建LDP PW,以便将AC和PW关联,为该PW配置备份PW,并配置PW冗余保护的双收功能。
[PE4] xconnect-group vpna
[PE4-xcg-vpna] connection pw1
[PE4-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/3
[PE4-xcg-vpna-pw1-Ten-GigabitEthernet3/1/3] quit
[PE4-xcg-vpna-pw1] protection dual-receive
[PE4-xcg-vpna-pw1] peer 1.1.1.9 pw-id 500
[PE4-xcg-vpna-pw1-1.1.1.9-500] backup-peer 2.2.2.9 pw-id 500
[PE4-xcg-vpna-pw1-1.1.1.9-500-backup] quit
[PE4-xcg-vpna-pw1-1.1.1.9-500] quit
[PE4-xcg-vpna-pw1] quit
[PE4-xcg-vpna] quit
(3) 配置PE 1
# 配置Loopback0接口。
<PE1> system-view
[PE1] interface loopback 0
[PE1-LoopBack1] ip address 1.1.1.9 32
[PE1-LoopBack1] quit
# 配置MPLS基本能力。
[PE1] mpls lsr-id 1.1.1.9
# 全局使能LDP。
[PE1] mpls ldp
[PE1-ldp] quit
# 开启L2VPN功能。
[PE1] l2vpn enable
# 在PE 1上运行OSPF,用于建立LSP。
[PE1] ospf
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 30.1.1.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 10.1.3.0 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] network 1.1.1.9 0.0.0.0
[PE1-ospf-1] quit
# 配置连接PE 4的接口Ten-GigabitEthernet3/1/2。
[PE1] interface ten-gigabitethernet 3/1/2
[PE1-Ten-GigabitEthernet3/1/2] ip address 10.1.1.1 24
[PE1-Ten-GigabitEthernet3/1/2] mpls enable
[PE1-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE1-Ten-GigabitEthernet3/1/2] undo shutdown
[PE1-Ten-GigabitEthernet3/1/2] quit
# 配置连接PE 3的接口Ten-GigabitEthernet3/1/2。
[PE1] interface ten-gigabitethernet 3/1/2
[PE1-Ten-GigabitEthernet3/1/2] ip address 30.1.1.1 24
[PE1-Ten-GigabitEthernet3/1/2] mpls enable
[PE1-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE1-Ten-GigabitEthernet3/1/2] undo shutdown
[PE1-Ten-GigabitEthernet3/1/2] quit
# 配置连接PE 2的接口Ten-GigabitEthernet3/1/3。
[PE1] interface ten-gigabitethernet 3/1/3
[PE1-Ten-GigabitEthernet3/1/3] ip address 10.1.3.1 24
[PE1-Ten-GigabitEthernet3/1/3] mpls enable
[PE1-Ten-GigabitEthernet3/1/3] mpls ldp enable
[PE1-Ten-GigabitEthernet3/1/3] undo shutdown
[PE1-Ten-GigabitEthernet3/1/3] quit
# 在PE 1、PE 2和PE 3之间建立IBGP连接,并配置通过BGP EVPN发布路由信息。
[PE1] bgp 100
[PE1-bgp-default] peer 2.2.2.9 as-number 100
[PE1-bgp-default] peer 2.2.2.9 connect-interface loopback 0
[PE1-bgp-default] peer 3.3.3.9 as-number 100
[PE1-bgp-default] peer 3.3.3.9 connect-interface loopback 0
[PE1-bgp-default] address-family l2vpn evpn
[PE1-bgp-default-evpn] peer 2.2.2.9 enable
[PE1-bgp-default-evpn] peer 3.3.3.9 enable
[PE1-bgp-default-evpn] peer 2.2.2.9 advertise encap-type mpls
[PE1-bgp-default-evpn] peer 3.3.3.9 advertise encap-type mpls
[PE1-bgp-default-evpn] quit
[PE1-bgp-default] quit
# 创建PW class,并配置PW的数据封装类型为Ethernet。
[PE1] pw-class aaa
[PE1-pw-class-aaa] pw-type ethernet
[PE1-pw-class-aaa] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,指定EVPN采用MPLS封装,配置交叉连接组EVPN实例的RD与RT。
[PE1] xconnect-group vpna
[PE1-xcg-vpna] evpn encapsulation mpls
[PE1-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE1-xcg-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE1-xcg-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[PE1-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,并在PE 4和PE1之间建立UPW,配置ESI值和接口的冗余备份模式,在交叉连接内创建EVPN PW,以实现UPW和EVPN PW关联。
[PE1-xcg-vpna] connection pw1
[PE1-xcg-vpna-pw1] peer 4.4.4.9 pw-id 500 pw-class aaa
[PE1-xcg-vpna-pw1-4.4.4.9-500] esi 1.1.1.1.1
[PE1-xcg-vpna-pw1-4.4.4.9-500] evpn redundancy-mode all-active
[PE1-xcg-vpna-pw1-4.4.4.9-500] quit
[PE1-xcg-vpna-pw1] evpn local-service-id 1 remote-service-id 2
[PE1-xcg-vpna-pw1-1-2] quit
[PE1-xcg-vpna-pw1] quit
[PE1-xcg-vpna] quit
(4) 配置PE 2
# 配置MPLS基本能力。
<PE2> system-view
[PE2] interface loopback 0
[PE2-LoopBack0] ip address 2.2.2.9 32
[PE2-LoopBack0] quit
[PE2] mpls lsr-id 2.2.2.9
# 全局使能LDP。
[PE2] mpls ldp
[PE2-ldp] quit
# 开启L2VPN功能。
[PE2] l2vpn enable
# 在PE 2上运行OSPF,用于建立LSP。
[PE2] ospf
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 10.1.2.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] network 20.1.1.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] network 10.1.3.0 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] network 2.2.2.9 0.0.0.0
[PE2-ospf-1] quit
# 配置连接PE 1的接口Ten-GigabitEthernet3/1/3。
[PE2] interface ten-gigabitethernet 3/1/3
[PE2-Ten-GigabitEthernet3/1/3] ip address 10.1.3.2 24
[PE2-Ten-GigabitEthernet3/1/3] mpls enable
[PE2-Ten-GigabitEthernet3/1/3] mpls ldp enable
[PE2-Ten-GigabitEthernet3/1/3] undo shutdown
[PE2-Ten-GigabitEthernet3/1/3] quit
# 配置连接PE 3的接口Ten-GigabitEthernet3/1/2。
[PE2] interface ten-gigabitethernet 3/1/2
[PE2-Ten-GigabitEthernet3/1/2] ip address 10.1.2.1 24
[PE2-Ten-GigabitEthernet3/1/2] mpls enable
[PE2-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE2-Ten-GigabitEthernet3/1/2] undo shutdown
[PE2-Ten-GigabitEthernet3/1/2] quit
# 配置连接PE 4的接口Ten-GigabitEthernet3/1/2。
[PE2] interface ten-gigabitethernet 3/1/2
[PE2-Ten-GigabitEthernet3/1/2] ip address 20.1.1.2 24
[PE2-Ten-GigabitEthernet3/1/2] mpls enable
[PE2-Ten-GigabitEthernet3/1/2] mpls ldp enable
[PE2-Ten-GigabitEthernet3/1/2] undo shutdown
[PE2-Ten-GigabitEthernet3/1/2] quit
# 在PE 1、PE 2和PE 3之间建立IBGP连接,并配置通过BGP EVPN发布路由信息。
[PE2] bgp 100
[PE2-bgp-default] peer 1.1.1.9 as-number 100
[PE2-bgp-default] peer 1.1.1.9 connect-interface loopback 0
[PE2-bgp-default] peer 3.3.3.9 as-number 100
[PE2-bgp-default] peer 3.3.3.9 connect-interface loopback 0
[PE2-bgp-default] address-family l2vpn evpn
[PE2-bgp-default-evpn] peer 1.1.1.9 enable
[PE2-bgp-default-evpn] peer 3.3.3.9 enable
[PE2-bgp-default-evpn] peer 1.1.1.9 advertise encap-type mpls
[PE2-bgp-default-evpn] peer 3.3.3.9 advertise encap-type mpls
[PE2-bgp-default-evpn] quit
[PE2-bgp-default] quit
# 创建PW class,并配置PW的数据封装类型为Ethernet。
[PE2] pw-class aaa
[PE2-pw-class-aaa] pw-type ethernet
[PE2-pw-class-aaa] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,指定EVPN采用MPLS封装,配置交叉连接组EVPN实例的RD与RT。
[PE2] xconnect-group vpna
[PE2-xcg-vpna] evpn encapsulation mpls
[PE2-xcg-vpna-evpn-mpls] route-distinguisher 1:1
[PE2-xcg-vpna-evpn-mpls] vpn-target 1:1 export-extcommunity
[PE2-xcg-vpna-evpn-mpls] vpn-target 1:1 import-extcommunity
[PE2-xcg-vpna-evpn-mpls] quit
# 创建交叉连接pw1,并在PE 4和PE1之间建立UPW,配置ESI值和接口的冗余备份模式,在交叉连接内创建EVPN PW,以实现UPW和EVPN PW关联。
[PE2-xcg-vpna] connection pw1
[PE2-xcg-vpna-pw1] peer 4.4.4.9 pw-id 500 pw-class aaa
[PE2-xcg-vpna-pw1-4.4.4.9-500] esi 1.1.1.1.1
[PE2-xcg-vpna-pw1-4.4.4.9-500] evpn redundancy-mode all-active
[PE2-xcg-vpna-pw1-4.4.4.9-500] quit
[PE2-xcg-vpna-pw1] evpn local-service-id 1 remote-service-id 2
[PE2-xcg-vpna-pw1-1-2] quit
[PE2-xcg-vpna-pw1] quit
[PE2-xcg-vpna] quit
(5) 配置PE 3
# 配置MPLS基本能力。
<PE3> system-view
[PE3] interface loopback 0
[PE3-LoopBack0] ip address 3.3.3.9 32
[PE3-LoopBack0] quit
[PE1] mpls lsr-id 3.3.3.9
# 全局使能LDP。
[PE1] mpls ldp
[PE1-ldp] quit
# 开启L2VPN功能。
[PE3] l2vpn enable
# 在PE 3上运行OSPF,用于建立LSP。
[PE3] ospf
[PE3-ospf-1] area 0
[PE3-ospf-1-area-0.0.0.0] network 10.1.2.0 0.0.0.255
[PE3-ospf-1-area-0.0.0.0] network 30.1.1.0 0.0.0.255
[PE3-ospf-1-area-0.0.0.0] network 3.3.3.9 0.0.0.0
[PE3-ospf-1] quit
# 配置连接PE 1的接口Ten-GigabitEthernet3/1/2。
[PE3] interface ten-gigabitethernet 3/1/2
[PE3-Ten-GigabitEthernet3/1/2] ip address 30.1.1.3 24
[PE3-Ten-GigabitEthernet3/1/2] undo shutdown
[PE3-Ten-GigabitEthernet3/1/2] quit
# 配置连接PE 2的接口Ten-GigabitEthernet3/1/3。
[PE3] interface ten-gigabitethernet 3/1/3
[PE3-Ten-GigabitEthernet3/1/3] ip address 10.1.2.3 24
[PE3-Ten-GigabitEthernet3/1/3] undo shutdown
[PE3-Ten-GigabitEthernet3/1/3] quit
# 在PE 1、PE 2和PE 3之间建立IBGP连接,并配置通过BGP EVPN发布路由信息。
[PE3] bgp 100
[PE3-bgp-default] peer 1.1.1.9 as-number 100
[PE3-bgp-default] peer 1.1.1.9 connect-interface loopback 0
[PE3-bgp-default] peer 2.2.2.9 as-number 100
[PE3-bgp-default] peer 2.2.2.9 connect-interface loopback 0
[PE3-bgp-default] address-family l2vpn evpn
[PE3-bgp-default-evpn] peer 1.1.1.9 enable
[PE3-bgp-default-evpn] peer 2.2.2.9 enable
[PE3-bgp-default-evpn] peer 1.1.1.9 advertise encap-type mpls
[PE3-bgp-default-evpn] peer 2.2.2.9 advertise encap-type mpls
[PE3-bgp-default-evpn] quit
[PE3-bgp-default] quit
# 创建交叉连接组vpna和交叉连接组EVPN实例,并指定EVPN采用MPLS封装,配置交叉连接组EVPN实例的RD与RT。
[PE3] xconnect-group vpna
[PE3-xcg-vpna] evpn encapsulation mpls
[PE3-xcg-vpna-evpn-srv6] route-distinguisher 1:1
[PE3-xcg-vpna-evpn-srv6] vpn-target 1:1 export-extcommunity
[PE3-xcg-vpna-evpn-srv6] vpn-target 1:1 import-extcommunity
[PE3-xcg-vpna-evpn-srv6] quit
# 创建交叉连接pw1,将接口Ten-GigabitEthernet3/1/1与此交叉连接关联,在交叉连接内创建EVPN PW,以实现AC和EVPN PW关联。
[PE3-xcg-vpna] connection pw1
[PE3-xcg-vpna-pw1] ac interface ten-gigabitethernet 3/1/1
[PE3-xcg-vpna-pw1-Ten-GigabitEthernet3/1/1] quit
[PE3-xcg-vpna-pw1] evpn local-service-id 2 remote-service-id 1
[PE3-xcg-vpna-pw1] quit
[PE3-xcg-vpna] quit
(6) 配置CE 2
<CE2> system-view
[CE2] interface ten-gigabitethernet 3/1/1
[CE2-Ten-GigabitEthernet3/1/1] ip address 100.1.1.2 24
[CE2-Ten-GigabitEthernet3/1/1] quit
# 在PE 1上查看PW信息,可以看到PE 1与PE 4建立了LDP PW、与PE 3建立了EVPN PW。
<PE1> display l2vpn pw
Flags: M - main, B - backup, E - ecmp, BY - bypass, H - hub link, S - spoke link
N - no split horizon, A - administration, ABY - ac-bypass
PBY - pw-bypass
Total number of PWs: 2
2 up, 0 blocked, 0 down, 0 defect, 0 idle, 0 duplicate
Xconnect-group Name: vpna
Peer PWID/RmtSite/SrvID In/Out Label Proto Flag Link ID State
4.4.4.9 500 1150/1277 LDP M 0 Up
3.3.3.9 2 1149/1151 EVPN M 1 Up
# 在PE 1上查看交叉连接的EVPN信息。
<PE1> display l2vpn xconnect-group verbose
Xconnect-group Name: vpna
Connection Name : pw1
Connection ID : 0
State : Up
MTU : 1500
PW Redundancy Mode : Slave
Diffserv Mode : -
LDP PWs:
Peer PW ID Link ID State Flag
4.4.4.9 500 0 Up Main
Create time: 2020-11-02 11:34:08
Last time status changed: 2020-11-02 11:34:08
Last time PW went down: 2020-11-02 11:34:08
EVPN PWs:
Peer Remote Service ID Link ID State Flag
3.3.3.9 2 1 Up Main
Create time: 2020-11-02 11:48:03
Last time status changed: 2020-11-02 11:48:03
Last time PW went down: 2020-11-02 11:48:03
# 在PE 1上查看本地ES信息,可以看到LDP PW(即UPW)作为ES实现多归属接入。
<PE1> display evpn es local verbose
Xconnect-group name : vpna
Connection name : pw1
ESI : 0001.0001.0001.0001.0001
Redundancy mode : All-active
State : Up
UPW Link ID : 0
Tag ID : 0
DF address : -
# 在PE 2上的显示信息与PE 1类似。(具体显示信息略)
# CE 1与CE 2之间能够ping通。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!