【华三】EVPN-VXLAN集中式网关配置
EVPN(Ethernet Virtual PrivateNetwork)是一种基于Overlay技术的二层网络互联技术。实现在现有网络基础上构建虚拟二层网络,使不同站点间的以太网业务互联。其核心价值在于解决传统二层网络扩展性差、配置复杂等问题,同时继承 MP-BGP 和 VXLAN/MPLS 的优势,提供更灵活、高效的网络服务。凭借控制与数据平面分离、自动化部署等核心特性,EVPN广泛应用于数据
目录
编辑ESI(Ethernet Segment Identifier):
RT-1(以太自动发现路由,Ethernet Auto - Discovery Route):
RT-2(MAC/IP 发布路由,MAC/IP Advertisement Route):
RT-3(包含性组播以太网标签路由,Inclusive Multicast Ethernet Tag Route,IMET Route):
RT-4(以太网段路由,Ethernet Segment Route):
编辑RT-5(IP 前缀路由,IP Prefix Route):
ES-Import Route Target Extended Community:
MAC Mobility Extended Community:
Default Gateway Extended Community:
Encapsulation Type Extended Community:
VPN Target Extended Community:
VXLAN 隧道及 BUM 广播表建立(基于 RT-3 路由)
RD 与 RT 在 EVPN 控制平面工作机制中的作用体现:
1.RD (Route Distinguisher,路由区分符)的填充与作用:
3.RT(Route Target,路由目标) 的填充、分类与作用:
去程:VM1(10.1.1.1,VNI 100)访问 VM3(IP3,VNI 300):
回程:VM3(IP3,VNI 300)访问 VM1(10.1.1.1,VNI 100):
1.underlay的建立,全网可达(全网启用OSPF功能)
2、激活L2VPN功能,配置VSI,关联VNI,设置EVPN的封装模式为VXLAN模式,RT,RD值为自动取值。
查看 BGP在 L2VPN的 EVPN地址族下的邻居状态及相关信息
EVPN(Ethernet Virtual PrivateNetwork)是一种基于Overlay技术的二层网络互联技术。实现在现有网络基础上构建虚拟二层网络,使不同站点间的以太网业务互联。其核心价值在于解决传统二层网络扩展性差、配置复杂等问题,同时继承 MP-BGP 和 VXLAN/MPLS 的优势,提供更灵活、高效的网络服务。凭借控制与数据平面分离、自动化部署等核心特性,EVPN广泛应用于数据中心、园区接入网络、广域网、运营商网络中。
EVPN 技术起源
EVPN 是为解决传统二层网络扩展性差、配置复杂等问题而生的 Overlay 技术。
传统网络中,二层互联依赖物理链路或静态配置隧道,难以适配数据中心虚拟机动态迁移、多租户隔离等需求;
而 EVPN 通过控制平面集中管理与数据平面灵活转发的分离架构,实现了二层网络的虚拟化与自动化,其核心应用场景覆盖:
数据中心:实现跨机架、跨机房的 VM(虚拟机)迁移与二层互联,支持 VXLAN 封装下的大规模租户隔离。
园区接入网络:简化分支机构与总部的二层互联配置,降低广域网部署难度。
广域网 / 运营商网络:替代传统 VPLS(虚拟专用局域网服务),提供更高效的多归属接入与业务隔离能力。
EVPN的核心架构
EVPN 架构分为控制平面与数据平面两大核心部分

架构图清晰展示了二者的协同关系,具体细节如下:
控制平面:EVPN MP-BGP:
技术标准:
基于 RFC7432 规范,通过扩展 MP-BGP(多协议边界网关协议)实现路由信息传递,定义了专属的 EVPN 地址族(AFI=25,SAFI=70)。
核心功能:
自动发现:
完成 VTEP(VXLAN 隧道端点)、PE(运营商边缘设备)的动态发现,无需人工配置设备间邻居关系。
路由发布:
传递 MAC/IP 地址、隧道信息、以太网段标识等关键路由数据,如 RT-2(MAC/IP 发布路由)、RT-3(IMET 路由)。
隧道建立:
基于 RT-3 路由自动建立 VXLAN 隧道或 PW(伪线),避免传统 VXLAN 手工配置隧道的繁琐操作。
数据平面:多封装技术支持
EVPN 数据平面支持 MPLS、PBB、NVO(VXLAN)、SRv6 四种转发技术,每种技术对应不同应用场景,具体适配关系如下:
EVPN的功能:
简化配置与自动化部署:
通过 MP - BGP 协议,能够自动实现 VTEP(VXLAN 隧道端点)、PE(运营商边缘设备)的发现,VXLAN 隧道、PW(伪线)的自动建立以及 VXLAN 隧道与 VXLAN 的自动关联,无需用户手工进行繁琐配置,极大降低了网络部署的难度。
控制平面与数据平面分离:
控制平面专注于发布路由信息,负责网络拓扑、地址等控制逻辑的传递;数据平面则专门承担报文转发的任务,这种分离使得网络的控制和转发功能各司其职,提升了网络的灵活性与可管理性。
提供多样连接服务:
支持点到点和点到多点的服务,可让用户的二层数据跨越 IP 或者 MPLS 网络,在不同站点之间透明地进行传送,满足了跨站点数据传输的需求。
完善的多归属接入支持:
能支持负载分担和主备备份两种工作模式,在多归属接入场景下,可根据实际需求灵活选择,提高了网络的可靠性与资源利用效率。
灵活管理 MAC/IP 地址:
将二层网络间 MAC/IP 地址的学习和发布从数据平面转移到控制平面,借助 MP - BGP 协议来通告 MAC/IP 的可达性,改变了传统依赖数据平面泛洪学习地址的方式。
维护网络隔离性:
可以有效维护主机或虚拟机彼此之间的隔离性,保障不同用户或业务之间的网络安全与独立性。
缩短故障收敛时间:
当网络出现故障时,能够快速收敛,减少故障对网络正常运行的影响时间,提升网络的稳定性。
统一控制信令协议:
使用 BGP 作为控制协议,统一了二层和三层的控制信令协议,简化了网络控制层面的复杂度。
降低部署难度与资源消耗:
通过部署路由反射器,降低了网络部署的难度;同时,减少了网络资源的消耗,如减轻了 BUM(广播、未知单播、组播)报文泛洪对网络带宽等资源的占用。
优化 VXLAN 应用:
针对传统 VXLAN 可扩展性差、隧道建立和 VXLAN 匹配需手动完成,以及 MAC + IP 地址学习依赖数据平面泛洪、BUM 报文泛洪到整个网络等挑战,EVPN 能够自动完成 VTEP 之间隧道建立及 VXLAN 匹配,还能实现 VTEP 之间 MAC + IP 的自动同步,减少网络中的泛洪报文,极大优化了 VXLAN 的使用效果。
EVPN的相关专业术语
EVI(EVPN Instance):
EVPN 实例,每个实例独立存在,每个 EVI 独立维护路由表与转发规则,实现不同业务或租户的完全隔离,类似 VPN 实例的二层版本。
ES(Ethernet Segment):
CE(用户边缘设备)与 PE 之间的物理或逻辑链路,是多归属场景的核心单元(如 CE 通过两条链路连接两台 PE)。

ESI(Ethernet Segment Identifier):
ES 的唯一 10 字节标识,用于 PE 识别同一 ES 的不同成员,在多归属场景中实现 DF(指定转发器)选举与环路避免。
EVPN 路由:
MP-BGP EVPN 地址族定义的 NLRI(网络层可达性信息),包含 8 种路由类型(RT-1 至 RT-8),每种路由承载特定控制信息。
VTEP(VXLAN Tunnel Endpoint):
VXLAN 数据平面的隧道端点,负责 VXLAN 报文的封装(添加 VXLAN 头、UDP 头、外层IP 头)与解封装,同时参与 EVPN 控制平面路由交互。
EVPN地址族:
MP-BGP扩展出了EVPN地址族,并采用Open消息进行能力通告。EVPN子地址族使用的地址族编号为:AFI=25 ,SAFI=70。
EVPN 地址族通过 MP-BGP 的 Open 消息进行能力通告,关键字段解析如下:
Optional Parameter: Capability:类型为 “Multiprotocol extensions capability(1)”,标识设备支持多协议扩展。
AFI(Address Family Identifier):取值 25,代表 “Layer-2 VPN”,明确地址族类型为二层 VPN。
SAFI(Subsequent Address Family Identifier):取值 70,代表 “EVPN”,指定子地址族为 EVPN。
MP_REACH_NLRI(Type Code 14):用于传递 EVPN 路由信息,包含 Next Hop(下一跳 IP,通常为 VTEP/PE 的环回口 IP)、NLRI(EVPN 路由内容,如 RT-2、RT-3)。
EVPN 常用的的五种路由类型
RT-1(以太自动发现路由,Ethernet Auto - Discovery Route):
控制信息:
包含 RD(Route Distinguisher,路由区分符)、ESI(Ethernet Segment Identifier,以太网段标识符)、Ethernet Tag ID 以及 MPLS Label 等信息。
RD(Route Distinguisher):EVPN 实例的唯一标识,避免不同实例路由冲突,如 “100:1”。
ESI:对应 ES 的唯一标识,用于多归属场景的成员识别。
MPLS Label:VXLAN 场景下为 VNI(VXLAN 网络标识),如 VNI=5010。
用途:
主要用于多归属组网场景,进行以太网段(ES)的自动发现,通告 ES 和 Service ID 信息 ,实现环路避免、快速收敛与负载分担。比如在 CE(用户边缘设备)双归属连接到不同 PE(运营商边缘设备)的场景中,通过 RT - 1 路由可以确保流量的正确转发,避免环路产生。

RT-2(MAC/IP 发布路由,MAC/IP Advertisement Route):
控制信息:
携带 RD、ESI(单归属时为全 0)、Ethernet Tag ID、MAC Address 以及 IP Address(可选)等信息。
用途:
将二层 MAC 地址与三层 IP 地址(ARP/ND 信息)从数据平面学习转移到控制平面,通过 MP-BGP 同步至全网 VTEP/PE,减少传统网络中 BUM 流量泛洪(如 ARP 广播)。
RT-2 的核心作用是传递单台主机的 MAC+IP 映射关系,其路由结构中不包含 VNI;VNI 通过 “EVPN 实例(EVI)-VSI-VXLAN” 的绑定关系间接关联,而非 RT-2 路由本身携带。

RT-3(包含性组播以太网标签路由,Inclusive Multicast Ethernet Tag Route,IMET Route):
控制信息:
包含 RD、Ethernet Tag ID、IP Address Length(32,代表 IPv4)、Originating Router's IP(VTEP/PE 的 IP,如 “10.255.1.1”),同时携带 PMSI_TUNNEL_ATTRIBUTE(隧道类型为 Ingress Replication,隧道 ID 为对端 VTEP IP)。
用途:
实现 VTEP(VXLAN Tunnel Endpoint,VXLAN 隧道端点)/PE 的自动发现,以及 VXLAN 隧道的自动建立。本地 VTEP 发布 RT - 3 路由后,远端 VTEP 根据路由中的信息建立 VXLAN 隧道,同时生成用于 BUM 流量转发的广播表。
RT-3 的核心作用是 “宣告某 VNI 下的 VTEP 存在”,其路由结构中必须携带 VNI(通过 Ethernet Tag ID 关联),远端 VTEP 需通过 RT-3 中的 VNI 识别 “该 VTEP 属于哪个虚拟网络”,才能建立对应 VXLAN 隧道。

RT-4(以太网段路由,Ethernet Segment Route):
控制信息:
包含 RD、ESI、IP Address Length、Originating Router's IP 。
用途:
通告本端PE上的EVPN实例的RD值,ESI值和Source IP地址,通过通告 PE 与 CE 之间的 ES 信息,帮助 PE 发现连接同一 ES 的其他成员,并且参与指定转发器(DF,Designated Forwarder)的选举,在多归属场景中避免流量环路。

RT-5(IP 前缀路由,IP Prefix Route):
控制信息:
包含 RD、ESI(全 0)、Ethernet Tag ID、IP Prefix Length、GW IP Address(默认网关,Gateway IP Address)、VNI 等信息。
用途:
以 IP 前缀形式通告 EVPN 实例与外部网络的路由,实现跨 EVPN 实例或跨网络的三层互通,比如数据中心内网与互联网之间的路由通告。

简单总结:
RT2: 二层表项学习,MAC地址迁移,ARP泛洪抑制。
RT3:VXLAN隧道建立
RT5:三层表项学习
BGP EVPN 扩展团体属性:
ESI Label Extended Community:
携带 ESI 对应的 MPLS 标签,多归属场景中用于标识 ES 的流量转发标签,确保同一 ES 的流量按标签转发至正确 PE。

ES-Import Route Target Extended Community:
类型为 0x06,子类型为 0x02,携带 ES 的 Route Target(如 “01:00:01:00:01:00”),控制 ES 相关路由的接收范围(仅匹配 RT 的 PE 接收该路由)。

MAC Mobility Extended Community:
类型为 0x06,子类型为 0x00,包含 Flags(最后 1 位标识静态 MAC)、Reserved(保留字段)、Sequence Number(MAC 迁移次数),解决 VM 迁移后 MAC 地址漂移的同步问题(迁移次数递增,远端 VTEP 优先选择高次数路由)。

Default Gateway Extended Community:
携带默认网关信息,分布式网关场景中用于告知远端 VTEP 本地网关的 IP 与 MAC,实现跨 VTEP 的网关冗余。

Encapsulation Type Extended Community:
类型为 0x03,子类型为 0x0c,携带隧道封装类型(如 “8” 代表 VXLAN),确保发送端与接收端采用一致的封装方式解封装报文。

VPN Target Extended Community:
类型为 0x04,子类型为 0x02,携带 RT 值(如 “100:20”),控制 EVPN 路由的发布与接收(仅相同 RT 的 EVPN 实例可互通),实现业务隔离。

EVPN的控制平面工作机制

VXLAN 隧道及 BUM 广播表建立(基于 RT-3 路由)
1、VTEP 启动与路由发布:
Leaf 节点(VTEP)启动后,在 EVPN 实例下发布 RT-3 路由,携带自身环回口 IP(如 “10.255.1.1”)、RD(如 “100:1”)、VNI(如 “5010”)及 PMSI 信息(隧道类型为 Ingress Replication)。
2、路由反射与同步:
Spine 节点作为 BGP RR(路由反射器),接收 Leaf 发布的 RT-3 路由,并反射至其他 Leaf 节点(RR Client),避免 Leaf 间全互联邻居配置。
3、隧道建立与广播表生成:
在二层转发时,EVPN VXLAN依靠RT-3自动发现VTEP站点,远端 Leaf 接收 RT-3 路由后,提取对端 VTEP IP,自动建立 VXLAN 隧道(如 Tunnel1);同时根据 PMSI 信息生成 BUM 广播表(记录同一 VNI 下的所有远端 VTEP IP),用于 BUM 流量的头端复制转发。
在分布式网关进行三层转发时,EVPN VXLAN依靠RT-2 或RT-5自动发现VTEP站点、建立VXLAN隧道。
PS:
EVPN中的PMSI应用:
在 EVPN VXLAN 场景中,PMSI(Provider Multicast Service Interface,提供商组播服务接口)它主要用于 BUM(广播、未知单播、组播)流量转发的隧道属性传递,比如在头端复制(Ingress Replication)机制中,借助 PMSI 属性,VTEP 能够获取到传递 BUM 流量所需的隧道信息。VXLAN 同样依赖 PMSI 属性来实现 BUM 流量的高效转发。
在 EVPN VXLAN 场景中:
PMSI 的核心是传递 “BUM 流量应该用什么隧道转发、怎么复制” 的元数据。
例如 “头端复制(Ingress Replication)” 机制中,VTEP 会通过BGP EVPN 的 RT - 3 路由携带 PMSI 属性,告诉其他 VTEP:“如果要给我转发 BUM 流量,应该用什么隧道(如 VXLAN 隧道的源 / 目的 IP)、用什么复制策略(如每个 BUM 包复制几份发给哪些对端)”。
VXLAN 本身不 “直接依赖 PMSI 协议”,而是依赖 “PMSI 描述的隧道属性逻辑”—— 通过 EVPN 控制平面(BGP)传递这些属性,让 VXLAN 数据平面知道如何转发 BUM 流量。
MAC/IP 路由通告与学习(基于 RT-2 路由)
1.VM 上线与本地学习:
VM1(IP:10.1.1.10,MAC:aa:bb:cc:00:40:00)上线,接入 Leaf A(VTEP A),Leaf A 从接入接口(如 GE1/0/1)学习 VM1 的 MAC 与 IP,添加至本地 VSI(EVPN 实例)的 MAC 表(出接口为 GE1/0/1)与 ARP 表。
2.RT-2 路由发布:
Leaf A 将 VM1 的 MAC/IP 信息封装为 RT-2 路由,通过 BGP 发送至 Spine RR,路由中包含 RD(“100:1”)、MAC(“aa:bb:cc:00:40:00”)、IP(“10.1.1.10”)、VNI(“1000”)及出接口对应的隧道信息。
3.路由反射与表项更新:
Spine RR 将 RT-2 路由反射至 Leaf B、Leaf C;Leaf B、C 接收后,提取 MAC/IP 与对端 VTEP IP(Leaf A 的 IP),添加至本地 MAC 表(出接口为 Tunnel1)与路由表(主机路由,下一跳为 Leaf A)。

MAC 地址迁移
1.VM 迁移与路由触发:
VM1 从 Leaf A 迁移至 Leaf C,Leaf C 通过 RARP 报文检测到 VM1 上线,生成新的 RT-2 路由(Sequence Number 从 1 递增至 2),并发送至 Spine RR;同时 Leaf A 检测到 VM1 离线,发送 RT-2 路由撤销消息(携带原 Sequence Number)。
2.远端表项更新:
Spine RR 将 Leaf C 的 RT-2 路由反射至 Leaf A、Leaf B;Leaf A 接收后删除原 VM1 的 MAC/IP 表项,Leaf B 接收后更新 VM1 的下一跳为 Leaf C 的环回口 IP,完成 MAC 地址同步,整个过程无需人工干预。
外部路由通告与学习 (基于EVPN与外部网络路由协同)
1.外部路由引入 EVPN:
Border Leaf 作为 EVPN 网络与外部 WAN 的边界节点,通过静态路由、BGP 或 OSPF 等协议,从 WAN 侧学习到外部路由(如102.10.1.1/24、102.20.2.1/24)。
2.EVPN 控制平面路由发布:
Border Leaf 将外部路由封装为 EVPN 路由(如 RT - 5 IP 前缀路由),通过 MP - BGP 发送给 RR(路由反射器);RR 再将这些路由反射到 EVPN 网络内的其他 VTEP(如 VTEP A、VTEP B)。
3.VTEP 路由表生成:
VTEP A、VTEP B 接收 EVPN 路由后,生成对应的路由表项:VTEP A 的路由表中,外部路由的下一跳指向 Border Leaf 的 IP(如1.1.1.3);VTEP B 的路由表中,外部路由的 “Remote VTEP” 也指向 Border Leaf 的 IP(如1.1.1.3),表示需通过该 VTEP 转发到外部网络。

ARP泛洪抑制(基于 EVPN ARP代答机制):

传统VXLAN ARP泛洪问题:
在无 EVPN 的传统 VXLAN 中,当 VM1 需要解析 VM7 的 MAC 地址时,会发送 ARP 请求。由于 VXLAN 隧道预建立但无精准 MAC 映射,VTEP 1 会将 ARP 请求泛洪到所有 VXLAN 隧道(向 VTEP 2、VTEP 3 都转发 ARP 请求),浪费网络带宽。
ARP代答机制:
1.ARP请求发起:
VM1(IP:10.1.1.10,MAC:aa:bb:cc:00:40:00)需要与 VM7(IP:10.3.3.30)通信,但未学习到 VM7 的 MAC 地址,于是发送 ARP 请求(目标 IP:10.3.3.30,请求其 MAC 地址),该请求被发送到接入的 VTEP1 。
2.EVNP控制平面代答判断:
VTEP1 收到 ARP 请求后,检查本地 EVPN 路由表(由 RT - 2 路由同步而来)。若路由表中存在 VM7 的 IP - MAC 映射(即 VM7 的 MAC 地址及所属 VTEP 等信息已通过控制平面同步),则VTEP1直接执行ARP 代答。
3.ARP代答执行:
VTEP1以自身(或对应网关)的 MAC 地址作为 VM7 的 MAC 地址,向 VM1 回复 ARP 响应,告知 VM1“VM7 的 MAC 地址为VTEP1的某 MAC(或网关 MAC)”
4.后续流量转发:
VM1 收到 ARP 响应后,将发往 VM7 的流量发送到 VTEP1。VTEP1再根据 EVPN 控制平面同步的路由信息,通过 VXLAN 隧道将流量转发到 VM7 所在的 VTEP(如 VTEP C),最终送达 VM7。在此过程中,无需在 VXLAN 网络中泛洪 ARP 请求,极大减少了网络中的 ARP 泛洪流量
RD 与 RT 在 EVPN 控制平面工作机制中的作用体现:
1.RD (Route Distinguisher,路由区分符)的填充与作用:
支持手动配置route-distinguisher,也可选择auto自动生成。自动生成时,RD 取值为N:VXLAN ID,其中N为从 1 开始的整数。若N:VXLAN ID已被使用,则依次尝试(N + 1):VXLAN ID,直到找到未被使用的 RD。例如,当 VXLAN ID 为 601,第一次自动生成 RD 会尝试1:601,若已存在,则尝试2:601等。
这一规则确保了在 EVPN 网络中,每个 EVPN 实例(EVI)都有唯一的 RD 标识,为路由在控制平面的传播提供了基础的唯一性保障。
2.RD 在控制平面的作用:
路由唯一标识:在 EVPN 控制平面中,不同 EVPN 实例可能存在相同的 IP 或 MAC 路由信息,RD 的存在使得这些路由在 MP - BGP 的 EVPN 地址族中具有唯一标识。比如,EVI 100 中有一条10.1.1.10/32的路由,RD 为100:1;EVI 200 中也有10.1.1.10/32的路由,RD 为200:1,MP - BGP 能通过 RD 区分这两条属于不同实例的路由,防止冲突。
路由实例关联:RD 将路由与特定的 EVPN 实例关联起来,使得控制平面在处理路由时,能准确地将路由信息分发到对应的实例中,保障不同租户或业务之间的路由隔离。
3.RT(Route Target,路由目标) 的填充、分类与作用:
①RT的填充规则
RT 值支持手动配置vpn-target { vpn-target&<1 - 8> },也可选择auto自动生成。
自动生成的 RT 取值为BGP AS:VXLAN ID,这种方式简化了配置,同时利用 BGP AS 和 VXLAN ID 的组合保证了 RT 的唯一性。
②RT的分类与配置位置
在 EVPN 的组网中,存在三个地方可以配置 RT:
虚拟服务实例(VSI)视图:
如配置vsi SDN_VSi_601时,可在该视图下配置 RT,用于控制与 VSI 相关的路由(如 MAC 地址路由)的发布与接收。
VPN 视图下 ipv4 地址族中:
在ip vpn-instance vpn1的address-family ipv4视图下配置 RT,主要用于控制 EVPN 五类路由(IP 地址前缀路由)等与 IPv4 网段相关路由的传播。
VPN 视图下 EVPN 地址族中:
在ip vpn-instance vpn1的address-family evpn视图下配置 RT,用于控制 EVPN 二类路由中 MAC/IP 地址(主机路由)等的学习与传播。
③不同 RT 值的使用场景和作用:
VSI 实例视图中 RT 的作用:
使用场景:
在 EVPN 二类路由消息中,MAC 消息仅包含 VSI 实例视图中配置的 RT 值。
作用:
控制 EVPN 二类路由中 MAC 地址的学习,决定哪些设备能够接收和学习到特定 VSI 下的 MAC 地址信息,保障 MAC 地址在 EVPN 网络中的精准传播与隔离。
VPN 实例中 EVPN 协议族中 RT 的作用:
使用场景:
在 EVPN 二类路由消息中,MAC/IP 消息包含 VSI 实例视图中配置的 RT 值和 VPN 实例中 EVPN 协议族中配置的 RT 值。
作用:
控制 EVPN 二类路由中 MAC/IP 地址(主机路由)的学习,确保主机级别的路由信能在合v
VPN 实例中 IPv4 协议族中 RT 的作用:
使用场景:
在 EVPN 五类路由消息中,IP 地址前缀消息包含 VPN 实例中 IPv4 协议族中配置的 RT 值。
作用:
控制 EVPN 五类路由中 IP 前缀(网段路由)的学习,实现不同网段之间的路由互通与隔离,保障网络中网段级别的通信。
4.RT在控制平面的作用:
路由发布控制:当 Leaf A 要发布 EVPN 路由(如 RT - 2 路由)时,会为该路由添加 Export RT。假设 Leaf A 的 Export RT 配置为100:100,这表示只有那些配置了 Import RT 包含100:100的 VTEP 才能接收这条路由。
路由接收控制:Leaf B 若要接收 Leaf A 发布的路由,需要配置 Import RT 为100:100。当 Leaf B 从 MP - BGP 接收到带有100:100 RT 的 EVPN 路由时,会将其引入到本地对应的 EVPN 实例中,实现路由的定向传播,保障不同租户或业务之间的路由隔离。
5.EVPN 集中式网关场景下 RT 的携带及作用:
在 EVPN 集中式网关场景下,L2 VTEP 及 VXLAN IP GW 设备仅需配置 RT1:
1.路由携带:
L2 VTEP 及 VXLAN IP GW 设备发布的 MAC 消息(type 2)携带 RT1,发布 MAC/IP 消息(type 2)也仅携带 RT1。
2.作用:
用于形成基于 VXLAN 的 MAC 地址表、ARP 表、ARP 抑制表项。实现上需要每个 VXLAN 配置不同的 RT 值,相同 VXLAN 的不同设备上配置相同的 RT 值,这样可以确保同一 VXLAN 内的设备能相互学习 MAC/IP 等信息,同时不同 VXLAN 间通过 RT 隔离。建议采用auto自动生成的形式(AS:VNI),简化配置并保证 RT 的唯一性。
6.RD与RT在控制平面路由交互中的协同
在 Spine RR 反射路由时,会保留路由的 RD 和 RT 属性。例如,Leaf A 发布的带有 RD100:1、Export RT100:100(遵循上述填充与分类规则)的 RT - 2 路由,经过 Spine RR 反射后,Leaf B(配置了 Import RT100:100,且 RD 与 Leaf A 发布路由的 RD 逻辑匹配)会接收该路由,并根据 RD 将其关联到本地对应的 EVI 中,从而在控制平面完成路由的精准传递与隔离控制,同时结合不同配置位置 RT 的作用,实现 MAC、MAC/IP、IP 前缀等不同类型路由的按需传播。
EVPN VXLAN 数据平面工作机制
纯二层流量转发:
二层流量包含已知单播流量与 BUM 流量,转发流程差异如下:
已知单播流量转发:
1.VM1(Leaf A)向 VM2(Leaf C)发送报文,Leaf A 根据 VM2 的 MAC 查找本地 MAC 表,确定出接口为 Tunnel1(对端 VTEP IP 为 Leaf C 的环回口 IP)。
2.Leaf A 对报文进行 VXLAN 封装:添加 VXLAN 头(VNI=1000)、UDP 头(端口 4789)、IP 头(源 IP=Leaf A 环回口 IP,目的 IP=Leaf C 环回口 IP)。
3.封装后的报文经 Spine 层(核心设备)转发至 Leaf C,Leaf C 解封装(去除 IP 头、UDP 头、VXLAN 头)后,根据 MAC 表将原始以太网帧转发至 VM2。
BUM 流量转发(头端复制模式):
1.VM1 发送广播报文(如 ARP 请求),Leaf A 识别为 BUM 流量,查找 BUM 广播表(记录同一 VNI=1000 下的 Leaf B、Leaf C 环回口 IP)。
2.Leaf A 复制报文,分别封装为指向 Leaf B、Leaf C 的 VXLAN 报文(外层 IP 头源 IP 为 Leaf A 环回口 IP,目的 IP 分别为 Leaf B、C 环回口 IP),通过对应的隧道转发。
3.Leaf B、Leaf C 解封装后,将广播报文在本地 VNI=1000 内泛洪(仅转发至该 VNI 下的接入接口),确保所有 VM 接收,避免全网泛洪。

集中式网关转发:
集中式网关将三层网关部署在 Spine 节点,适用于中小型网络,二层与三层转发流程如下:
集中式网关二层转发(同 VXLAN):
1.VM1(Leaf A,VXLAN 10)向 VM2(Leaf C,同 VXLAN 10)发送报文,Leaf A 封装 VXLAN(VNI=10)后,转发至 Spine 网关(核心层)。
2.Spine 网关解封装,查找 EVPN 实例的 MAC 表(VM2 的出接口为 Leaf C 的隧道),重新封装 VXLAN(VNI=10)后转发至 Leaf C,Leaf C 解封装后送达 VM2。

集中式网关三层转发(不同 VXLAN):
1.VM1(Leaf A,VXLAN 10,IP:1.1.1.10)向 VM2(Leaf C,VXLAN 20,IP:1.1.2.10)发送报文,Leaf A 封装 VXLAN 10 后转发至 Spine 网关。
2.Spine 网关解封装,根据目的 IP(1.1.2.10)查找三层路由表,匹配到 VM2 所在网段的路由(下一跳为 Leaf C 的环回口 IP,出接口为 VXLAN 20 隧道)。
3.Spine 网关重新封装 VXLAN 20 头(VNI=20),外层 IP 头源 IP 为 Spine 网关环回口 IP,目的 IP 为 Leaf C 环回口 IP,转发至 Leaf C;Leaf C 解封装后送达 VM2。

分布式网关转发:
在EVPN网络中,VTEP既可以做二层Bridge,也可以做三层Router,因此称为集成桥接和路由,即IRB(Integrated Routingand Bridging)。在分布式网关里面,IRB转发可以分为对称IRB和非对称IRB两种。
分布式网关对称IRB转发:
在 Ingress 入口网关和 Egress 出口网关,都只执行 Layer - 3 路由功能,功能对称。每台分布式网关只需配置其下主机所在 VNI 的 VSI 信息和所在 VRF 的 L3 VNI 信息,无需维护本租户内所有主机的 ARP,仅需维护少量其他分布式网关对应的 MAC。

相关核心概念术语:
对称IRB转发引入了以下2个概念:
L3VNI(Layer 3 VNI):
用于标识租户 VRF(虚拟路由转发实例)的 VXLAN ID,同一租户的不同 L2 VNI(二层 VXLAN)共享一个 L3VNI,如租户 A 的 L2 VNI=10、20,共享 L3VNI=1000,通过 L3VNI 实现租户内跨 L2 VNI 的三层互通。在分布式网关之间通过VXLAN隧道转发流量时,属于同一租户(VRF)的流量通过L3VNI来标识。L3VNI唯一关联一个VPN实例,通过VPN实例确保不同租户之间的业务隔离。

Route MAC:
网关的Route MAC地址,是指每个分布式网关拥有的唯一一个用来标识本机的本地MAC地址,封装在三层转发报文的内层 MAC 字段,用于远端网关识别转发目标,避免 MAC 地址冲突,此MAC用于在网关之间通过VXLAN隧道转发三层流量。报文在跨网关三层转发时,报文
的内层目的MAC地址为出口网关的Route MAC地址。

对称 IRB 转发流程:
- 流量发起与入口网关处理(Leaf1/VTEP A):VM1 发送报文,目的 IP 为 IP3。Leaf1(VTEP A)作为入口网关,接收报文后,首先通过二层桥接识别报文所属 VNI(VNI 100),然后在三层路由表中查找 IP3 对应的路由,确定下一跳指向 Leaf3(VTEP C),且下一跳对应的 MAC 为 Leaf3 的 Route MAC。接着,Leaf1 对报文进行封装:内层 MAC 目的地址设置为 Leaf3 的 Route MAC,添加 L3 VNI(VNI 1000)的 VXLAN 头、UDP 头,外层 IP 头的源 IP 为 VTEP A 的 IP(1.1.1.1),目的 IP 为 VTEP C 的 IP(1.1.1.3),之后将封装后的报文转发到 VXLAN 网络中。
- VXLAN 网络传输:封装后的报文通过 VXLAN 网络(由 Spine 和 RR 等设备组成)传输,最终到达 Leaf3(VTEP C)。
- 出口网关处理(Leaf3/VTEP C):Leaf3 接收报文后解封装,根据 L3 VNI(VNI 1000)关联租户 VRF,在 VRF 的路由表中查找 IP3 对应的路由,确定 VM3 所在的 VNI(VNI 300),然后重新封装 VNI 300 的 VXLAN 头,将报文转发至 VM3;整个过程中,Leaf1(入口)与 Leaf3(出口)均仅执行三层路由转发,逻辑对称。

分布式网关非对称IRB转发:
在 Ingress 入口网关,需要同时执行 Layer - 2 桥接和 Layer - 3 路由功能;而在 Egress 出口网关,只需要执行 Layer - 2 桥接功能,功能不对称。每台分布式网关需要配置 EVPN 网络内所有 VNI 的 VSI 信息,且要维护本租户内所有主机的 ARP。

非对称 IRB 转发流程:
去程:VM1(10.1.1.1,VNI 100)访问 VM3(IP3,VNI 300):
1、流量发起与入口网关处理(Leaf1/VTEP A):VM1 发送报文,目的 IP 为 IP3。Leaf1(VTEP A)作为入口网关,先执行二层桥接:识别报文所属的 VNI 100,确定该流量属于本租户内的跨 VNI 通信。接着执行三层路由:在三层路由表中查找 IP3 对应的路由,确定需要将流量转发到 VNI 300 对应的网络,且下一跳指向 VTEP C(Leaf3)。然后,Leaf1 对报文进行封装:内层 MAC 目的地址设置为 VM3 的 MAC,添加 VNI 300 的 VXLAN 头、UDP 头,外层 IP 头的源 IP 为 VTEP A 的 IP(1.1.1.1),目的 IP 为 VTEP C 的 IP(1.1.1.3),之后将封装后的报文转发到 VXLAN 网络中。
2、VXLAN 网络传输:封装后的报文通过 VXLAN 网络(由 Spine 和 RR 等设备组成)传输,最终到达 Leaf3(VTEP C)。
3、出口网关处理(Leaf3/VTEP C):Leaf3 接收报文后解封装,由于内层 MAC 是 VM3 的 MAC,且 Leaf3 是 VM3 所在 VNI 300 的接入网关,执行二层桥接:查找本地 MAC 表,确定 VM3 的接入接口,将报文转发至 VM3。
回程:VM3(IP3,VNI 300)访问 VM1(10.1.1.1,VNI 100):
1、流量发起与入口网关处理(Leaf3/VTEP C):VM3 发送报文,目的 IP 为 IP1。Leaf3(VTEP C)作为入口网关,先执行二层桥接:识别报文所属的 VNI 300,确定该流量属于本租户内的跨 VNI 通信。接着执行三层路由:在三层路由表中查找 PC1对应的路由,确定需要将流量转发到 VNI 100 对应的网络,且下一跳指向 VTEP A(Leaf1)。然后,Leaf3 对报文进行封装:内层 MAC 目的地址设置为 VM1 的 MAC,添加 VNI 100 的 VXLAN 头、UDP 头,外层 IP 头的源 IP 为 VTEP C 的 IP(1.1.1.3),目的 IP 为 VTEP A 的 IP(1.1.1.1),之后将封装后的报文转发到 VXLAN 网络中。
2、VXLAN 网络传输:封装后的报文通过 VXLAN 网络(由 Spine 和 RR 等设备组成)传输,最终到达 Leaf1(VTEP A)。
3、出口网关处理(Leaf1/VTEP A):Leaf1 接收报文后解封装,由于内层 MAC 是 VM1 的 MAC,且 Leaf1 是 VM1 所在 VNI 100 的接入网关,执行二层桥接:查找本地 MAC 表,确定 VM1 的接入接口,将报文转发至 VM1。
流量回程特性:
非对称 IRB 流量来回路径不一致,去程流量(VM1→VM3)使用 VNI 300 对应的隧道,回程流量(VM3→VM1)使用 VNI 100 对应的隧道。

实验需求:
R4模拟IP核心网络。
R1、R2为与服务器连接的VTEP 设备,通过IP核心网络实现三层互通。
使用EVPN实现R1、R2和R3之间的VXLAN隧道自动建立。
虚拟机VM1(VLAN 10)、VM2(VLAN20)、VM3(VLAN30)连接交换机SW,通过VXLAN网络实现二层互通。
R3作为VM1、VM2和VM3的集中式网关,实现VM1、VM2和VM3可以访问外部网络的8.8.8.8。
实验拓扑:

实验配置:
R1
1.underlay的建立,全网可达(全网启用OSPF功能)
[R1]int g2/0
[R1-GigabitEthernet2/0]ip address 10.1.14.1 24
[R1-GigabitEthernet2/0]quit
[R1]int lo 0
[R1-LoopBack0]ip address 10.255.1.1 32
[R1-LoopBack0]quit
[R1]int range g2/0 lo0
[R1-if-range]ospf 1 area 0
[R1-if-range]quit
2、激活L2VPN功能,配置VSI,关联VNI,设置EVPN的封装模式为VXLAN模式,RT,RD值为自动取值。
##激活L2VPN功能
[R1]l2vpn enable
##配置VSI,关联VNI,设置EVPN的封装模式为VXLAN模式,RD,RT值为自动取值
[R1]vsi vm1
[R1-vsi-vm1]vxlan 10
[R1-vsi-vm1-vxlan-10]quit
[R1-vsi-vm1]evpn encapsulation vxlan
[R1-vsi-vm1-evpn-vxlan]route-distinguisher auto
[R1-vsi-vm1-evpn-vxlan]vpn-target auto
[R1-vsi-vm1-evpn-vxlan]quit
[R1]vsi vm2
[R1-vsi-vm2]vxlan 20
[R1-vsi-vm2-vxlan-20]quit
[R1-vsi-vm2]evpn encapsulation vxlan
[R1-vsi-vm2-evpn-vxlan]route-distinguisher auto
[R1-vsi-vm2-evpn-vxlan]vpn-target auto
[R1-vsi-vm2-evpn-vxlan]quit
[R1-vsi-vm2]vsi vm3
[R1-vsi-vm3]vxlan 30
[R1-vsi-vm3-vxlan-30]quit
[R1-vsi-vm3]evpn encapsulation vxlan
[R1-vsi-vm3-evpn-vxlan]route-distinguisher auto
[R1-vsi-vm3-evpn-vxlan]vpn-target auto
[R1-vsi-vm3-evpn-vxlan]quit
3.配置服务实例(AC),指定感兴趣流,绑定VSI
##配置服务实例(AC),指定感兴趣流,绑定VSI
[R1]int g1/0.10
[R1-GigabitEthernet1/0.10]vlan-type dot1q vid 10 ---指定感兴趣流
[R1-GigabitEthernet1/0.10]xconnect vsi vm1 ---绑定VSI
[R1-GigabitEthernet1/0.10]quit
[R1]int g1/0.20
[R1-GigabitEthernet1/0.20]vlan-type dot1q vid 20
[R1-GigabitEthernet1/0.20]xconnect vsi vm2
[R1-GigabitEthernet1/0.20]quit
[R1]int g1/0.30
[R1-GigabitEthernet1/0.30]vlan-type dot1q vid 30
[R1-GigabitEthernet1/0.30]xconnect vsi vm3
[R1-GigabitEthernet1/0.30]quit
4.配置BGP发布EVPN路由
[R1]bgp 100
[R1-bgp-default]peer 10.1.255.4 as-number 100
[R1-bgp-default]peer 10.1.255.4 connect-interface lo0
[R1-bgp-default]address-family l2vpn evpn ---进入EVPN地址族
[R1-bgp-default-evpn]peer 10.1.255.4 enable
[R1-bgp-default-evpn]quit
[R1-bgp-default]quit
R4:
##underlay的建立,全网可达(全网启用OSPF功能)
[R4]int g1/0
[R4-GigabitEthernet1/0]ip address 10.1.14.4 24
[R4-GigabitEthernet1/0]quit
[R4]int g2/0
[R4-GigabitEthernet2/0]ip add 10.1.24.4 24
[R4-GigabitEthernet2/0]quit
[R4]int g3/0
[R4-GigabitEthernet3/0]ip address 10.1.34.4 24
[R4-GigabitEthernet3/0]quit
[R4]int lo 0
[R4-LoopBack0]ip address 10.255.1.4 32
[R4-LoopBack0]quit
[R4]int range g1/0 g2/0 g3/0 lo 0
[R4-if-range]ospf 1 area 0
##建立BGP-RR反射器服务端
[R4]bgp 100
[R4-bgp-default]peer 10.255.1.1 as-number 100
[R4-bgp-default]peer 10.255.1.1 connect-interface lo0
[R4-bgp-default]peer 10.255.1.2 as-number 100
[R4-bgp-default]peer 10.255.1.2 connect-interface lo0
[R4-bgp-default]peer 10.255.1.3 as-number 100
[R4-bgp-default]peer 10.255.1.3 connect-interface lo0
[R4-bgp-default]address-family l2vpn evpn
[R4-bgp-default-evpn]undo policy vpn-target ##关闭EVPN中基于RT路由的选择和过滤机制
[R4-bgp-default-evpn]peer 10.255.1.1 enable
[R4-bgp-default-evpn]peer 10.255.1.1 reflect-client
[R4-bgp-default-evpn]peer 10.255.1.2 enable
[R4-bgp-default-evpn]peer 10.255.1.2 reflect-client
[R4-bgp-default-evpn]peer 10.255.1.3 enable
[R4-bgp-default-evpn]peer 10.255.1.3 reflect-client
[R4-bgp-default-evpn]quit
[R4-bgp-default]quit
R2
[R2]int g2/0
[R2-GigabitEthernet2/0]ip address 10.1.24.2 24
[R2-GigabitEthernet2/0]quit
[R2]int lo 0
[R2-LoopBack0]ip address 10.255.1.2 32
[R2-LoopBack0]quit
[R2]int range g2/0 lo0
[R2-if-range]ospf 1 area 0
[R2-if-range]quit
##开启L2VPN功能
[R2]l2vpn enable
##创建VSI实例,关联VNI并将EVPN的封装模式修改为VXLAN,RD,RT都设置为自动建立
[R2]vsi vm1
[R2-vsi-vm1]vxlan 10
[R2-vsi-vm1-vxlan-10]quit
[R2-vsi-vm1]evpn encapsulation vxlan
[R2-vsi-vm1-evpn-vxlan]route-distinguisher auto
[R2-vsi-vm1-evpn-vxlan]vpn-target auto
[R2-vsi-vm1-evpn-vxlan]quit
[R2-vsi-vm1]quit
[R2]vsi vm2
[R2-vsi-vm2]vxlan 20
[R2-vsi-vm2-vxlan-20]quit
[R2-vsi-vm2]evpn encapsulation vxlan
[R2-vsi-vm2-evpn-vxlan]route-distinguisher auto
[R2-vsi-vm2-evpn-vxlan]vpn-target auto
[R2-vsi-vm2-evpn-vxlan]quit
[R2-vsi-vm2]quit
[R2]vsi vm3
[R2-vsi-vm3]vxlan 30
[R2-vsi-vm3-vxlan-30]quit
[R2-vsi-vm3]evpn encapsulation vxlan
[R2-vsi-vm3-evpn-vxlan]route-distinguisher auto
[R2-vsi-vm3-evpn-vxlan]vpn-target auto
[R2-vsi-vm3-evpn-vxlan]quit
[R2-vsi-vm3]quit
##配置服务实例(AC)指定感兴趣流,绑定VSI
[R2]int g1/0.10
[R2-GigabitEthernet1/0.10]vlan-type dot1q vid 10
[R2-GigabitEthernet1/0.10]xconnect vsi vm1
[R2-GigabitEthernet1/0.10]quit
[R2]int g1/0.20
[R2-GigabitEthernet1/0.20]vlan-type dot1q vid 20
[R2-GigabitEthernet1/0.20]xconnect vsi vm2
[R2-GigabitEthernet1/0.20]quit
[R2]int g1/0.30
[R2-GigabitEthernet1/0.30]vlan-type dot1q vid 30
[R2-GigabitEthernet1/0.30]xconnect vsi vm3
[R2-GigabitEthernet1/0.30]quit
##配置BGP发布EVPN路由
[R2]bgp 100
[R2-bgp-default]peer 10.255.1.4 as-number 100
[R2-bgp-default]peer 10.255.1.4 connect-interface lo0
[R2-bgp-default]address-family l2vpn evpn
[R2-bgp-default-evpn]peer 10.255.1.4 enable
[R2-bgp-default-evpn]quit
[R2-bgp-default]quit
R3:
[R3]int g1/0
[R3-GigabitEthernet1/0]ip address 10.1.34.3 24
[R3-GigabitEthernet1/0]quit
[R3]int g2/0
[R3-GigabitEthernet2/0]ip address 202.101.1.1 30
[R3-GigabitEthernet2/0]quit
[R3]int lo0
[R3-LoopBack0]ip address 10.255.1.3 32
[R3-LoopBack0]quit
[R3]int range g1/0 lo 0
[R3-if-range]ospf 1 area 0
[R3-if-range]quit
##激活L2VPN功能
[R3]l2vpn enable
##配置VSI,关联VNI,设置EVPN的封装模式为VXLAN模式,RT,RD值为自动取值。
[R3]vsi vm1
[R3-vsi-vm1]vxlan 10
[R3-vsi-vm1-vxlan-10]quit
[R3-vsi-vm1]evpn encapsulation vxlan
[R3-vsi-vm1-evpn-vxlan]route-distinguisher auto
[R3-vsi-vm1-evpn-vxlan]vpn-target auto
[R3-vsi-vm1-evpn-vxlan]quit
[R3-vsi-vm1]quit
[R3]vsi vm2
[R3-vsi-vm2]vxlan 20
[R3-vsi-vm2-vxlan-20]quit
[R3-vsi-vm2]evpn encapsulation vxlan
[R3-vsi-vm2-evpn-vxlan]route-distinguisher auto
[R3-vsi-vm2-evpn-vxlan]vpn-target auto
[R3-vsi-vm2-evpn-vxlan]quit
[R3-vsi-vm2]quit
[R3]vsi vm3
[R3-vsi-vm3]vxlan 30
[R3-vsi-vm3-vxlan-30]quit
[R3-vsi-vm3-vxlan-30]evpn encapsulation vxlan
[R3-vsi-vm3-evpn-vxlan]route-distinguisher auto
[R3-vsi-vm3-evpn-vxlan]vpn-target auto
[R3-vsi-vm3-evpn-vxlan]quit
[R3-vsi-vm3]quit
##创建VSI接口充当网关
[R3]int Vsi-interface 10
[R3-Vsi-interface10]ip address 192.168.10.254 24
[R3-Vsi-interface10]quit
[R3]int Vsi-interface 20
[R3-Vsi-interface20]ip address 192.168.20.254 24
[R3-Vsi-interface20]quit
[R3]int Vsi-interface 30
[R3-Vsi-interface30]ip address 192.168.30.254 24
[R3-Vsi-interface30]quit
##将VSI接口绑定在VSI实例中
[R3]vsi vm1
[R3-vsi-vm1]gateway Vsi-interface 10
[R3-vsi-vm1]quit
[R3]vsi vm2
[R3-vsi-vm2]gateway Vsi-interface 20
[R3-vsi-vm2]quit
[R3]vsi vm3
[R3-vsi-vm3]gateway Vsi-interface 30
[R3-vsi-vm3]quit
##配置BGP来传递EVPN路由
[R3]bgp 100
[R3-bgp-default]peer 10.255.1.4 as-number 100
[R3-bgp-default]peer 10.255.1.4 connect-interface lo0
[R3-bgp-default]address-family l2vpn evpn
[R3-bgp-default-evpn]peer 10.255.1.4 enable
[R3-bgp-default-evpn]quit
[R3-bgp-default]quit
##NAT配置
[R3]access-list basic 2000
[R3-acl-ipv4-basic-2000]rule permit source 192.168.10.0 0.0.0.255
[R3-acl-ipv4-basic-2000]rule permit source 192.168.20.0 0.0.0.255
[R3-acl-ipv4-basic-2000]rule permit source 192.168.30.0 0.0.0.255
[R3-acl-ipv4-basic-2000]qu
[R3]int g2/0
[R3-GigabitEthernet2/0]nat outbound 2000
[R3-GigabitEthernet2/0]quit
[R3]ip route-static 0.0.0.0 0.0.0.0 202.101.1.2
SRV:
[SRV]int g1/0
[SRV-GigabitEthernet1/0]ip address 202.101.1.2 30
[SRV-GigabitEthernet1/0]quit
[SRV]int lo 0
[SRV-LoopBack0]ip address 8.8.8.8 32
[SRV-LoopBack0]quit
SW1:
[SW1]vlan 10 20 30
[SW1]int HundredGigE 1/0/4
[SW1-HundredGigE1/0/4]port link-mode bridge
[SW1-HundredGigE1/0/4]port link-type trunk
[SW1-HundredGigE1/0/4]port trunk permit vlan 10 20 30
[SW1-HundredGigE1/0/4]quit
[SW1]int HundredGigE 1/0/1
[SW1-HundredGigE1/0/1]port link-mode bridge
[SW1-HundredGigE1/0/1]port link-type access
[SW1-HundredGigE1/0/1]port access vlan 10
[SW1-HundredGigE1/0/1]quit
[SW1]int HundredGigE 1/0/2
[SW1-HundredGigE1/0/2]port link-mode bridge
[SW1-HundredGigE1/0/2]port link-type access
[SW1-HundredGigE1/0/2]port access vlan 20
[SW1-HundredGigE1/0/2]quit
[SW1]int HundredGigE 1/0/3
[SW1-HundredGigE1/0/3]port link-mode bridge
[SW1-HundredGigE1/0/3]port link-type access
[SW1-HundredGigE1/0/3]port access vlan 30
[SW1-HundredGigE1/0/3]quit
SW2:
[SW2]vlan 10 20 30
[SW2]int HundredGigE1/0/5
[SW2-HundredGigE1/0/5]port link-mode bridge
[SW2-HundredGigE1/0/5]port link-type trunk
[SW2-HundredGigE1/0/5]port trunk permit vlan 10 20 30
[SW2-HundredGigE1/0/5]quit
[SW2]int HundredGigE1/0/1
[SW2-HundredGigE1/0/1]port link-mode bridge
[SW2-HundredGigE1/0/1]port link-type access
[SW2-HundredGigE1/0/1]port access vlan 10
[SW2-HundredGigE1/0/1]quit
[SW2]int HundredGigE1/0/2
[SW2-HundredGigE1/0/2]port link-mode bridge
[SW2-HundredGigE1/0/2]port link-type access
[SW2-HundredGigE1/0/2]port access vlan 20
[SW2-HundredGigE1/0/2]quit
[SW2]int HundredGigE1/0/3
[SW2-HundredGigE1/0/3]port link-mode bridge
[SW2-HundredGigE1/0/3]port link-type access
[SW2-HundredGigE1/0/3]port access vlan 30
[SW2-HundredGigE1/0/3]quit
[SW2]int HundredGigE1/0/4
[SW2-HundredGigE1/0/4]port link-mode bridge
[SW2-HundredGigE1/0/4]port link-type access
[SW2-HundredGigE1/0/4]port access vlan 30
[SW2-HundredGigE1/0/4]quit
PC(用思科路由器模拟):
PC1(config)#no ip routing
PC1(config)#ip default-gateway 192.168.10.254
PC1(config)#int e0/0
PC1(config-if)#ip address 192.168.10.1 255.255.255.0
PC1(config-if)#no shutdown
PC2(config)#no ip routing
PC2(config)#ip default-gateway 192.168.20.254
PC2(config)#int e0/0
PC2(config-if)#ip address 192.168.20.1 255.255.255.0
PC2(config-if)#no shutdown
PC3(config)#no ip routing
PC3(config)#ip default-gateway 192.168.30.254
PC3(config)#int e0/0
PC3(config-if)#ip address 192.168.30.1 255.255.255.0
PC3(config-if)#no shutdown
PC4-PC7上的配置与上述一致,仅IP地址和默认网关有变,略
查看命令

查看 BGP在 L2VPN的 EVPN地址族下的邻居状态及相关信息
<R4>display bgp peer l2vpn evpn

查看L2VPN的Tunnel隧道建立
[R3]display vxlan tunnel

查看L2VPN的MAC地址表
[R1]display l2vpn mac-address



查看Link ID
[R1]display l2vpn vsi name vm1 verbose

配置文档:
R1:
sysname R1
#
l2vpn enable
#
vsi vm1
vxlan 10
evpn encapsulation vxlan
route-distinguisher auto
vpn-target auto export-extcommunity
vpn-target auto import-extcommunity
#
vsi vm2
vxlan 20
evpn encapsulation vxlan
route-distinguisher auto
vpn-target auto export-extcommunity
vpn-target auto import-extcommunity
#
vsi vm3
vxlan 30
evpn encapsulation vxlan
route-distinguisher auto
vpn-target auto export-extcommunity
vpn-target auto import-extcommunity
#
interface LoopBack0
ip address 10.255.1.1 255.255.255.255
ospf 1 area 0.0.0.0
#
interface GigabitEthernet1/0.10
vlan-type dot1q vid 10
xconnect vsi vm1
#
interface GigabitEthernet1/0.20
vlan-type dot1q vid 20
xconnect vsi vm2
#
interface GigabitEthernet1/0.30
vlan-type dot1q vid 30
xconnect vsi vm3
#
interface GigabitEthernet2/0
port link-mode route
ip address 10.1.14.1 255.255.255.0
ospf 1 area 0.0.0.0
#
bgp 100
peer 10.255.1.4 as-number 100
peer 10.255.1.4 connect-interface LoopBack0
#
address-family l2vpn evpn
peer 10.255.1.4 enable
R2:
sysname R2
#
l2vpn enable
#
vsi vm1
vxlan 10
evpn encapsulation vxlan
route-distinguisher auto
vpn-target auto export-extcommunity
vpn-target auto import-extcommunity
#
vsi vm2
vxlan 20
evpn encapsulation vxlan
route-distinguisher auto
vpn-target auto export-extcommunity
vpn-target auto import-extcommunity
#
vsi vm3
vxlan 30
evpn encapsulation vxlan
route-distinguisher auto
vpn-target auto export-extcommunity
vpn-target auto import-extcommunity
#
interface LoopBack0
ip address 10.255.1.2 255.255.255.255
ospf 1 area 0.0.0.0
#
interface GigabitEthernet1/0.10
vlan-type dot1q vid 10
xconnect vsi vm1
#
interface GigabitEthernet1/0.20
vlan-type dot1q vid 20
xconnect vsi vm2
#
interface GigabitEthernet1/0.30
vlan-type dot1q vid 30
xconnect vsi vm3
#
interface GigabitEthernet2/0
port link-mode route
ip address 10.1.24.2 255.255.255.0
ospf 1 area 0.0.0.0
#
bgp 100
peer 10.255.1.4 as-number 100
peer 10.255.1.4 connect-interface LoopBack0
#
address-family l2vpn evpn
peer 10.255.1.4 enable
R3:
sysname R3
#
l2vpn enable
#
vsi vm1
gateway vsi-interface 10
vxlan 10
evpn encapsulation vxlan
route-distinguisher auto
vpn-target auto export-extcommunity
vpn-target auto import-extcommunity
#
vsi vm2
gateway vsi-interface 20
vxlan 20
evpn encapsulation vxlan
route-distinguisher auto
vpn-target auto export-extcommunity
vpn-target auto import-extcommunity
#
vsi vm3
gateway vsi-interface 30
vxlan 30
evpn encapsulation vxlan
route-distinguisher auto
vpn-target auto export-extcommunity
vpn-target auto import-extcommunity
#
interface LoopBack0
ip address 10.255.1.3 255.255.255.255
ospf 1 area 0.0.0.0
#
interface GigabitEthernet1/0
port link-mode route
ip address 10.1.34.3 255.255.255.0
ospf 1 area 0.0.0.0
#
interface GigabitEthernet2/0
port link-mode route
ip address 202.101.1.1 255.255.255.252
nat outbound 2000
#
interface Vsi-interface10
ip address 192.168.10.254 255.255.255.0
#
interface Vsi-interface20
ip address 192.168.20.254 255.255.255.0
#
interface Vsi-interface30
ip address 192.168.30.254 255.255.255.0
#
bgp 100
peer 10.255.1.4 as-number 100
peer 10.255.1.4 connect-interface LoopBack0
#
address-family l2vpn evpn
peer 10.255.1.4 enable
#
ip route-static 0.0.0.0 0 202.101.1.2
#
acl basic 2000
rule 0 permit source 192.168.10.0 0.0.0.255
rule 5 permit source 192.168.20.0 0.0.0.255
rule 10 permit source 192.168.30.0 0.0.0.255
R4:
sysname R4
#
interface LoopBack0
ip address 10.255.1.4 255.255.255.255
ospf 1 area 0.0.0.0
#
interface GigabitEthernet1/0
port link-mode route
ip address 10.1.14.4 255.255.255.0
ospf 1 area 0.0.0.0
#
interface GigabitEthernet2/0
port link-mode route
ip address 10.1.24.4 255.255.255.0
ospf 1 area 0.0.0.0
#
interface GigabitEthernet3/0
port link-mode route
ip address 10.1.34.4 255.255.255.0
ospf 1 area 0.0.0.0
#
bgp 100
peer 10.255.1.1 as-number 100
peer 10.255.1.1 connect-interface LoopBack0
peer 10.255.1.2 as-number 100
peer 10.255.1.2 connect-interface LoopBack0
peer 10.255.1.3 as-number 100
peer 10.255.1.3 connect-interface LoopBack0
#
address-family l2vpn evpn
undo policy vpn-target
peer 10.255.1.1 enable
peer 10.255.1.1 reflect-client
peer 10.255.1.2 enable
peer 10.255.1.2 reflect-client
peer 10.255.1.3 enable
peer 10.255.1.3 reflect-client
SW1:
sysname SW1
#
vlan 10
#
vlan 20
#
vlan 30
#
interface HundredGigE1/0/1
port link-mode bridge
port access vlan 10
#
interface HundredGigE1/0/2
port link-mode bridge
port access vlan 20
#
interface HundredGigE1/0/3
port link-mode bridge
port access vlan 30
#
interface HundredGigE1/0/4
port link-mode bridge
port link-type trunk
port trunk permit vlan 1 10 20 30
SW2:
sysname SW2
#
vlan 10
#
vlan 20
#
vlan 30
#
interface HundredGigE1/0/1
port link-mode bridge
port access vlan 10
#
interface HundredGigE1/0/2
port link-mode bridge
port access vlan 20
#
interface HundredGigE1/0/3
port link-mode bridge
port access vlan 30
#
interface HundredGigE1/0/4
port link-mode bridge
port access vlan 30
#
interface HundredGigE1/0/5
port link-mode bridge
port link-type trunk
port trunk permit vlan 1 10 20 30
更多推荐

所有评论(0)