简介
本文档介绍如何对PBB-EVPN多宿主网络中的以太网段标识符、导入RT和源MAC不匹配进行故障排除。
先决条件
要求
读者必须了解EVPN和PBB-EVPN解决方案。
使用的组件
本文档中的信息基于以下软件和硬件版本:
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
规则
有关文档规则的详细信息,请参阅 Cisco 技术提示规则。
问题
在PBB-EVPN中,以太网段标识符(ESI)表示连接到一个或多个PE的“站点”。多宿主PE发现彼此具有与其本地相同的ESI。但有时这些PE上生成的默认ESI不匹配。当PE在不同的软件版本上运行时,会出现此问题。在本例中,PE将自己视为ES的下一跳,并且拓扑是单宿主(SH)。
RP/0/RSP0/CPU0:ASR9001-PE2#show evpn ethernet-segment detail
......
Ethernet Segment Id Interface Nexthops
------------------------ -------------- ----------------------------------------
8000.00c8.4c75.d7ee.0001 BE1 192.0.2.2
......
Topology :
Operational : SH
除了ESI之外,多宿主PE还使用Import RT来过滤彼此的BGP EVPN路由,并将源MAC通告给远程PE作为ES的下一跳。如果PE上的Import RT或Source MAC不完整或不匹配,则MHN无法正常工作。
RP/0/RSP1/CPU0:ASR9010-PE1#show evpn ethernet-segment detail
......
Ethernet Segment Id Interface Nexthops
------------------------ -------------- ----------------------------------------
0080.03c8.4c75.d7ee.8000 BE1 192.0.2.1
......
ES Import RT : 0000.0000.0000 (Incomplete Configuration)
Source MAC : 0000.0000.0000 (Incomplete Configuration)
解决方案
背景
从ASR 9000 6.0版开始,PBB-EVPN ESI格式更改为RFC 7432规范。这意味着ESI自动感应不能在PE 6.X和先前版本的PE之间工作。
下图显示了如何为版本6.X和较早版本生成默认ESI。
第1步:排除ESI故障
运行show evpn ethernet-segment detail以检查默认ESI是否与所有PE匹配。否则,请手动配置ESI。
使用ESI配置时,不同的软件版本有不同的要求。为了满足这些要求,建议更改所有设备上的ESI。
- 在6.X版本中,第一个字节始终为TYPE(00),因此只有其他9个字节是可配置的。
- 在5.X版本中,所有字段均可配置,但“系统ID”字段要求组播和管理位设置为1。
在版本6.X上配置ESI:
evpn
interface Bundle-Ether1
ethernet-segment
identifier type 0 80.03.c8.4c.75.d7.ee.80.00
在版本5.X上配置ESI:
evpn
interface Bundle-Ether1
ethernet-segment
identifier system-priority 80 system-id 03c8.4c75.d7ee port-key 8000
第2步:排除负载均衡模式故障
有2种负载均衡模式,全主动每流(AApF)和单主动每vlan(AApS)。默认模式为AAPpF,并且所有PE上的模式参数必须相同。
在版本6.X上,每个VLAN模式更改为单主用:
evpn
interface Bundle-Ether1
ethernet-segment
load-balancing-mode single-active
在版本5.X上按VLAN模式更改为单主用:
evpn
interface Bundle-Ether1
ethernet-segment
load-balancing-mode per-service
第3步:排除源MAC故障
由于负载均衡模式,不会自动生成PE的源MAC。运行show evpn ethernet-segment detail以检查源MAC,并在源MAC不匹配或显示“不完整”时手动配置它。请注意,每个流模式的所有活动要求源MAC相同,而每个VLAN模式的单活动要求每个PE的源MAC不同。
配置源MAC:
evpn
interface Bundle-Ether1
ethernet-segment
backbone-source-mac 00c8.4c75.d7ee
第4步:排除ES Import RT故障
确保所有PE上的ES导入RT匹配。在5.X版本上,ES导入RT不可配置,并且未列在show evpn ethernet-segment detail的输出中。您可以运行show bgp l2vpn evpn以从本地生成的第4类EVPN路由查找ES导入RT:
RP/0/RSP0/CPU0:ASR9001-PE2#show bgp l2vpn evpn rd 192.0.2.2:0 [4][0080.03c8.4c75.d7ee.8000][192.0.2.2]/128
Thu Jun 8 15:16:00.921 AEST
BGP routing table entry for [4][0080.03c8.4c75.d7ee.8000][192.0.2.2]/128, Route Distinguisher: 192.0.2.2:0
......
Extended community: EVPN ES Import:01c8.4c75.d7ee
在6.X版本上,您可以运行show evpn ethernet-segment detail以检查ES导入RT。如果不匹配,还可以使用bgp route-target进行配置。
evpn
interface Bundle-Ether1
ethernet-segment
bgp route-target 01c8.4c75.d7ee
第5步:检验结果
在步骤1-4之后,运行show evpn ethernet-segment detail。所有多宿主PE必须列为相同ES的下一跳,拓扑必须为“MHN”,模式为“AApF”或“AApS”。
RP/0/RSP1/CPU0:ASR9010-PE1#show evpn ethernet-segment detail
Tue Jun 6 20:21:00.799 UTC
......
Ethernet Segment Id Interface Nexthops
------------------------ -------------- ----------------------------------------
0080.03c8.4c75.d7ee.8000 BE1 192.0.2.1
192.0.2.2
ES to BGP Gates : Ready
ES to L2FIB Gates : Ready
Main port :
Interface name : Bundle-Ether1
Interface MAC : 4055.391a.78e3
IfHandle : 0x0a000220
State : Up
Redundancy : Active
ESI type : 0
Value : 80.03c8.4c75.d7ee.8000
ES Import RT : 01c8.4c75.d7ee (Local)
Source MAC : 00c8.4c75.d7ee (Local)
Topology :
Operational : MHN
Configured : All-active (AApF) (default)
Primary Services : Auto-selection
Secondary Services: Auto-selection
Service Carving Results:
Bridge ports : 3
Elected : 2
Not Elected : 1
MAC Flushing mode : STP-TCN
Peering timer : 3 sec [not running]
Recovery timer : 30 sec [not running]
故障排除命令
- 要检查EVPN状态、ESI、ES导入RT和源MAC,请执行以下操作:
- 要检查5.X版上的ES Import RT,请执行以下操作: