基于IPv4网络分布式网关动态VXLAN配置示例

图5-33是基于IPv4网络分布式网关动态VXLAN配置示例的拓扑结构。某企业在研发部和市场部的数据中心中都拥有自己的VM,服务器1属于研发部,VM1在192.168.10.0/24网段中,被划分到VLAN 10,在VXLAN网络中,被分配到BD 10(映射VNI 10网段);服务器2和服务器3均属于市场部,VM2和VM3均在192.168.20.0/24网段中,被划分到VLAN 20,在VXLAN网络中,被分配到BD 20(映射VNI 20网段)。

Spine、Leaf1和Leaf2均为CE12800系列交换机,运行V200R005C10SPC607B607版本VRP系统,Switch1和Switch2均为S5700系列交换机,各VNI、BD ID,接口/VM的IP地址均如图中所示。Leaf1和Leaf2同时作为VXLAN二/三层网关,现需要通过基于IPv4网络分布式网关动态VXLAN实现各VM间的互通。

  1. 配置思路分析

在建立VXLAN隧道,首先要在Overlay网络中实现三层互通,故先配置Spine、Leaf1和Leaf2三者之间网络的三层互通,本示例采用OSPF路由实现。另外,在接入层Underlay网络要配置Switch1和Switch2的基本VLAN功能。

本示例同样包括VM2与VM3之间的同一子网互通和VM1与VM2、VM3之间的跨子网互通两方面需求,但与集中式网基于IPv4网络动态VXLAN的隧道建立方式不同,基于IPv4网络分布式网关动态VXLAN中的VXLAN隧道均是直接在Leaf节点间建立的,Spine节点无需感知。

根据5.4.1节介绍的基于IPv4网络分布式网关动态VXLAN的配置任务可知,主要配置都在Leaf节点上。本示例中,在Leaf1和Leaf2上要同时配置BGP EVPN对等体、VPN实例、EVPN实例、VLAN三层网关。Leaf1和Leaf2同时担当VXLAN二/三层网关角色,相同BD的VBDIF接口配置相同的IP地址和MAC地址。表5-23是Leaf1和Leaf2上的VPN实例和EVPN实例的RD、ERT与IRT配置规划。为了简便起见,和Leaf1和Leaf2采用了相同的VPN实例ERT和IRT,且各实例的ERT值和IRT值相等。

综上所述,本示例的基本配置思路如下:

(1)在Spine、Leaf1、Leaf2上配置IP路由协议,保证Underlay网络三层互通。

(2)在Switch1、Switch2上配置基本VLAN。

本示例与5.2.8节中示例的Underlay网络和接入层网络都相同,故以上第(1)、(2)项配置任务的配置均与5.2.8节对应配置任务的配置相同,参见即可。

(3)在Leaf1与Leaf2之间配置的BGP EVPN对等体关系。

(4)在Leaf1、Leaf2上创建并配置VPN实例。

(5)在Leaf1、Leaf2上配置基于BD的EVPN实例,相互在自己的EVPN实例中添加与对方VPN实例中IRT值相同的ERT。

(6)在Leaf1、Leaf2上配置VXLAN业务接入点。

(7)在Leaf1、Leaf2上配置头端复制功能。

(8)在Leaf1、Leaf2上配置VXLAN三层网关,绑定VPN实例,并使能分布式网关功能并配置发布主机路由功能。

(9)配置各VM的IP地址和默认网关(为VM所在BD对应的VBDIF接口IP地址)(略)。

  1. 配置步骤

(1)、(2)项配置任务的具体配置参见5.2.8节对应配置任务的配置方法。下面仅介绍第(3)~(8)项配置任务的配置方法。

(3)在Leaf1与Leaf2之间配置的BGP EVPN对等体关系。

本示例中需要在Leaf1与Leaf2直接建立VXLAN隧道,同时负责同子网和跨子网报文的传输,故Leaf1与Leaf2需要直接建立BGP EVPN对等体关系。

【说明】本示例不在Spine上配置RR功能,故在Spine上无需配置与Leaf1与Leaf2建立BGP EVPN对等体关系。但如果在Spine上配置RR功能,则仅需要配置Leaf1和Leaf2与Spine建立BGP EVPN对等体关系。

本示例中,Leaf1和Leaf2向BGP VPN对等体发布所连服务器的IRB类型主机路由。

  • Leaf1上的配置

\~Leaf1 bgp 100

\*Leaf1-bgp router-id2.2.2.2

\*Leaf1-bgp peer 3.3.3.3as-number100

\*Leaf1-bgp peer 3.3.3.3 connect-interfaceLoopBack1

\*Leaf1-bgp l2vpn-family evpn

\*Leaf1-bgp-af-evpn peer 3.3.3.3 enable

\*Leaf1-bgp-af-evpn peer 3.3.3.3 advertise irb#---向Leaf2发布IRB类型主机路由

\*Leaf1-bgp-af-evpn quit

\*Leaf1-bgp-vpn1 quit

\*Leaf1-bgp quit

  • Leaf2上的配置

\~Leaf2 bgp 100

\*Leaf2-bgp router-id3.3.3.3

\*Leaf2-bgp peer 2.2.2.2as-number100

\*Leaf2-bgp peer 2.2.2.2 connect-interfaceLoopBack1

\*Leaf2-bgp l2vpn-family evpn

\*Leaf2-bgp-af-evpn peer 2.2.2.2 enable

\*Leaf2-bgp-af-evpn peer 2.2.2.2 advertise irb

\*Leaf2-bgp-af-evpn quit

\*Leaf2-bgp-vpn1 quit

\*Leaf2-bgp quit

以上配置完成后,在Leaf1和Leaf2上执行display bgp evpn peer 命令,查看他们之间BGP EVPN对等体关系建立情况。图5-34是在Leaf1上执行display bgp evpn peer 命令的输出,从中可以见到,Leaf1与Leaf2之间建立了BGP EVPN对等体关系。

(4)在Leaf1、Leaf2上创建并配置VPN实例。

本示例所创建的VPN实例名称为vpn1,Leaf1、Leaf2上的RD值分别为20:2、20:3,用于与EVPN实例进行路由交叉的ERT/IRT值均为1:100,绑定的三层VNI为5010。

  • Leaf1上的配置

Leaf1 ip vpn-instancevpn1

Leaf1-vpn-instance-vpn1 vxlan vni 5010 #---配置三层VNI 5010

Leaf1-vpn-instance-vpn1 ipv4-family

Leaf1-vpn-instance-vpn1-af-ipv4 route-distinguisher20:2 #---指定VPN实例的RD为20:2

Leaf1-vpn-instance-vpn1-af-ipv4 vpn-target 1:100both evpn#---指定VPN实例的ERT/IRT均为1:100

Leaf1-vpn-instance-vpn1-af-ipv4 quit

Leaf1-vpn-instance-vpn1 quit

  • Leaf2上的配置

Leaf2 ip vpn-instancevpn1

Leaf2-vpn-instance-vpn1 vxlan vni 5010

Leaf2-vpn-instance-vpn1 ipv4-family

Leaf2-vpn-instance-vpn1-af-ipv4 route-distinguisher20:3

Leaf2-vpn-instance-vpn1-af-ipv4 vpn-target 1:100both evpn

Leaf2-vpn-instance-vpn1-af-ipv4 quit

Leaf2-vpn-instance-vpn1 quit

(5)在Leaf1、Leaf2上配置基于BD的EVPN实例。

按照表5-23所示配置Leaf1、Leaf2中各BD下EVPN实例的二层VNI、RD、ERT/IRT,并在各EVPN实例中添加与对端VPN实例中配置的IRT值相等的ERT。

  • Leaf1上的配置

\*Leaf1 bridge-domain10

\*Leaf1-bd10 vxlan vni10

\*Leaf1-bd10 evpn

\*Leaf1-bd10-evpn route-distinguisher1:10

\*Leaf1-bd10-evpn vpn-target10:1

\*Leaf1-bd10-evpn vpn-target 1:100export-extcommunity #---添加与Leaf2上vpn1实例中IRT值相同的ERT值1:100

\*Leaf1-bd10-evpn quit

\*Leaf1-bd10 quit

\*Leaf1 bridge-domain20

\*Leaf1-bd20 vxlan vni20

\*Leaf1-bd20 evpn

\*Leaf1-bd20-evpn route-distinguisher1:20

\*Leaf1-bd20-evpn vpn-target20:1

\*Leaf1-bd20-evpn vpn-target 1:100export-extcommunity

\*Leaf1-bd20-evpn quit

\*Leaf1-bd20 quit

  • Leaf2上的配置

\*Leaf2 bridge-domain20

\*Leaf2-bd20 vxlan vni20

\*Leaf2-bd20 evpn

\*Leaf2-bd20-evpn route-distinguisher2:20

\*Leaf2-bd20-evpn vpn-target20:1

\*Leaf2-bd20-evpn vpn-target 1:100export-extcommunity

\*Leaf2-bd20-evpn quit

\*Leaf2-bd20 quit

(6)在Leaf1、Leaf2上配置VXLAN业务接入点。

本示例采用基于 dot1q二层子接口业务接入方式,在Leaf1创建dot1q业务流封类型的GE1/0/0.1和GE1/0/0.2两个二层子接口,GE1/0/0.1子接口封装VLAN 10,绑定BD 10,GE1/0/0.2子接口封装VLAN 20,绑定BD 20。在Leaf2创建dot1q业务流封类型的GE1/0/0.2二层子接口,封装VLAN 20,绑定BD 20。

  • Leaf1上的配置

\~Leaf1 interfaceGE1/0/1

\*Leaf1-GE1/0/1 undo shutdown

\*Leaf1-GE1/0/1 port link-type trunk

\*Leaf1-GE1/0/1 quit

\*Leaf1 interface GE1/0/1.1mode l2

\*Leaf1-GE1/0/1.1 encapsulation dot1q vid10

\*Leaf1-GE1/0/1.1 bridge-domain10

\*Leaf1-GE1/0/1.1 quit

\*Leaf1 interface GE1/0/1.2mode l2

\*Leaf1-GE1/0/1.2 encapsulation dot1q vid20

\*Leaf1-GE1/0/1.2 bridge-domain20

\*Leaf1-GE1/0/1.2 quit

\*Leaf1 commit

  • Leaf2上的配置

\~Leaf2 interfaceGE1/0/1

\*Leaf2-GE1/0/1 undo shutdown

\*Leaf2-GE1/0/1 port link-type trunk

\*Leaf2-GE1/0/1 quit

\*Leaf2 interface GE1/0/1.2mode l2

\*Leaf2-GE1/0/1.2 encapsulation dot1q vid20

\*Leaf2-GE1/0/1.2 bridge-domain20

\*Leaf2-GE1/0/1.2 quit

\*Leaf2 commit

(7)在Leaf1、Leaf2上配置头端复制功能。

因为在分布式网关场景中,VXLAN隧道是在各Leaf节点间直接建立的,Spine节点无需配置VXLAN功能,故Spine上无需配置头端复制功能。因为Leaf1同时连接了VNI 10中的VM1和VNI 20中的VM2,故要同时配置这两个VXLAN网段的头端复制列表;Leaf2上仅连接了VNI 20中的VM3,故仅需配置该VXLAN网段的头端复制列表。本示例中,NVE接口的源IP地址为对应设备的VTEP IP地址,采用各自的Loopback1接口IPv4地址。

  • Leaf1上的配置

\~Leaf1 interfacenve 1

\*Leaf1-Nve1 source2.2.2.2

\*Leaf1-Nve1 vni 10head-end peer-list protocol bgp

\*Leaf1-Nve1 vni 20head-end peer-list protocol bgp

\*Leaf1-Nve1 quit

\*Leaf1 commit

  • Leaf2上的配置

\~Leaf2 interfacenve 1

\*Leaf2-Nve1 source3.3.3.3

\*Leaf2-Nve1 vni 20head-end peer-list protocol bgp

\*Leaf2-Nve1 quit

\*Leaf2 commit

(8)在Leaf1、Leaf2上配置VXLAN三层网关。

在分布式网关动态VXLAN中,VXLAN三层网关需要绑定VPN实例,使能分布式网关功能和向BGP EVPN对等体发布IRB类型主机路由功能。

因为Leaf1和Leaf2上均连接有BD 20下的VM,在分布式网关动态VXLAN中,需要在Leaf1和Leaf2上创建的VBDIF20接口配置相同的IP地址(因为本示例为IPv4 Overlay网络,故VBDIF接口IP地址也是IPv4地址)和MAC地址(本示例为0000-005e-0002)。

  • Leaf1上的配置

\~Leaf1 interfacevbdif10

\*Leaf1-Vbdif10 ip binding vpn-instancevpn1

\*Leaf1-Vbdif10 ip address192.168.10.1 255.255.255.0

\*Leaf1-Vbdif10 mac-address0000-005e-0001

\*Leaf1-Vbdif10 vxlan anycast-gateway enable

\*Leaf1-Vbdif10 arp collect host enable

\*Leaf1-Vbdif10 quit

\~Leaf1 interfacevbdif20

\*Leaf1-Vbdif20 ip binding vpn-instancevpn1

\*Leaf1-Vbdif20 ip address192.168.20.1 255.255.255.0

\*Leaf1-Vbdif20 mac-address0000-005e-0002

\*Leaf1-Vbdif20 vxlan anycast-gateway enable

\*Leaf1-Vbdif10 arp collect host enable

\*Leaf1-Vbdif10 quit

\*Leaf1 commit

  • Leaf2上的配置

\~Leaf2 interfacevbdif20

\*Leaf2-Vbdif20 ip binding vpn-instancevpn1

\*Leaf2-Vbdif20 ip address192.168.20.1 255.255.255.0

\*Leaf2-Vbdif20 mac-address0000-005e-0002

\*Leaf2-Vbdif20 vxlan anycast-gateway enable

\*Leaf2-Vbdif10 arp collect host enable

\*Leaf2-Vbdif10 quit

\*Leaf2 commit

  1. 配置结果验证

以上配置完成后,可进行以下配置结果验证。

(1)在Leaf1和Leaf2上执行display vxlan tunnel 命令,查看他们之间的VXLAN隧道建立情况。图5-35是在Leaf1上执行display vxlan tunnel 命令的输出,从可以见到Leaf1已与Leaf2成功建立了动态VXLAN隧道。

(2)在VM1上分别ping VM2和VM3,在VM2上分别ping VM1和VM3,验证它们是否可以互通。图5-36是VM1成功ping通VM2和VM3的输出,证明VM1可与不同子网的VM2和VM3之间互通;图5-37是VM2成功ping通VM1和VM3的输出,证明VM2可与不同子网的VM1间,以及同子网的VM3之间互通。

(3)在VM1 ping VM3后,Leaf1会向Leaf2发布IRB类型的MAC/IP通告路由,其中包括VM1的32位掩码的主机IP地址192.168.10.10和MAC地址5489-98f4-5e02。图5-38是Leaf1向Leaf2发布的MAC/IP通告路由。Leaf2收到后,就可以获取到VM1的IP地址和MAC地址,生成对应的EVPN路由。

(4)在各主机相互进行ping操作后,在Leaf1和Leaf2上执行display bgp evpn all routing-table 命令,可以看到已生成Type2(MAC/IP通告路由)、Type3(Inclusive Multicast路由)和Type5(IP前缀路由)类型EVPN路由。

图5-39是在Leaf2上执行display bgp evpn all routing-table 命令输出中MAC/IP通告路由部分。从中可以见到各VM、三层网关VBDIF接口的IP地址和MAC地址。图5-40是在Leaf2上执行display bgp evpn all routing-table 命令输出中IP前缀路由部分,从中可以见到两Leaf所连主机的32位掩码主机路由和对应的网段路由,以及发布该EVPN路由的VETP设备(从NextHop字段得出)。

通过以上验证,已可证明本示例以上配置是正确且成功的。

以上内容摘自笔者刚刚发布的2026年新作《华为VXLAN+BGP EVPN实战指南------数据中心网络工程师进阶之路》(电子版,无纸质版,需要者请私信),全国唯一的华为数据中心网络核心技术VXLAN和BGP EVPN专著。

相关推荐
酣大智3 小时前
IS-IS路由协议
网络·路由·isis
果丁智能10 小时前
智能锁赋能网约房民宿数字化管控:身份核验+远程授权,筑牢安全防线、降本增效
网络·数据库·人工智能·安全·智能家居
wp123_110 小时前
射频前端无源器件观察:Coilcraft WBC1-1TLC vs TONEVEE WBT1-1CT 国产与进口巴伦变压器的技术博弈
网络
映翰通朱工12 小时前
工业4G网关无公网IP远程运维实战(内网终端异地访问方案)
运维·服务器·网络·安全·智能路由器
天南散修12 小时前
MT7916 BA流程
网络·驱动开发·wifi·802.11
Yang961112 小时前
多功能一体化,成都鼎讯 LDMN-JM1 满足石油煤矿设备检定与训练需求
网络·能源
IP老炮不瞎唠12 小时前
Python 价格监控如何实现?思路与实用方法分享
运维·服务器·网络
睡不醒男孩03082313 小时前
CLup 6.x 版本中针对StarRocks 存算一体集群的完整操作手册
java·服务器·网络·clup
dog25013 小时前
网络长尾延时的重尾本质
开发语言·网络·php