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

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

SpineLeaf1Leaf2均为CE12800系列交换机,运行V200R005C10SPC607B607版本VRP系统Switch1Switch2均为S5700系列交换机,各VNIBD ID,接口/VMIP地址均如图中所示。Leaf1Leaf2同时作为VXLAN/三层网关,现需要通过基于IPv4网络分布式网关动态VXLAN实现各VM间的互通。

  1. 配置思路分析

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

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

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

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

1)在SpineLeaf1Leaf2上配置IP路由协议,保证Underlay网络三层互通。

2)在Switch1Switch2上配置基本VLAN

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

3)在Leaf1Leaf2之间配置的BGP EVPN对等体关系。

4)在Leaf1Leaf2上创建并配置VPN实例。

5)在Leaf1Leaf2上配置基于BDEVPN实例,相互在自己的EVPN实例中添加与对方VPN实例中IRT值相同的ERT

6)在Leaf1Leaf2上配置VXLAN业务接入点。

7)在Leaf1Leaf2上配置头端复制功能

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

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

2. 配置步骤

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

3)在Leaf1Leaf2之间配置的BGP EVPN对等体关系。

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

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

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

  • Leaf1上的配置

[~Leaf1] bgp 100

[*Leaf1-bgp] router-id 2.2.2.2

[*Leaf1-bgp] peer 3.3.3.3 as-number 100

[*Leaf1-bgp] peer 3.3.3.3 connect-interface LoopBack1

[*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-id 3.3.3.3

[*Leaf2-bgp] peer 2.2.2.2 as-number 100

[*Leaf2-bgp] peer 2.2.2.2 connect-interface LoopBack1

[*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

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

4)在Leaf1Leaf2上创建并配置VPN实例。

本示例所创建的VPN实例名称为vpn1Leaf1Leaf2上的RD值分别为20:220:3,用于与EVPN实例进行路由交叉的ERT/IRT值均为1:100,绑定的三层VNI5010

  • Leaf1上的配置

[Leaf1] ip vpn-instance vpn1

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

[Leaf1-vpn-instance-vpn1] ipv4-family

[Leaf1-vpn-instance-vpn1-af-ipv4] route-distinguisher 20:2  #---指定VPN实例的RD20:2

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

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

[Leaf1-vpn-instance-vpn1] quit

  • Leaf2上的配置

[Leaf2] ip vpn-instance vpn1

[Leaf2-vpn-instance-vpn1] vxlan vni 5010

[Leaf2-vpn-instance-vpn1] ipv4-family

[Leaf2-vpn-instance-vpn1-af-ipv4] route-distinguisher 20:3

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

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

[Leaf2-vpn-instance-vpn1] quit

5)在Leaf1Leaf2上配置基于BDEVPN实例。

按照表5-23所示配置Leaf1Leaf2中各BDEVPN实例的二层VNIRDERT/IRT,并在各EVPN实例中添加与对端VPN实例中配置的IRT值相等的ERT

  • Leaf1上的配置

[*Leaf1] bridge-domain 10

[*Leaf1-bd10] vxlan vni 10

[*Leaf1-bd10] evpn

[*Leaf1-bd10-evpn] route-distinguisher 1:10

[*Leaf1-bd10-evpn] vpn-target 10:1

[*Leaf1-bd10-evpn] vpn-target 1:100 export-extcommunity  #---添加与Leaf2vpn1实例中IRT值相同的ERT1:100

[*Leaf1-bd10-evpn] quit

[*Leaf1-bd10] quit

[*Leaf1] bridge-domain 20

[*Leaf1-bd20] vxlan vni 20

[*Leaf1-bd20] evpn

[*Leaf1-bd20-evpn] route-distinguisher 1:20

[*Leaf1-bd20-evpn] vpn-target 20:1

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

[*Leaf1-bd20-evpn] quit

[*Leaf1-bd20] quit

  • Leaf2上的配置

[*Leaf2] bridge-domain 20

[*Leaf2-bd20] vxlan vni 20

[*Leaf2-bd20] evpn

[*Leaf2-bd20-evpn] route-distinguisher 2:20

[*Leaf2-bd20-evpn] vpn-target 20:1

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

[*Leaf2-bd20-evpn] quit

[*Leaf2-bd20] quit

6)在Leaf1Leaf2上配置VXLAN业务接入点。

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

  • Leaf1上的配置

[~Leaf1] interface GE1/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.1 mode l2

[*Leaf1-GE1/0/1.1] encapsulation dot1q vid 10

[*Leaf1-GE1/0/1.1] bridge-domain 10

[*Leaf1-GE1/0/1.1] quit

[*Leaf1] interface GE1/0/1.2 mode l2

[*Leaf1-GE1/0/1.2] encapsulation dot1q vid 20

[*Leaf1-GE1/0/1.2] bridge-domain 20

[*Leaf1-GE1/0/1.2] quit

[*Leaf1] commit

  • Leaf2上的配置

[~Leaf2] interface GE1/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.2 mode l2

[*Leaf2-GE1/0/1.2] encapsulation dot1q vid 20

[*Leaf2-GE1/0/1.2] bridge-domain 20

[*Leaf2-GE1/0/1.2] quit

[*Leaf2] commit

7)在Leaf1Leaf2上配置头端复制功能

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

  • Leaf1上的配置

[~Leaf1] interface nve 1

[*Leaf1-Nve1] source 2.2.2.2

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

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

[*Leaf1-Nve1] quit

[*Leaf1] commit

  • Leaf2上的配置

[~Leaf2] interface nve 1

[*Leaf2-Nve1] source 3.3.3.3

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

[*Leaf2-Nve1] quit

[*Leaf2] commit

8)在Leaf1Leaf2上配置VXLAN三层网关。

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

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

  • Leaf1上的配置

[~Leaf1] interface vbdif10

[*Leaf1-Vbdif10] ip binding vpn-instance vpn1

[*Leaf1-Vbdif10] ip address 192.168.10.1 255.255.255.0

[*Leaf1-Vbdif10] mac-address 0000-005e-0001

[*Leaf1-Vbdif10] vxlan anycast-gateway enable

[*Leaf1-Vbdif10] arp collect host enable

[*Leaf1-Vbdif10] quit

[~Leaf1] interface vbdif20

[*Leaf1-Vbdif20] ip binding vpn-instance vpn1

[*Leaf1-Vbdif20] ip address 192.168.20.1 255.255.255.0

[*Leaf1-Vbdif20] mac-address 0000-005e-0002

[*Leaf1-Vbdif20] vxlan anycast-gateway enable

[*Leaf1-Vbdif10] arp collect host enable

[*Leaf1-Vbdif10] quit

[*Leaf1] commit

  • Leaf2上的配置

[~Leaf2] interface vbdif20

[*Leaf2-Vbdif20] ip binding vpn-instance vpn1

[*Leaf2-Vbdif20] ip address 192.168.20.1 255.255.255.0

[*Leaf2-Vbdif20] mac-address 0000-005e-0002

[*Leaf2-Vbdif20] vxlan anycast-gateway enable

[*Leaf2-Vbdif10] arp collect host enable

[*Leaf2-Vbdif10] quit

[*Leaf2] commit

3. 配置结果验证

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

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

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

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

4)在各主机相互进行ping操作后,在Leaf1Leaf2上执行display bgp evpn all routing-table命令,可以看到已生成Type2MAC/IP通告路由)、Type3Inclusive Multicast路由)和Type5IP前缀路由)类型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专著。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

茶乡浪子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值