今天这篇教程不讲枯燥的理论直接带大家做一个最经典的实验两个不同网段的电脑PC1 和 PC2如何通过 VXLAN EVPN 实现自动互通。只要你有华为模拟器eNSP或真机跟着敲命令就能成功一、 实验拓扑与规划1. 拓扑图解析我们模拟两个园区中间一台路由器AR1模拟骨干网。CE1 CE2作为核心交换机VTEP节点负责 VXLAN 封装和解封装。LSW1 LSW2接入层交换机连接终端 PC。AR1模拟中间的传输网络。2. 地址与资源规划表设备接口/IP作用备注AR1Loopback0: 3.3.3.3/32模拟公网/骨干可达性OSPF Area 0GE0/0/0: 10.10.11.2/24连接 CE1GE0/0/1: 10.10.22.2/24连接 CE2CE1Loopback0: 1.1.1.1/32VTEP 源地址OSPF Area 0GE0/0/1: 10.10.11.1/24连接 AR1GE1/0/0: Trunk连接 LSW1允许 VLAN 10VBDIF 10: 192.168.10.1/24PC1 网关绑定 CDMA_OutbandCE2Loopback0: 2.2.2.2/32VTEP 源地址OSPF Area 0GE0/0/1: 10.10.22.1/24连接 AR1GE1/0/0: Trunk连接 LSW2允许 VLAN 20VBDIF 20: 192.168.20.1/24PC2 网关绑定 CDMA_OutbandPC1IP: 192.168.10.123终端网关指向 192.168.10.1PC2IP: 192.168.20.123终端网关指向 192.168.20.1关键概念提示L2 VNI (100, 200)用于标识不同的二层广播域相当于传统 VLAN ID 的扩展。L3 VNI (123)用于三层网关互联所有VPN 实例共用一个 L3 VNI。CDMA_Outband实例逻辑隔离的路由表确保不同租户数据不混淆。二、 第一步打通底层网络Underlay目标让 CE1 和 CE2 的 Loopback 接口能互相 Ping 通。这是建立 VXLAN 隧道的基础。1. 配置 AR1中间路由器sysname AR1 interface GigabitEthernet0/0/0 undo shutdown ip address 10.10.11.2 255.255.255.0 # interface GigabitEthernet0/0/1 undo shutdown ip address 10.10.22.2 255.255.255.0 # interface LoopBack0 ip address 3.3.3.3 32 # ospf 1 router-id 3.3.3.3 area 0.0.0.0 network 10.10.11.0 0.0.0.255 network 10.10.22.0 0.0.0.255 network 3.3.3.3 0.0.0.02. 配置左侧 CE1sysname CE1 # 配置互联接口 interface GigabitEthernet0/0/1 undo shutdown ip address 10.10.11.1 255.255.255.0 # interface LoopBack0 ip address 1.1.1.1 32 # # 配置 OSPF ospf 1 router-id 1.1.1.1 area 0.0.0.0 network 10.10.11.0 0.0.0.255 network 1.1.1.1 0.0.0.03. 配置右侧 CE2sysname CE2 # 配置互联接口 interface GigabitEthernet0/0/1 undo shutdown ip address 10.10.22.1 255.255.255.0 # interface LoopBack0 ip address 2.2.2.2 32 # # 配置 OSPF ospf 1 router-id 2.2.2.2 area 0.0.0.0 network 10.10.22.0 0.0.0.255 network 2.2.2.2 0.0.0.0验证点在 CE1 上执行ping -a 1.1.1.1 2.2.2.2如果能通说明 Underlay 没问题。三、 第二步配置接入层与业务网关Overlay 基础目标让 PC 能 Ping 通自己的网关并规划好 VXLAN 参数。1. 接入交换机配置LSW1 LSW2左侧LSW1 :vlan 10 interface GigabitEthernet0/0/1 port link-type access port default vlan 10 # interface GigabitEthernet0/0/2 port link-type trunk port trunk allow-pass vlan 10右侧LSW2 :vlan 20 interface GigabitEthernet0/0/1 port link-type access port default vlan 20 # interface GigabitEthernet0/0/2 port link-type trunk port trunk allow-pass vlan 202. CE1 业务配置# 创建桥接域 BD 10 bridge-domain 10 vxlan vni 100 # 关联二层 VNI # 配置下行接口划入 BD interface GigabitEthernet1/0/0 undo shutdown port link-type trunk port trunk allow-pass vlan 10 # interface GigabitEthernet1/0/0.10 mode l2 encapsulation dot1q vid 10 bridge-domain 10 # 配置三层网关 VBDIF interface Vbdif10 ip address 192.168.10.1 243. CE2 业务配置# 创建桥接域 BD 20 bridge-domain 20 vxlan vni 200 # 关联二层 VNI # 配置下行接口划入 BD interface GigabitEthernet1/0/0 undo shutdown port link-type trunk port trunk allow-pass vlan 20 # interface GigabitEthernet1/0/0.20 mode l2 encapsulation dot1q vid 20 bridge-domain 20 # 配置三层网关 VBDIF interface Vbdif20 ip address 192.168.20.1 24验证点配置 PC1 IP 为 192.168.10.123Ping 192.168.10.1 应该通。PC2 同理。此时两边还互不相通。四、 第三步配置 BGP EVPN 控制平面目标让 CE1 和 CE2 交换 MAC 地址和主机路由信息。1. CE1 配置evpn-overlay enable bgp 100 router-id 1.1.1.1 peer 2.2.2.2 as-number 100 peer 2.2.2.2 connect-interface LoopBack0 # l2vpn-family evpn policy vpn-target peer 2.2.2.2 enable peer 2.2.2.2 advertise irb # 关键发布三层 IRB 路由2. CE2 配置evpn-overlay enable bgp 100 router-id 2.2.2.2 peer 1.1.1.1 as-number 100 peer 1.1.1.1 connect-interface LoopBack0 # l2vpn-family evpn policy vpn-target peer 1.1.1.1 enable peer 1.1.1.1 advertise irb # 关键发布三层 IRB 路由注意必须在 BGP 视图下先输入l2vpn-family evpn进入地址簇视图再配置 peer enable。五、 第四步配置 VRF实例与 EVPN 绑定目标将业务隔离在实例中并启用 EVPN 自动发现功能。1. CE1 配置# 1. 创建实例 ip vpn-instance CDMA_Outband ipv4-family route-distinguisher 100:1 vpn-target 100:1 export-extcommunity evpn vpn-target 100:1 import-extcommunity evpn vxlan vni 123 # 三层 VNI两端必须一致 # 2. 将网关绑定到 实例 interface Vbdif10 ip binding vpn-instance CDMA_Outband arp collect host enable # 开启主机路由收集否则无法生成 Type5 路由 # 3. 在 BD 中启用 EVPN bridge-domain 10 evpn route-distinguisher 100:1 vpn-target 100:1 export-extcommunity vpn-target 100:1 import-extcommunity2. CE2 配置# 1. 创建实例 ip vpn-instance CDMA_Outband ipv4-family route-distinguisher 100:1 vpn-target 100:1 export-extcommunity evpn vpn-target 100:1 import-extcommunity evpn vxlan vni 123 # 三层 VNI两端必须一致 # 2. 将网关绑定到 实例 interface Vbdif20 ip binding vpn-instance CDMA_Outband arp collect host enable # 开启主机路由收集 # 3. 在 BD 中启用 EVPN bridge-domain 20 evpn route-distinguisher 100:1 vpn-target 100:1 export-extcommunity vpn-target 100:1 import-extcommunity六、 第五步建立 VXLAN 隧道NVE目标建立数据转发通道。这里使用 BGP 自动发现对端比手动指定更灵活。1. CE1 配置interface Nve1 source 1.1.1.1 # 使用 Loopback 接口作为源 vni 100 head-end peer-list protocol bgp # 二层 VNI 100 走 BGP 自动发现 vni 123 head-end peer-list protocol bgp # 三层 VNI 123 走 BGP 自动发现2. CE2 配置interface Nve1 source 2.2.2.2 # 使用 Loopback 接口作为源 vni 200 head-end peer-list protocol bgp # 二层 VNI 200 走 BGP 自动发现 vni 123 head-end peer-list protocol bgp # 三层 VNI 123 走 BGP 自动发现七、 最终验证与排错1. 验证连通性PC1 Ping PC2ping 192.168.20.123应该能通查看 BGP EVPN 路由display bgp evpn all routing-table你应该能看到 Type 2 (MAC/IP) 和 Type 5 (IP Prefix) 路由。查看 VXLAN 隧道display vxlan tunnel状态应为 UP。2. 常见坑点小白必看Ping 不通检查arp collect host enable是否配置。如果没有这条命令网关不会主动学习主机路由也就不会通过 EVPN 发布给对端。BGP 没起来检查 Underlay OSPF 是否真的通了Loopback 口是否能互相 Ping 通。VNI 不匹配确保两端的 L3 VNI (123) 完全一致L2 VNI (100/200) 可以不同但要在 NVE 接口正确引用。忘记开 EVPN全局视图下必须敲evpn-overlay enable部分新版本默认开启老版本必须敲。结语通过这个实验我们不仅实现了跨园区的互通更重要的是理解了“控制面与转发面分离”的思想。EVPN 解决了传统 VXLAN 泛洪的问题让大规模云数据中心网络成为可能。如果你觉得这篇文章对你有帮助欢迎点赞收藏