VXLAN 集中式网关实验与分析(H3C)

网络扑图

在现代数据中心网络中,VXLAN(Virtual eXtensible Local Area Network)技术因其突破传统 VLAN 4096 个 ID 限制的能力,广泛应用于大规模、多租户环境的二层网络扩展。集中式网关模式作为 VXLAN 的一种典型部署方式,通过在核心交换机上集中处理三层路由和 VXLAN 隧道,简化了网络架构设计,提高了管理效率。本文通过一个基于 VXLAN 集中式网关的实验,详细讲解如何利用集中式网关实现跨站点二层通信及三层路由功能。

实验基于五台 H3C 交换机(SW-A、SW-B、SW-C、SW-D 和 Access-1)的配置,模拟一个数据中心网络场景,其中 SW-D 作为集中式网关交换机,负责 VXLAN 隧道的终止和三层路由;SW-A、SW-B、SW-C 作为边缘交换机,通过 VXLAN 隧道与 SW-D 互联,承载客户端设备的二层流量;H3C 作为 SW-B 下接入的交换机,扩展客户端接入能力。Underlay 网络通过 OSPF 协议建立,确保 IP 连通性。

实验目标与内容

本文的目标是通过一个精心设计的实验,展示 VXLAN 集中式网关的工作原理、配置方法及其在数据中心网络中的应用。实验将重点讲解以下内容:

  • VXLAN 集中式网关概念:介绍集中式网关的架构、VNI(VXLAN Network Identifier)、VTEP 角色以及与分布式网关的区别,帮助读者理解其核心优势。

  • 网络拓扑设计:详细描述实验的网络架构,包括 SW-D 作为集中式网关,SW-A、SW-B、SW-C 通过 VXLAN 隧道连接,Access-1 作为接入层交换机扩展客户端接入,客户端设备通过 VLAN 接入二层广播域。

  • Underlay 网络搭建:展示如何使用 OSPF 协议在 SW-A、SW-B、SW-C、SW-D、Access-1 上配置 IP 路由,确保 VTEP 之间的三层连通性,为 VXLAN 隧道提供可靠的底层网络。

  • VXLAN 隧道及网关配置:深入讲解 SW-D 上的集中式网关配置,包括 VSI、隧道及三层网关接口,以及 SW-A、SW-B、SW-C、Access-1 的边缘和接入配置,突出配置的关键点和注意事项。

  • 二层和三层通信验证:通过客户端设备测试,验证 VXLAN 网络内二层互通及三层路由功能,展示 PC 间在 VNI 10 和 VNI 20 内的通信。

实验背景与意义

本实验模拟了一个数据中心场景,SW-A、SW-B、SW-C 代表不同站点,连接虚拟机或服务器;SW-D 作为集中式网关,统一处理 VXLAN 隧道的封装/解封装及三层路由需求;Access-1 作为接入层交换机,扩展 SW-B 的客户端接入能力。实验使用 VXLAN ID 10(VSI vpna)和 VXLAN ID 20(VSI vpnb)构建两个二层广播域,客户端通过 VLAN 1000 和 2000 接入,映射到 VXLAN 网络,实现跨站点通信及与外部网络的互联。

通过本文的讲解,读者将:

  • 掌握 VXLAN 集中式网关的基本原理和应用场景,理解其在简化网络管理的价值。

  • 学习如何在 H3C 设备上配置集中式网关,包括 Underlay 网络、VXLAN 隧道及三层网关设置。

  • 了解如何验证和调试集中式网关网络,解决常见的配置和通信问题。

  • 获得可复现的实验指导,适合网络工程师、数据中心管理员或学习网络虚拟化的学生。

实验步骤

1、接口 IP 地址配置

SW-D

vlan 10 to 12 // 创建 VLAN 10 到 12,用于划分 Underlay 网络的逻辑接口
#
interface LoopBack0
 ip address 1.1.1.1 255.255.255.255 // 配置 Loopback0 作为 VTEP 的标识 IP,保持唯一性
#
interface Vlan-interface10
 ip address 10.1.1.1 255.255.255.252 // 配置 VLAN 10 接口 IP,与 SW-A 建立直接链路
#
interface Vlan-interface11
 ip address 10.1.1.5 255.255.255.252 // 配置 VLAN 11 接口 IP,与 SW-B 建立直接链路
#
interface Vlan-interface12
 ip address 10.1.1.9 255.255.255.252 // 配置 VLAN 12 接口 IP,与 SW-C 建立直接链路
#
interface Vsi-interface1
 ip address 192.168.1.254 255.255.255.0 // 配置 VSI 接口 1 作为 VNI 10 的三层网关地址
#
interface Vsi-interface2
 ip address 192.168.2.254 255.255.255.0 // 配置 VSI 接口 2 作为 VNI 20 的三层网关地址

SW-A

vlan 10 // 创建 VLAN 10,用于 Underlay 网络与 SW-D 的连接
#
interface LoopBack0
 ip address 1.1.1.2 255.255.255.255 // 配置 Loopback0 作为本地 VTEP 的标识 IP
#
interface Vlan-interface10
 ip address 10.1.1.2 255.255.255.252 // 配置 VLAN 10 接口 IP,与 SW-D 匹配建立链路

SW-B

vlan 11 // 创建 VLAN 11,用于 Underlay 网络与 SW-D 的连接
#
interface LoopBack0
 ip address 1.1.1.3 255.255.255.255 // 配置 Loopback0 作为本地 VTEP 的标识 IP
#
interface Vlan-interface11
 ip address 10.1.1.6 255.255.255.252 // 配置 VLAN 11 接口 IP,与 SW-D 匹配建立链路

SW-C

vlan 12 // 创建 VLAN 12,用于 Underlay 网络与 SW-D 的连接
#
interface LoopBack0
 ip address 1.1.1.4 255.255.255.255 // 配置 Loopback0 作为本地 VTEP 的标识 IP
#
interface Vlan-interface12
 ip address 10.1.1.10 255.255.255.252 // 配置 VLAN 12 接口 IP,与 SW-D 匹配建立链路

Access-1

vlan 1000 // 创建 VLAN 1000,用于客户端接入
#
vlan 2000 // 创建 VLAN 2000,用于客户端接入
#
interface GigabitEthernet1/0/1
 port link-mode bridge // 将接口设置为二层桥接模式,处理二层帧
 port link-type trunk // 配置接口为 Trunk 模式,允许传输多个 VLAN 流量
 undo port trunk permit vlan 1 // 移除默认允许的 VLAN 1 流量
 port trunk permit vlan 1000 2000 // 允许 VLAN 1000 和 2000 的流量通过
 combo enable fiber // 启用接口的光纤模式,适配物理连接
#
interface GigabitEthernet1/0/2
 port link-mode bridge // 将接口设置为二层桥接模式
 port access vlan 2000 // 配置接口为 Access 模式,指定默认 VLAN 为 2000
 combo enable fiber // 启用接口的光纤模式
#
interface GigabitEthernet1/0/3
 port link-mode bridge // 将接口设置为二层桥接模式
 port access vlan 1000 // 配置接口为 Access 模式,指定默认 VLAN 为 1000
 combo enable fiber // 启用接口的光纤模式

IP 配置完成后,完成了 Underlay 网络的基本连通性准备,接下来配置 OSPF。

2、OSPF 配置

SW-D

ospf 1 router-id 1.1.1.1 // 启用 OSPF 进程 1,并设置路由器 ID 为 1.1.1.1
area 0.0.0.0
 network 1.1.1.1 0.0.0.0 // 宣布 Loopback0 IP 进入 OSPF,供 VTEP 识别
 network 10.1.1.0 0.0.0.3 // 宣布 VLAN 10 网段,连接 SW-A
 network 10.1.1.4 0.0.0.3 // 宣布 VLAN 11 网段,连接 SW-B
 network 10.1.1.8 0.0.0.3 // 宣布 VLAN 12 网段,连接 SW-C
 network 192.168.1.0 0.0.0.255 // 宣布 VSI 接口 1 网段,作为三层网关
 network 192.168.2.0 0.0.0.255 // 宣布 VSI 接口 2 网段,作为三层网关

SW-A

ospf 1 router-id 1.1.1.2 // 启用 OSPF 进程 1,并设置路由器 ID 为 1.1.1.2
area 0.0.0.0
 network 1.1.1.2 0.0.0.0 // 宣布 Loopback0 IP 进入 OSPF
 network 10.1.1.0 0.0.0.3 // 宣布 VLAN 10 网段,连接 SW-D

SW-B

ospf 1 router-id 1.1.1.3 // 启用 OSPF 进程 1,并设置路由器 ID 为 1.1.1.3
area 0.0.0.0
 network 1.1.1.3 0.0.0.0 // 宣布 Loopback0 IP 进入 OSPF
 network 10.1.1.4 0.0.0.3 // 宣布 VLAN 11 网段,连接 SW-D

SW-C

ospf 1 router-id 1.1.1.4 // 启用 OSPF 进程 1,并设置路由器 ID 为 1.1.1.4
area 0.0.0.0
 network 1.1.1.4 0.0.0.0 // 宣布 Loopback0 IP 进入 OSPF
 network 10.1.1.8 0.0.0.3 // 宣布 VLAN 12 网段,连接 SW-D

验证 OSPF 邻居关系正常建立,确保 Underlay 网络可达后,继续 VXLAN 配置。

验证

3、VXLAN 核心及网关配置

SW-D

l2vpn enable // 全局启用二层虚拟专用网络功能,激活 VXLAN 支持
#
interface Tunnel1 mode vxlan // 创建 Tunnel1 接口并配置为 VXLAN 模式,定义隧道
 source 1.1.1.1 // 设置隧道源 IP 为本地 Loopback0,标识本地 VTEP
 destination 1.1.1.2 // 设置隧道目标 IP 为 SW-A 的 Loopback0,连接远程 VTEP
#
interface Tunnel2 mode vxlan // 创建 Tunnel2 接口并配置为 VXLAN 模式
 source 1.1.1.1 // 设置隧道源 IP 为本地 Loopback0
 destination 1.1.1.3 // 设置隧道目标 IP 为 SW-B 的 Loopback0
#
interface Tunnel3 mode vxlan // 创建 Tunnel3 接口并配置为 VXLAN 模式
 source 1.1.1.1 // 设置隧道源 IP 为本地 Loopback0
 destination 1.1.1.4 // 设置隧道目标 IP 为 SW-C 的 Loopback0
#
vsi vpna // 创建 VSI vpna,作为 VNI 10 的虚拟交换实例
 gateway vsi-interface 1 // 指定 VSI 接口 1 作为三层网关,处理 VNI 10 的路由
 vxlan 10 // 指定 VSI 关联的 VXLAN 网络标识为 10,标识二层广播域
  tunnel 1 // 绑定 Tunnel1 到 VSI vpna,处理 SW-A 的流量
  tunnel 2 // 绑定 Tunnel2 到 VSI vpna,处理 SW-B 的流量
  tunnel 3 // 绑定 Tunnel3 到 VSI vpna,处理 SW-C 的流量
#
vsi vpnb // 创建 VSI vpnb,作为 VNI 20 的虚拟交换实例
 gateway vsi-interface 2 // 指定 VSI 接口 2 作为三层网关,处理 VNI 20 的路由
 vxlan 20 // 指定 VSI 关联的 VXLAN 网络标识为 20
  tunnel 1 // 绑定 Tunnel1 到 VSI vpnb
  tunnel 2 // 绑定 Tunnel2 到 VSI vpnb
  tunnel 3 // 绑定 Tunnel3 到 VSI vpnb

SW-A

l2vpn enable // 全局启用二层虚拟专用网络功能
#
interface Tunnel1 mode vxlan // 创建 Tunnel1 接口并配置为 VXLAN 模式
 source 1.1.1.2 // 设置隧道源 IP 为本地 Loopback0
 destination 1.1.1.1 // 设置隧道目标 IP 为 SW-D 的 Loopback0
#
vsi vpna // 创建 VSI vpna,关联本地 VXLAN 网络
 vxlan 10 // 指定 VSI 关联的 VXLAN 网络标识为 10
  tunnel 1 // 绑定 Tunnel1 到 VSI vpna,连接 SW-D

SW-B

l2vpn enable // 全局启用二层虚拟专用网络功能
#
interface Tunnel1 mode vxlan // 创建 Tunnel1 接口并配置为 VXLAN 模式
 source 1.1.1.3 // 设置隧道源 IP 为本地 Loopback0
 destination 1.1.1.1 // 设置隧道目标 IP 为 SW-D 的 Loopback0
#
interface Tunnel2 mode vxlan // 创建 Tunnel2 接口并配置为 VXLAN 模式
 source 1.1.1.3 // 设置隧道源 IP 为本地 Loopback0
 destination 1.1.1.2 // 设置隧道目标 IP 为 SW-A 的 Loopback0,用于扩展测试
#
interface Tunnel3 mode vxlan // 创建 Tunnel3 接口并配置为 VXLAN 模式
 source 1.1.1.3 // 设置隧道源 IP 为本地 Loopback0
 destination 1.1.1.4 // 设置隧道目标 IP 为 SW-C 的 Loopback0
#
vsi vpna // 创建 VSI vpna,关联本地 VXLAN 网络
 vxlan 10 // 指定 VSI 关联的 VXLAN 网络标识为 10
  tunnel 1 // 绑定 Tunnel1 到 VSI vpna,连接 SW-D
  tunnel 2 // 绑定 Tunnel2 到 VSI vpna,连接 SW-A
#
vsi vpnb // 创建 VSI vpnb,关联本地 VXLAN 网络
 vxlan 20 // 指定 VSI 关联的 VXLAN 网络标识为 20
  tunnel 1 // 绑定 Tunnel1 到 VSI vpnb,连接 SW-D
  tunnel 3 // 绑定 Tunnel3 到 VSI vpnb,连接 SW-C

SW-C

l2vpn enable // 全局启用二层虚拟专用网络功能
#
interface Tunnel1 mode vxlan // 创建 Tunnel1 接口并配置为 VXLAN 模式
 source 1.1.1.4 // 设置隧道源 IP 为本地 Loopback0
 destination 1.1.1.1 // 设置隧道目标 IP 为 SW-D 的 Loopback0
#
interface Tunnel3 mode vxlan // 创建 Tunnel3 接口并配置为 VXLAN 模式
 source 1.1.1.4 // 设置隧道源 IP 为本地 Loopback0
 destination 1.1.1.3 // 设置隧道目标 IP 为 SW-B 的 Loopback0
#
vsi vpnb // 创建 VSI vpnb,关联本地 VXLAN 网络
 vxlan 20 // 指定 VSI 关联的 VXLAN 网络标识为 20
  tunnel 1 // 绑定 Tunnel1 到 VSI vpnb,连接 SW-D
  tunnel 3 // 绑定 Tunnel3 到 VSI vpnb,连接 SW-B

配置完成后,SW-D 作为集中式网关,处理 VNI 10 和 VNI 20 的二层广播及三层路由,SW-A、SW-B、SW-C 通过隧道与 SW-D 互联,H3C 扩展接入能力。

验证

4、VXLAN 接入配置

SW-A

vlan 1000 // 创建 VLAN 1000,用于客户端接入
#
interface GigabitEthernet1/0/2
 port link-mode bridge // 将接口设置为二层桥接模式,处理二层帧
 port link-type trunk // 配置接口为 Trunk 模式,允许传输多个 VLAN 流量
 port trunk permit vlan 1 1000 // 允许 VLAN 1 和 VLAN 1000 的流量通过
 port trunk pvid vlan 1000 // 设置无标签帧的默认 VLAN 为 1000
 combo enable fiber // 启用接口的光纤模式,适配物理连接
#
service-instance 1000
 encapsulation s-vid 1000 // 定义服务实例 1000,处理带 VLAN 1000 标签的帧
 xconnect vsi vpna // 将服务实例绑定到 VSI vpna,将 VLAN 1000 流量映射到 VXLAN 网络

SW-B

vlan 1000 // 创建 VLAN 1000,用于客户端接入
#
vlan 2000 // 创建 VLAN 2000,用于客户端接入
#
interface GigabitEthernet1/0/2
 port link-mode bridge // 将接口设置为二层桥接模式
 port link-type trunk // 配置接口为 Trunk 模式,允许传输多个 VLAN 流量
 port trunk permit vlan 1 1000 2000 // 允许 VLAN 1、1000 和 2000 的流量通过
 combo enable fiber // 启用接口的光纤模式
#
service-instance 1000
 encapsulation s-vid 1000 // 定义服务实例 1000,处理带 VLAN 1000 标签的帧
 xconnect vsi vpna // 将服务实例绑定到 VSI vpna,将 VLAN 1000 流量映射到 VXLAN 网络
#
service-instance 2000
 encapsulation s-vid 2000 // 定义服务实例 2000,处理带 VLAN 2000 标签的帧
 xconnect vsi vpnb // 将服务实例绑定到 VSI vpnb,将 VLAN 2000 流量映射到 VXLAN 网络

SW-C

vlan 2000 // 创建 VLAN 2000,用于客户端接入
#
interface GigabitEthernet1/0/2
 port link-mode bridge // 将接口设置为二层桥接模式
 port access vlan 2000 // 配置接口为 Access 模式,指定默认 VLAN 为 2000
 combo enable fiber // 启用接口的光纤模式
#
service-instance 1000
 encapsulation untagged // 定义服务实例 1000,处理无 VLAN 标签的帧(因 Access 模式已剥离标签)
 xconnect vsi vpnb // 将服务实例绑定到 VSI vpnb,将 VLAN 2000 流量映射到 VXLAN 网络

Access-1

interface GigabitEthernet1/0/1
 port link-mode bridge // 将接口设置为二层桥接模式
 port link-type trunk // 配置接口为 Trunk 模式,允许传输多个 VLAN 流量
 undo port trunk permit vlan 1 // 移除默认允许的 VLAN 1 流量
 port trunk permit vlan 1000 2000 // 允许 VLAN 1000 和 2000 的流量通过
 combo enable fiber // 启用接口的光纤模式
#
interface GigabitEthernet1/0/2
 port link-mode bridge // 将接口设置为二层桥接模式
 port access vlan 2000 // 配置接口为 Access 模式,指定默认 VLAN 为 2000
 combo enable fiber // 启用接口的光纤模式
#
interface GigabitEthernet1/0/3
 port link-mode bridge // 将接口设置为二层桥接模式
 port access vlan 1000 // 配置接口为 Access 模式,指定默认 VLAN 为 1000
 combo enable fiber // 启用接口的光纤模式

说明

  • SW-A 和 SW-B 的 Trunk 模式:适合连接带标签流量的服务器,port trunk pvid vlan 1000/2000 确保无标签帧分配到对应 VLAN。服务实例使用 encapsulation s-vid 匹配带标签帧。

  • SW-C 的 Access 模式:适合连接无标签流量的客户端,encapsulation untagged 匹配接口剥离标签后的帧。

  • Access-1 的设计:作为接入层交换机,GigabitEthernet1/0/1 向上连接 SW-B 的 Trunk 口,汇总 VLAN 1000 和 2000 流量;GigabitEthernet1/0/2 和 1/0/3 向下连接客户端,分别分配 VLAN 2000 和 1000。

  • 注意事项:模拟器中,交换机与 PC 互联可能需要调整标签配置,实际环境中根据服务器是否发送带标签帧选择 Trunk 或 Access 模式。

5、PC配置

6、连通性验证

 7、抓包验证

在Switch-D的G0/2口抓包,从Vm1访问Vm4

 在Switch-D的G0/2口抓包,从Vm3访问Vm2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

李李网工日记

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

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

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

打赏作者

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

抵扣说明:

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

余额充值