2024年6月3日发(作者:)

BGP_EVPN案例

一、BGP_EVPN测试简介

1.1

BGP_EVPN简介

EVPN(Ethernet Virtual Private Network)是一种用于二层网络互联的VPN技

术。EVPN技术采用类似于BGP/MPLS IP VPN的机制,在BGP协议的基础上定义

了一种新的网络层可达信息NLRI(Network Layer Reachability Information)即EVPN

NLRI,EVPN NLRI定义了几种新的BGP EVPN路由类型,用于处在二层网络的不同

站点之间的MAC地址学习和发布。

原有的VXLAN实现方案没有控制平面,是通过数据平面的流量泛洪进行

VTEP发现和主机信息(包括IP地址、MAC地址、VNI、网关VTEP IP地址)学习

的,这种方式导致VXLAN网络存在很多泛洪流量。为了解决这一问题,VXLAN

引入了EVPN作为控制平面,通过在VTEP之间交换BGP EVPN路由实现VTEP的

自动发现、主机信息相互通告等功能,从而避免了不必要的数据流量泛洪。

1.2

BGP_EVPN路由

EVPN(Ethernet Virtual Private Network)技术采用类似于BGP/MPLS IP VPN

的机制,在BGP协议的基础上定义了一种新的NLRI(Network Layer Reachability

Information,网络层可达信息)即EVPN NLRI,EVPN NLRI定义了新的BGP EVPN

路由类型,用于处在三层网络的不同站点之间的IP地址学习和发布。

在动态VXLAN隧道创建中,EVPN作为VXLAN控制平面协议,会使用到EVPN

NLRI中定义的IP前缀类型(IP Prefix Route)路由,用于传递VTEP地址和主机信

息,可以使VTEP(VXLAN Tunnel Endpoints)发现和主机信息学习从数据平面转

移到控制平面。

IP前缀路由是Type5路由,该类型路由的报文格式如图1所示:

图1 IP前缀路由的报文格式:

各字段的解释如下表所示:

该类型路由的IP Prefix Length和IP Prefix字段既可以携带主机IP地址,也可

以携带网段地址:

⚫ 当携带主机IP地址时,在VXLAN控制平面中主要用于主机IP路由通告。

⚫ 当携带网段地址时,通过传递该类型路由,可以实现VXLAN网络中的主

机访问外部网络。

1.3

相关概念

VTEP(VXLAN Tunnel Endpoints)

VTEP是VXLAN隧道端点,封装在NVE中,用于VXLAN报文的封装和解封装。

VTEP与物理网络相连,分配有物理网络的IP地址,该地址与虚拟网络无关。

VXLAN报文中源IP地址为本节点的VTEP地址,VXLAN报文中目的IP地址为对端

节点的VTEP地址,一对VTEP地址就对应着一个VXLAN隧道。

NVE(Network Virtualization Edge)

网络虚拟边缘节点NVE,实现网络虚拟化功能的网络实体。报文经过NVE封

装转换后,NVE间就可基于三层基础网络建立二层虚拟化网络。

VNI(VXLAN Network Identifier)

VXLAN网络标识VNI类似VLAN ID,用于区分VXLAN段。

一个VNI表示一个租户,即使多个终端用户属于同一个VNI,也表示一个租

户。

VNI和VPN实例进行关联,用于VXLAN报文跨子网的转发。

EVPN-VPN-Target

每个VPN实例关联一个或多个EVPN-VPN-Target。有两类EVPN-VPN-Target:

Export EVPN-VPN-Target:Export EVPN-VPN-Target属性会携带在EVPN路由

中发送到远端的EVPN对等体。

Import EVPN-VPN-Target:Import EVPN-VPN-Target属性通过与EVPN路由

中携带的Export EVPN-VPN-Target属性匹配来决定哪些EVPN路由能交叉

到本地的VPN实例IPv4地址族的路由表中。

EVPN-VPN-Target属性控制EVPN路由的收发,进行EVPN路由交叉时,EVPN

路由中携带的Export EVPN-VPN-Target属性中如果有一个与本地VPN实例IPv4地

址族下的配置的Import EVPN-VPN-Target一致,即可交叉成功。