HCIE-路由交换专题-EVPN原理与配置
HCIE-路由交换专题-EVPN原理与配置
华为官方文档: EVPN基本原理
1 EVPN简介
传统网络中有很多种协议, 比如在L2VPN技术里面有VPLS(虚拟专用局域网技术和VPWS(虚拟专用线路技术), L3VPN里面有MPLS VPN技术等, 这些VPN技术彼此独立运行与控制, 操作成本比较高, 于是乎需要一种能统一二层三层多种VPN控制平面的技术来实现整合, 这种技术就是EVPN(Ethernet VPN, 以太网VPN)
EVPN作为一种网络新技术, 其不仅功能众多, 在技术可靠性上也优于传统VPN技术, 通过BGP技术的高扩展性来传递L2和L3的可达信息.
1.1 EVPN发展背景
1.1.1 什么是L2&3 VPN
上图是一张典型的L3 MPLS VPN组网拓扑, 不同站点的相同业务处于不同的广播域(100.0.123.0/24和100.0.213.0/24), 去过Site1和Site2的Video业务处于相同网段, 则会因为ARP报文无法通过公网传播的原因无法通信.
而L2 VPN让处于不同物理位置的用户通过接入不同的PE设备, 实现用户之间的互相通信, 从用户角度来开, 整个L2 VPN的网络就是一个二层交换网, 用户之间就像直接通过LAN互联在一起一样.
L2 VPN的使用场景为: 银行等网络对网络的私密性要求比较高, 并不希望将自己的私网路由通告给运营商, 这个时候就可以部署L2 VPN
1.1.2 VPLS简介
可以了解一下
VPLS实现原理:
-
在每台设备上创建一张虚拟mac地址表(VSI, 虚拟交换实例, 类似L3 VPN中的VRF)
-
在公网采用标签传递L2报文
-
创建PW(伪线), 其类似L3 VPN中的私网标签(route-distinguish), 通过标签识别数据应该被放入哪一个VSI中, 其中PW的创建方式有三种:
- (繁琐)手工静态配置
- (常用)通过LDP信令创建(Martini): 在两个CE之间创建阔设备的LDP邻居
- (废弃)通过BGP信令创建(Kompella): 在两个PE之间创建建MP-BGP, 通过MP-BGP分配标签
-
绑定PW和AC(Attachment Circuit, 接入电路, 即PE与CE之间连接的链路)到VSI中, PW和AC绑定后, VSI就会向交换机一样记录不同的mac地址并生成mac地址表项
VPLS转发过程:
- CE1发送ARP请求, PE1收到报文后对CE1地址存表, 并根据目的ip地址进行查表转发或向所有PW泛洪, 将所得mac地址都存入VSI中
- PE在向PW泛洪时, ARP的广播报文携带两层标签, 内层标签是指定到PE2内PW 1的标签, 外层标签是PE1直连设备去往PE2的标签
- PE 2 从PW A中收到ARP广播报文后, 根据内层标签知道数据是给本地的VSI A的, 所以将标签剥离
- PE2查找VSI A的mac地址表, 将数据转发给CE2
VPLS水平分割
VPLS规定了数据如果是从PW收到的, 就只能发给AC, 而不能转发给其他PW, 所以要实现全网互联, 必须两两设备建立VPLS, 对网络链路开销巨大, 扩展性差
VPLS面临问题
VPLS面对CE多归场景下需要部署STP协议来防止环路, 导致多归场景的负载分担链路变为主备链路
VPLS最大的问题是故障收敛时间通常非常长, VPLS每次故障收敛会清空mac表项, 导致链路要重新进行mac地址学习, 网络整体故障手来你时间完全取决于mac地址的数量
VPLS在mac学习时需要进行mac地址泛洪, 会造成带宽资源的浪费
1.2 EVPN基本概念
ES和ESI
PE连接到ES的链路成为一条以太网段(ES, Ethenet Segment)(相当于VPLS中的AC), 每个ES需要一个10byte的标识符ESI
注: 在同一个ES的CE多归的两个PE上, ESI必须完全相同
ESI配置方式一共有六种(华为设备仅支持前两种):
-
管理员手工配置
int eth-trunk 1 esi 0000.1111.2222.1111.1111
查看本地ESI信息
dis bgp evpn all esi
-
当PE与CE之间配置LACP(动态链路聚合)时, ESI的值为:
CE LACP System MAC adderss(6 Btye) + CE LACP Port Key(2 Byte) + 0x00(1 Byte)
-
MSTP自动生成
-
系统mac + 本地标识符
-
Router ID + 本地标识符
-
AS Number + 本地标识符
注: 在CE多归场景下, 链路聚合通常为跨设备链路聚合, 比如一个聚合口中的两个物理端口会分别连接到两台PE设备上(PE设备之间有使用堆叠线进行连接, 可能是做堆叠或M-LAG)
EVI和MAC-VRF
EVI(EVPN Instance)就是一个EVPN实例, 类似L3VPN中的vpn-instance
MAC-VRF就是PE上输入EVI的mac地址表
RD和RT
路由识别, 概念同L3 VPN, 在evpn instance中配置
1.3 EVPN工作原理
1.3.1 EVPN路由
EVPN在BGP原有的协议基础上做了扩展, 新增了一个地址簇, 即EVPN NLRI, 并定义了8种类型的路由, 这里介绍前5种路由:
-
type1: 以太自动发现路由(Ethernet A-D Route), 用于水平分割、快速收敛、别名、指导二层流量转发(EVPN VPWS)、通告ESI标签
这个路由可以细分为:
- Per ES A-D Route: 在双活接入时为ES分配ESI
- Per EVI A-D Route: 实现别名功能(其实还是ESI)
-
type2: MAC/IP通告路由(MAC/IP Route), 用于mac通告、ARP通告、邻居发现通告和IRB通告
-
type3: 集成多播以太标记路由(IMET Route), 用于邻居自动发现和指导BUM流量转发
-
type4: 以太网段路由(ES Route), 用于ES发现、DF(类似主备关系中的主)选举和多活场景
-
type5: IP前缀路由(Prefix), 用于通告网段和主机IP
先别急着记这些路由, 结合下文讲解记忆效果更佳
1.3.2 EVPN基本工作原理概述
启动阶段
让网络具备基本的L2路由转发能力
-
指导BUM报文流量如何转发
EVPN对等体之间交互Type3(IMET Route)路由, 建立BUM流量转发表(为发送到自己的BUM流量分发一个标签)
-
交互Type4(ES Route)完成ES发现和DF选举
-
EVPN对等体交互type1(Ethernet A-D Route)路由、交互ESI标签, 进而实现水平分割和别名等功能
此时MAC-VRF表项为空
流量转发
CE侧流量触发PE通过Type 2(MAC/IP Route)路由通告mac地址, 该路由携带分配的标签信息, 后续根据该标签执行单播流量转发
总结一下:
BUM流量: Broadcast、Unknown unicast和Multicast流量统称
1.3.3 EVPN表项
EVPN维护三张表用于知道流量转发, 分别是MAC-VRF表、BUM流量转发表和ES成员列表
三张表各有一个Label, 务必区分清楚!
MAC-VRF表
MAC-VRF表用于记录已知单播流量的转发
MAC | ESI | Next_Hop | Tunnel Label |
---|---|---|---|
1-1-1 | ESI 1 | port 1 | null |
2-2-2 | ESI 2 | PE3 | 303 |
3-3-3 | ESI 2 | PE4 | 304 |
Tunnel Label: 前往目的地址的转发标签
BUM流量转发表
BUM流量转发表用于指导广播、未知单播和组播流量转发, 简单来说就是不定向转发
Peer | BUM Label |
---|---|
PE2 | 102 |
PE3 | 103 |
PE4 | 104 |
BUM标签: 指导流量转发到其他PE用的标签
ES成员表
ES成员表用于记录用户接入PE信息
序号 | ESI | 成员 | ES Label |
---|---|---|---|
0 | ESI 1 | PE2 | 202 |
1 | ESI 1 | PE1 | 201 |
ES标签: 在同一个ESI中标识不同PE成员的标签
1.4 EVPN技术愿景实现原理
1.4.1 简化网络中VPN的配置和维护
每个设备启动EVPN之后就会配置L2 VPN实例, 即EVI, 配置完之后每个设备就会产生一个MAC-VRF
邻居自动发现
BUM流量的转发
当PE从CE收到一份BUM流量但不知如何转发时, 就会想要进行泛洪, 但自己发送的BUM流量如何让对端识别到自己是否需要接收呢?
-
EVPN在启动之后就会向其他设备泛洪一份Type 3路由, 携带该EVPN实例的RD、PE源地址和BUM流量转发标签(BUM Label)
-
每台设备在本地BUM流量转发表上记录其他PE的地址已经对应的标签值(BUM Label)
-
最终在所有设备上都形成一张BUM转发表(见1.3.3), 表中存放前往每一个PE对应的标签(BUM Label)
ESI成员自动发现
-
CE接口绑定EVPN实例EVI双活接入PE, 在PE上配置CE接入接口与EVI绑定, 从接口进入报文将进入EVI
-
让CE接入的ESI信息(包括序号、ESI和其成员信息)通过Type4路由在网络中进行同步, 同步后同一台CE双归接入的不同PE之间能知道他们连接着同一台CE设备, 这一切的前提是CE双归连接不同PE的ESI相同
避免全连接
在VPLS中, PE之间必须采用两两邻接的全连接的组网结构, EVPN借助了BGP的RR反射器, 每个PE只需要和RR反射器建立邻居关系即可
简化协议配置
统一使用BGP作为数据平面, 统一使用EVPN作为控制平面, 至此来达到简化配置和维护的要求
1.4.2 支持双活接入-避免BUM重复接收
在双活场景下, 如果PE1和PE2同时发送相同的流量给CE1, 那CE1会收到重复的两份数据, 造成不必要的带宽浪费, 此时EVPN就会在PE之间选举出一个DF, 从网络侧收到的报文只会由DF来转发给CE设备, 避免重复发送
DF的选举过程
前提: 接口UP
- 基于接口选举: 优选接口源地址小的
- 基于VLAN选举: 根据V mod N = i来计算, V是VLAN ID, N是连接同一个CE的PE数量, i就是ES成员列表中被选为DF的PE序号
华为设备上可配置DF选举方式。缺省情况下设备基于接口来进行DF选举,可能会导致多归链路上流量集中在一条链路上。配置基于VLAN来进行DF选举,可以让PE到CE的BUM流量基于VLAN均衡地分担到多归链路上
接入侧双活基础-ESI成员列表
PE设备丢弃来自同一个ESI的PE的BUM流量, 检测同一个ESI成员的原理如下:
- PE1和PE2首先发送ES-Route(Type4), 其中包括ESI信息、源地址、ESI Label, 各自将对端的EVPN源地址加入本地的ES成员列表里
- PE1和PE2相互发送Type1(Per ES A-D Route)路由(携带ESI和一个Label)
- PE1和PE2收到对端Type1路由, 如果检测到相同的ESI, 则将ESI Label信息绑定到成员列表中
假设CE1发送一个BUM报文, PE1收到之后就广播发送泛洪处理, 这个报文发送给PE2时会携带上一个PE2分发的BUM Label(假设是102), 同时PE2在PE1的成员列表中, 所以还会携带一个ESI Label(假设是L2)
PE2收到这个报文时, 拆除BUM Label, 发现ESI标签和本地ESI(L2)成员标签列表一致, 且位于同一个ESI中, 执行丢弃处理.
1.4.3 尽量少广播
流量转发过程
对于用户来说, 最理想的状态就是两个CE完全不需要感知中间有P和PE设备的存在, 可以直接将报文发送给对端的CE, 就像CE1和CE2之间使用以太网线路连接一样, 收到ARP请求就能直接生成mac表条目
EVPN传递ARP报文时放弃了VPLS的泛洪操作, 改使用type2(MAC/IP Route)路由通过BGP向其他PE通告, type2除了MAC地址、ESI信息和RD值之外, 还携带了本设备分配的MPLS标签(如下图的301)
- CE1访问CE2, 首先广播发送ARP请求, PE1&2接收ARP报文, 生成本地mac条目
- PE1的EVPN将本地mac地址条目生成Type2路由, 携带PE设备分配的MPLS标签301, PE2同理
- 远端PE设备通过MP-BGP学习到EVPN路由, 生成mac表条目
- PE2感知直连CE1, 刷新最优的mac表条目(防止次优路径), 并生成和通告Type2路由
- 因PE1和PE2分配不同的MPLS标签, PE3和PE4有两条路径到达CE1
上述PE1和PE2收到CE1的ARP请求后会获得CE1的mac和ip地址, 即一条完整的ARP信息, PE1&2会将这条ARP信息通告给PE3&4
ARP通告路由
CE1发送的ARP请求达到PE1。PE1通过数据面学习到CE1的MAC地址,然后通过Type2路由发送给所有邻居。
控制平面行为完成后,PE1将执行数据平面行为,即转发ARP广播请求。最后因PE3为DF,PE3转发ARP广播报文到CE2
-
PE1到PE3的ARP报文查询BUM流量转发表转发,携带103标签。PE3为DF,转发报文到Port3
-
PE1到PE4的流量携带标签104。PE4根据标签确认是BUM流量,因PE4为非DF,丢弃报文
-
由于PE1和PE2属于相同ES,PE1到PE2的流量同时携带ESI标签202和BUM标签102。PE2接收到报文发现有标签202,则丢弃该报文(水平分割)
1.4.4 流量负载均衡
假设现在CE1有四条不同业务的流量需要发送给CE2
- 流量在CE1上双活链路负载分担, 将流量分别转发给PE1和PE2
- 在PE1和PE2上, 事先会有两条目的mac地址都为2-2-2, 并且下一跳都不同的mac路由, 流量会通过不同的路径发送给PE3和PE4
- PE3和PE4收到流量后, 分别根据本地mac地址表从对应的接口将流量发送给CE1(相同的流量才会由DF来发送)
别名技术
CE1双归接入PE1和PE2, 正常情况下PE1和PE2都会学习到1-1-1, 但是此时因为某种原因, PE2没学到, 此时只有PE1学到, PE3和PE4的mac地址表的1-1-1也只有一个下一跳, 此时无法实现负载分担
别名技术可以理解为同一个ESI的设备有一个共同的名字, 依靠type1(EVI AD Route)路由来实现, 具体过程如下:
- PE1生成MAC/IP Route, 正常向PE3和PE4通告
- PE2向PE3和PE4发布type1(EVI AD Route)路由, 携带ESI, 单播转发的标签值
- PE3和PE4收到PE2的type1路由发现与PE1的type2路由中ESI值相等, 于是他们认为将路由通告给PE2的话也能到达CE1, 于是更新mac地址表
- 此时PE3和PE4收到去访问CE1的流量仍然会负载分担到PE1与PE2上
看到这里你应该也能发现, 即使PE3&4知道把流量转发给PE2, 但PE2还是没有CE1的mac地址, 那么这个流量还是只能被丢弃
那这个负载分担的意义在哪? 别急, 还是有办法解决这"最后一公里"的
MAC重定向
mac重定向是实现别名技术的关键拼图
PE1生成MAC/IP Route之后也会向PE2通告1-1-1, PE2发现这个type2 Route携带的ESI已经存在自己的ES成员表中, 于是PE2将1-1-1的出接口重定向到PE1的接口上, 这样PE3&4转发到PE2的流量也能通过PE1最后到达CE1了, 保证了网络侧的负载均衡
1.4.5 故障快速收敛
PE3检测到CE2链路故障,首先删除自己本地MAC表项,然后通过Type1(Per AD Route)路由通告所有PE撤销下一跳为PE3的ESI2的MAC路由, 此时前往CE2的路由只会通过PE4进行转发
1.5 EVPN接入概述
在EVPN网络边缘的PE设备上可以部署多个EVPN实例(EVI,EVPN Instance),每个EVPN实例可以连接一个或者多个用户网络。EVPN支持通过多种服务模式来接入用户网络
服务模式 | 场景 |
---|---|
Port Based | 连接用户网络的物理接口直接绑定普通EVPN实例,只能用于承载二层业务 |
VLAN Based | 连接用户网络的物理接口划分成不同子接口,每个子接口与EVPN实例绑定。每个用户单独使用一个EVPN实例,可用于承载二层业务或三层业务 |
VLAN Bundle | 不同用户间使用VLAN进行划分,不同VLAN与EVPN实例绑定,可用于承载二层业务或三层业务 |
VLAN-Aware Bundle | 不同用户间使用VLAN进行划分,不同VLAN通过与同一EVPN实例绑定,可用于承载二层业务或三层业务 |
Port Based模式
Port Base模式是一种整个接口接入业务的方式,即连接用户网络的物理接口直接绑定普通EVPN实例,且该接口不创建子接口。此种服务模式只能用于承载二层业务
int g1/0/0
evpn bingding vpn-instance evpna
qu
VLAN Based模式
在VLAN Based模式下,连接用户网络的物理接口划分成不同子接口,每个子接口关联不同的VLAN且加入不同的广播域BD(Bridge Domain)。每个广播域BD会与单独的一个EVPN实例进行绑定。此种服务模式可以用于承载二层业务或三层业务。本例有User1和User2,分别使用不同的子接口接入
bridge-domain 10
evpn bingding vpn-instance evpna
qu
int g1/0/0.1 mode l2
encapsulation dot1q vid 10
bridge-domain 10
qu
VLAN Bundle模式
在VLAN Bundle模式下,一个EVPN实例可以连接多个用户,不同用户间使用VLAN进行划分,而该EVPN实例会绑定到一个广播域BD上。此类型服务模式中,接入同一个EVPN实例的不同用户共用同一个MAC转发表,因此需要网络中用户的MAC地址唯一。此种服务模式可以用于承载二层业务或三层业务
bridge-domain 10
evpn bingding vpn-instance evpna
qu
int g1/0/0.1 mode l2
encapsulation dot1q vid 10
qu
VLAN-Aware Bundle模式
在VLAN-Aware Bundle模式下,一个EVPN实例可以连接多个用户,不同用户间使用VLAN进行划分绑定不同的BD。此类型服务模式中,接入同一个EVPN实例的不同用户分别使用独立的与BD对应的MAC转发表(以BD-tag标识)
bridge-domain 10
evpn bingding vpn-instance evpna bd-tag 10
qu
int g1/0/0.1 mode l2
encapsulation dot1q vid 10
bridge-domain 10
qu
2 跨域EVPN
一般的EVPN的体系结构都是在一个自治系统(Autonomous System,AS)内运行,任何EVPN的路由信息都是只能在一个AS内按需扩散,没有提供AS内的VPN信息向其他AS扩散的功能。在一些复杂场景下,可能存在企业拥有多个AS,这就需要扩展现有EVPN体系框架,提供一种跨域(Inter-AS)的EVPN
跨域的EVPN借鉴跨域MPLS VPN的方式,也有三种:
Option A、Option B、Option C
Option A
- 跨域的EVPN-OptionA中PE和ASBR之间建立EVPN邻居关系,ASBR之间不需要运行EVPN
- ASBR之间采用创建多个子接口并绑定VPN的方式实现IP路由传递。
- OptionA的域内流量有两层标签,域间流量无标签
Option B
- 跨域的EVPN-OptionB中PE和ASBR之间建立EVPN邻居关系,ASBR之间也建立EVPN邻居关系
- ASBR在收到MAC/IP路由后,修改下一跳为自己,并重新分配标签发给跨域的ASBR
- OptionB的域内流量有两层标签,域间流量有一层EVPN标签
Option C
- 跨域的EVPN-OptionC中Site1和Site2的PE间建立端到端的BGPLSP。
- PE1和PE2建立EVPN邻居关系。ASBR不感知MAC/IP路由。
- OptionC的域内流量有三层标签,域间流量有两层标签(EVPN和BGP标签)
3 EVPN基本配置
3.1 EVPN承载二层业务
配置命令
-
配置EVPN实例
bridge-domain 10 evpn binding vpn-instance evpna [bd-tag bd-tag]
在MPLS转发方式下,BD直接配置绑定EVPN实例evpna。此处BD的ID为10。通过设置不同的bd-tag,用户可以将多个BD绑定到相同的EVPN实例下,实现不同的VLAN对应的广播域接入同一个EVPN实例,但是属于不同广播域的业务相互隔离
-
将二层子接口加入BD, 允许通过广播域BD转发
int eth-trunk10.1 mode l2 encapsulation dot1q vid 2 rewrite pop single bridge-domain 10
将二层子接口加入BD,允许报文通过广播域BD转发。此处子接口ID为Eth-Trunk10.1
配置举例(双归双活)
配置需求
- CE1双归属到PE1和PE2,通过E-Trunk来实现双活
- CE1的ESI为0000.1111.2222.1111.1111
- CE1和CE2的IP地址分别为192.168.1.1/24、192.168.1.2/24
- EVPN实例名称evpna
- 各个PE的EVPN实例evpna的RD值分别为100:1、200:1、300:1,RT值均为1:1
配置思路
-
在骨干网上配置IGP实现各个PE设备之间的互通
-
在骨干网上配置MPLS基本能力和MPLS LDP,建立MPLS LSP
-
配置PE上的BD EVPN实例
PE1举例, PE2同理
evpn vpn-instance evpna bd-mode #配置evpn实例 route-distinguisher 100:1 #配置RD值 vpn-target 1:1 #配置RT qu bridge-domain 10 evpn binding vpn-instance evpna #bd绑定evpn实例 qu evpn source-address 1.1.1.1 #配置PE源地址
-
配置ESI和E-Trunk功能实现双归双活
以PE1为例配置ESI和E-Trunk功能实现双归双活
lacp e-trunk system-id 00e0-fc00-0000 lacp e-trunk priority 1 e-trunk 1 peer-address 2.2.2.2 source-address 1.1.1.1 qu int eth-trunk 10 mode lacp-static e-trunk 1 e-trunk mode force-master esi 0000.1111.2222.1111.1111 qu int eth-trunk 10.1 mode l2 encapsulation dot1q vid 2 rewrite pop single bridge-domain 10 qu int g0/1/0 eth-trunk 10 qu
注: PE2的E-Trunk System-id需要和PE1一致
-
配置本端、远端MAC路由快速重路由功能
以PE1为例配置本端、远端MAC路由快速重路由功能
epvn vlan-extend private enable vlan-extend redirect enable local-remote frr enable qu
- 在CE多归场景中,通过MAC路由重定向功能,可以使连接同一个CE的PE设备都将去往该CE的MAC路由出接口重定向到本地AC接口,从而缩短转发路径,提升转发效率。
- 另外当其中一个PE上的AC接口故障时,MAC路由可以快速重定向出接口,通过另外的多活PE转发,提升可靠性
-
配置建立BGP EVPN对等体关系
以PE1为例配置建立BGPEVPN对等体关系
bgp 100 peer 10.0.2.2 as-number 100 peer 10.0.2.2 connect-interface loopback 1 peer 10.0.3.3 as-number 100 peer 10.0.3.3 connect-interface loopback 1 l2vpn-family evpn peer 10.0.2.2 enable peer 10.0.3.3 enable qu qu
-
配置CE通过Eth-Trunk接口接入PE
以CE1为例配置CE通过Eth-Trunk接口接入PE
vlan 2 qu int eth-trunk 10 portswitch port link-type trunk port trunk allow-pass vlan2 mode lacp-static qu int g0/1/0 eth-trunk 10 qu int g0/2/0 eth-trunk 10 qu
-
配置结果验证
在PE3上查看BGP EVPN邻居关系
dis bgp epvn peer
在PE3上查看四类路由
display bgp evpn all routing-table inclusive-route #type4 display bgp evpn all routing-table es-route #type3 display bgp evpn all routing-table mac-route #type2 display bgp evpn all routing-table ad-route #type1
在CE2上查看ARP表并pingCE1
dis arp
在PE3上查看evpna的MAC地址表
display evpn mac routing-table evpn-instance evpna verbose
3.2 EVPN承载三层业务
配置命令
配置L3VPN实例
ip vpn-instance vpna
route-distinguisher route-distinguisher #RD
vpn-target vpn-target [both | export-extcommunity | import-extcommunity] evpn #配置RT, 注意RT值后面需要添加关键字evpn
evpn mpls routing-enable #使能EVPN生成和发布IP前缀路由和IRB路由的功能
advertise l2vpn evpn #配置发布IP前缀类型的路由
- 创建一个名字为vpna的L3VPN实例,进入L3VPN实例视图,并配置RD和RT。注意RT值后面需要添加关键字evpn
- 在EVPNL3VPN业务场景中,当公网隧道采用MPLS或SR-MPLS隧道时,使能EVPN生成和发布IP前缀路由和IRB路由的功能,使本端设备向EVPN对等体发布IP前缀路由和IRB路由。当公网隧道采用VXLAN、SRv6等非MPLS类型隧道时,无需配置此命令
- 缺省情况下,VPN实例的本地交叉路由是不会上送给EVPN实例的,为了解决不同VPN实例互访问题,可以使能VPN实例向EVPN实例发布本地交叉功能,使VPN实例收集的本地交叉路由发送给EVPN实例,然后通过BGP EVPN对等体关系发送给远端设备
配置举例
配置需求
- 在网络中配置EVPN功能,实现三层流量互访
- CE1的网关为192.168.1.254/24、CE2的网关为192.168.2.254/24
- L3VPN实例名称vpna
- 各个PE的VPN实例vpna的RD值分别为100:1、200:1,RT值均为1:1
配置思路
-
在骨干网上配置IGP实现各个PE设备之间的互通
-
在骨干网上配置MPLS基本能力和MPLSLDP,建立MPLS LSP
-
配置PE上的L3VPN实例
以PE1为例配置PE上的L3VPN实例
ip vpn-instance vpna ipv4-family route-distinguisher 100:1 vpn-target 1:1 both evpn evpn mpls routing-enable qu qu
以PE1为例配置建立BGPEVPN对等体关系
bgp 100 peer 10.0.3.3 as-number 100 peer 10.0.3.3 connect-int loop0 l2vpn-family evpn peer 10.0.3.3 enable qu qu
-
配置CE接入PE,发布路由
以PE1为例配置CE接入PE
int g0/1/0 ip bind vpn-instance vpna ip add 192.168.1.254 24 qu
以PE1为例配置发布CE侧路由
bgp 100 ipv4-family vpn-instance vpna import-route direct qu qu
-
配置结果验证
在PE1上查看Type5路由的详细信息
dis bgp evpn all routing-table prefix-route 0:192.168.2.0:24
在PE1上查看vpna的路由表
dis ip routing-table vpn-instance vpna
最后在CE1上ping 192.168.2.1
本文来自博客园,作者:Qurare,严禁转载至CSDN平台, 其他转载请注明原文链接:https://www.cnblogs.com/konjac-wjh/p/17785171.html