【华三】VXLAN-三层集中式网关配置

目录

什么是VXLAN技术:

VXLAN的相关术语:

[NVE(Network Virtualization Edge,网络虚拟化边缘设备):](#NVE(Network Virtualization Edge,网络虚拟化边缘设备):)

[VTEP(VXLAN Tunnel Endpoint,VXLAN 隧道端点):](#VTEP(VXLAN Tunnel Endpoint,VXLAN 隧道端点):)

[VXLAN网络(VXLAN Network):](#VXLAN网络(VXLAN Network):)

[VXLAN Segment(VXLAN 段):](#VXLAN Segment(VXLAN 段):)

[VNI/VNID(VXLAN ID ,VXLAN 网络标识) :](#VNI/VNID(VXLAN ID ,VXLAN 网络标识) :)

[VXLAN隧道(VXLAN Tunnel) :](#VXLAN隧道(VXLAN Tunnel) :)

核心设备:

[VSI(Virtual Switching Instance,虚拟交换实例):](#VSI(Virtual Switching Instance,虚拟交换实例):)

[VSI Interface(VSI 接口):](#VSI Interface(VSI 接口):)

[AC(Attachment Circuit):](#AC(Attachment Circuit):)

[用户终端(User Terminal):](#用户终端(User Terminal):)

VXLAN的工作模式;

L2Gateway二层转发模式---实现同VNI段内主机互访:

L3Gateway三层转发模式---实现不同VNI段内主机互访:

实验需求

实验步骤

实验拓扑

实验配置:

R1:

R2:

R4:

R3(集中式网关设备):

SRV:

SW1:

SW2:

PC(用思科路由器模拟):

测试

抓包:

分析PC1去访问PC2的具体通信流程:

[第一步:PC1 发数据到 L2 网关(R1)](#第一步:PC1 发数据到 L2 网关(R1))

[第二步:L2 网关封装并转发到 L3 网关(R3)](#第二步:L2 网关封装并转发到 L3 网关(R3))

[第三步:L3 网关解封装并转发到目标 L2 网关(R1)](#第三步:L3 网关解封装并转发到目标 L2 网关(R1))

[第四步:目标 L2 网关解封装并转发到 PC2](#第四步:目标 L2 网关解封装并转发到 PC2)

[PC2 回包时,流程相反:](#PC2 回包时,流程相反:)

[关于PC1 发 5 个请求,却在 R3 的 g1/0 抓到 20 个 ICMP 包,其具体原因如下:](#关于PC1 发 5 个请求,却在 R3 的 g1/0 抓到 20 个 ICMP 包,其具体原因如下:)

进一步体现了VXLAN集中式网关的弊端:

[查看L2vpn的MAC地址表以及LINK ID](#查看L2vpn的MAC地址表以及LINK ID)

查看Tunnel信息

配置文档


什么是VXLAN技术:

华三 VXLAN 技术全称为虚拟可扩展局域网(Virtual Extensible Lan),是一种网络虚拟化技术,是Overlay技术的一种。可以在三层网络上构建虚拟的二层网络,实现不同租户间的隔离和灵活的组网需求。其本质是通过 "隧道封装" 将二层数据帧封装在三层 IP 报文中传输,打破传统二层网络的物理边界 ,通过隧道机制在现有网络上构建一个叠加的网络,从而绕过现有VLAN标签的限制。隧道的原目设备为Overlay边缘设备。该技术的核心价值在于以 Overlay 方式打破传统网络的物理限制,实现 "大二层互联、大规模隔离、自动化运维"。

VXLAN的相关术语:

NVE(Network Virtualization Edge,网络虚拟化边缘设备):

定义

VXLAN 网络中负责 "虚拟化功能实现" 的边缘设备,是 VXLAN Overlay 网络与 Underlay 物理网络的 "衔接点",能完成 VXLAN 数据帧的封装 / 解封装、租户信息映射等核心操作。

核心作用:

1、接收本地租户(如虚拟机、物理服务器)的二层数据帧,添加 VXLAN 头部(含 VNI)封装为三层 IP 报文;

2.接收 Underlay 网络传来的 VXLAN 封装报文,解封装后转发给本地对应租户终端;

3.维护 "租户 - VNI - 物理端口" 的映射关系,确保数据精准路由到目标租户。

VTEP(VXLAN Tunnel Endpoint,VXLAN 隧道端点):

定义:

NVE 设备中直接承担 "VXLAN 隧道建立与数据转发" 的具体功能实体,通常以 "设备 IP 地址" 作为隧道标识(即 VTEP IP),是 VXLAN 隧道的 "起点" 和 "终点",一般使用loopback接口作为VTEP地址,一对VTEP地址就对应一条VXLAN隧道,VXLAN报文的外层IP地址头部就对应VXLAN隧道两端的VTEP IP地址。

核心作用:

  1. 建立隧道:通过 BGP EVPN、静态配置等方式,与其他 VTEP 协商建立 VXLAN 隧道(本质是 IP 层的逻辑连接);
  2. 用于VXLAN报文的封装 / 解封装:将租户的原始二层数据帧(如以太网帧)封装为 "外层以太网帧头部+外层IP头 +外层UDP头部 + VXLAN头+原始数据帧" 格式的报文(封装后通过 Underlay 网络传输),或反向解封装;
  3. 地址学习:通过 ARP 广播抑制、EVPN 路由同步等方式,学习远端租户的 "IP - MAC - VTEP IP" 映射关系,避免广播风暴。

VXLAN网络(VXLAN Network):

定义:

基于 Underlay 物理 IP 网络(如数据中心三层交换机、路由器组成的 IP 网络)构建的 "逻辑 Overlay 网络",通过 VXLAN 隧道将分散的物理节点(服务器、虚拟机)虚拟化为一个或多个 "逻辑二层网络"。

核心作用:

  1. 打破物理边界:让不同物理位置(如跨机架、跨机房)的终端,如同处于同一二层网络,支持虚拟机跨区域迁移;
  2. 资源池化:将物理网络资源(带宽、端口)按租户需求虚拟化为独立逻辑网络,实现资源按需分配;
  3. 隔离 Underlay 与 Overlay:Overlay 层的租户业务故障(如广播风暴)不会影响 Underlay 物理网络,提升整体网络稳定性。

VXLAN Segment(VXLAN 段):

定义:

VXLAN 网络中用于 "划分逻辑广播域" 的单元,每个 VXLAN Segment 对应一个独立的 "租户或业务组",本质是VNI(见下文)的逻辑映射 ------ 一个 VNI 即代表一个 VXLAN Segment。

核心作用:

  1. 广播域隔离:同一 VXLAN Segment 内的终端可直接二层通信(如 ARP 广播仅在段内传播),不同段之间默认无法互通(需三层网关转发);
  2. 业务分组:按业务类型(如 "Web 服务器段""数据库段")或租户划分 VXLAN Segment,便于网络管理与安全控制(如对某段单独配置 ACL)。

VNI/VNID(VXLAN ID ,VXLAN 网络标识) :

定义:

**用于唯一标识 "VXLAN Segment"**的 24 位数字(取值范围 0-16777215),相当于 VXLAN 网络中的 "虚拟 VLAN ID",但数量远超传统 VLAN(仅 4094 个)。

核心作用:

  1. 租户隔离:不同租户使用不同 VNI,VTEP 通过解析 VXLAN 头部中的 VNI,判断数据归属的租户,确保租户间流量不互通;
  2. 路由映射:在三层转发场景中(如跨 VXLAN Segment 通信),VNI 与三层 VPN 实例(如华三的 VRF)绑定,实现 "VNI→VRF→物理路由" 的映射,让数据跨段转发。

VXLAN隧道(VXLAN Tunnel) :

定义:

由两个 VTEP 之间建立的 "逻辑通信通道",本质是通过 Underlay IP 网络传输 VXLAN 封装报文的 "虚拟链路",隧道两端的 VTEP IP(通常是设备 Loopback 接口 IP)作为隧道的 "源 / 目的地址"。

核心作用:

  1. 承载二层数据:将不同物理位置的 VXLAN Segment 通过隧道连接,让二层数据能跨三层 IP 网络传输(如虚拟机跨机房迁移时的数据流);
  2. 隔离传输:隧道内的 VXLAN 报文仅在两端 VTEP 解封装,Underlay 网络设备(如中间路由器)仅转发 IP 报文,无法感知隧道内的租户数据。

核心设备:

定义:

在 VXLAN 网络架构中承担 "核心转发、全局控制、网关汇聚" 功能的设备,通常位于 Underlay 网络的核心层,是连接多个接入区域(如不同机架、不同机房)的关键节点。

核心作用(Core Device):

  1. Underlay 核心转发:转发不同 VTEP 之间的 VXLAN 封装报文,确保跨区域隧道通信的带宽与低延迟;
  2. 集中式网关:若部署集中式 VXLAN 网关,核心设备需承担 "跨 VXLAN Segment 三层转发""NAT""QoS 调度" 等功能;
  3. 控制平面汇聚:作为 BGP EVPN 的路由反射器(RR),汇聚各接入层 VTEP 的路由信息,实现租户路由的全局同步。

VSI(Virtual Switching Instance,虚拟交换实例):

定义:

华三设备中用于 "模拟租户专属交换机" 的逻辑功能实例,每个 VSI 对应一个 VXLAN Segment(即绑定一个 VNI),具备独立的二层转发表、ARP 表、VLAN 表,相当于租户的 "私有交换机"。

核心作用:

  1. 租户隔离:不同 VSI 的转发表、ARP 表完全独立,租户 A 的终端无法通过 VSI 访问租户 B 的终端;
  2. 业务适配:为 VSI 配置独立的二层策略(如 VLAN 剥离、链路聚合),适配租户的个性化需求(如某租户需将物理端口 VLAN 10 映射到 VSI);
  3. 对接终端:服务器、虚拟机通过物理端口或虚拟网卡(如 VMware vNIC)接入 VSI,实现与 VXLAN 网络的连接。

PS:一个VSI可以关联多个VXLAN隧道,但一个VSI只能关联一个VNI。

VSI Interface(VSI 接口):

定义:

VSI 实例与设备其他功能模块(如三层网关、VPN)交互的 "逻辑接口",是 VXLAN 二层网络与三层网络的 "衔接点",也称为 "VXLAN 三层网关接口"。

核心作用:

  1. 三层转发:作为 VXLAN Segment 的 "默认网关",接收本 VSI 内终端的三层数据(如跨 VNI 访问的报文),转发到其他 VSI 或外部网络(如 Internet);
  2. 地址配置:为 VSI Interface 配置 IP 地址(作为租户终端的网关 IP),例如 VSI "Finance" 的 VSI Interface 配置 192.168.1.1/24,财务虚拟机的网关均指向该地址;
  3. 策略承载:在 VSI Interface 上配置 ACL、NAT、QoS 等三层策略,实现对租户三层流量的控制(如禁止某 VSI 访问外网)。

AC(Attachment Circuit):

定义:

VXLAN 网络中 "连接用户终端与 VSI 实例的关联链路",也是需在华三交换机上创建的 "服务实例",本质是终端接入 VXLAN 网络的 "桥梁载体",通过绑定终端接口与对应 VSI,实现终端流量定向接入 VXLAN 逻辑网络。

核心作用:

  1. 接口 - VSI 关联:将连接终端的物理接口(如交换机千兆电口)或逻辑接口(如虚拟接口),绑定到对应的 VSI 实例,例如华三 S5860 交换机的 Gi1/0/2 端口(连接物理服务器),通过 AC 关联到 "财务业务 VSI",确保服务器流量仅接入该 VSI;
  2. 服务实例创建:作为可配置的服务实例,需在交换机上手动创建并配置参数,比如在华三交换机上通过命令创建 AC 服务实例 10,指定其关联的 VSI 为 "研发测试 VSI",成为终端接入的 "逻辑标识";
  3. 感兴趣流指定(接口 / VLAN 方式):基于接口方式时,AC 默认将对应接口接收的所有终端流量,作为感兴趣流导入关联 VSI;基于 VLAN 方式时,AC 仅将终端流量中携带指定 VLAN 标签(如 VLAN 20)的流量,作为感兴趣流定向接入 VSI,例如 AC 服务实例 20 指定 "匹配 VLAN 20 流量",仅将携带 VLAN 20 的 PC 流量,导入 "办公业务 VSI"。

用户终端(User Terminal):

定义:

VXLAN 网络的 "最终接入对象",即使用 VXLAN 网络资源的终端设备,包括物理设备和虚拟设备,是租户业务的承载主体。

核心作用:

  1. 物理终端:如物理服务器、台式机、笔记本、IoT 设备(如监控摄像头),通过物理网卡接入华三交换机的 VSI 绑定端口,获取 VXLAN 网络接入权限;
  2. 虚拟终端:如虚拟机(VM,如 KVM、VMware VM)、容器(如 Docker、K8s Pod),通过虚拟网卡(如 vNIC)接入宿主机的虚拟交换机(如华三 vSwitch),再由宿主机或接入交换机映射到对应的 VXLAN Segment。

PS:用户终端 "无需感知 VXLAN 存在"------ 终端的通信逻辑与传统二层网络完全一致(如通过 IP、MAC 通信),VXLAN 的封装 / 解封装由 VTEP 自动完成,对终端透明。

VXLAN的工作模式;

从 "二层" 和 "三层" 维度划分 VXLAN 工作模式,核心是看数据转发是否跨越 "VXLAN 段(二层广播域)" ------ 二层模式聚焦 "同一 VXLAN 段内的通信",三层模式聚焦 "不同 VXLAN 段间的通信",逻辑更贴合网络分层逻辑:

L2Gateway二层转发模式---实现同VNI段内主机互访:

VTEP通过查找MAC地址表项对流量进行转发,**用于相同VXLAN或VXLAN与VLAN的设备之间的互相通讯,**核心是 "让不同物理位置的设备,像在同一传统二层网里一样互通",数据只在二层封装传输,不涉及三层转发,。

工作逻辑(通俗版):

  1. 终端发数据:比如虚拟机 VM1(属于 VNI 100 段)要给同段的虚拟机 VM2(物理位置跨机架)发数据,先把数据发给本地接入交换机Edge1(VTEP A);
  2. VTEP 封装:交换机Edge1(VTEP A) 识别数据属于 VNI 100,给数据 "包一层 VXLAN 外壳"(加 VNI、对端 VTEP IP 等信息),变成能在三层 IP 网传输的报文;
  3. 隧道传数据:封装后的报文通过 Underlay 三层 IP 网,走 VXLAN 隧道传到虚拟机 VM2 的本地接入交换机Edge2(VTEP B);
  4. 解封装转发:本地接入交换机Edge2 (VTEP B) 拆了 "VXLAN 外壳",识别出是 VNI 100 的 data,再发给虚拟机 VM2。

关键特点:

1、只涉及 "VXLAN 隧道封装 / 解封装",不经过三层网关;

2、同一 VNI 段内的广播、ARP 请求,会通过隧道在段内传播(但 VTEP 会做抑制,避免广播风暴);

3、核心用例:虚拟机跨机架 / 跨机房迁移(迁移时 IP、MAC 不变,业务不中断)、同一业务组设备互联(如所有 Web 服务器在一个 VNI 段)。

L3Gateway三层转发模式---实现不同VNI段内主机互访:

VTEP通过查询IP表项/ARP表项对流量进行转发,实现跨VXLAN的设备,或者VXLAN与传统IP网络间的互相通讯 。其核心是 "让不同 VXLAN 段的设备互通",需要通过 "VXLAN 网关" 做三层转发,本质是 "二层 VXLAN 网络 + 三层路由" 的结合。

工作逻辑(通俗版):

  1. 假设 VM1 属于 VNI 100(网段 192.168.1.0/24),VM2 属于 VNI 200(网段 192.168.2.0/24),跨段通信时:

  2. 终端发跨段数据 :VM1(192.168.1.1)要访问 VM2(192.168.2.1),先把数据发给自己的 L2 网关(Edge1)(因为 VM1 直接连接的是 Edge1 这个 L2 网关,负责接入 VXLAN 网络)。

  3. L2 网关封装转发到 L3 网关 :Edge1 识别到目标 IP(192.168.2.1)属于其他 VNI(VNI 200),会将数据封装成 VXLAN 报文,并转发到 Border L3 网关(因为图中三层网关是集中式的 Border 设备)。

  4. L3 网关三层转发 :Border L3 网关收到 VXLAN 报文后,解封装并检查目标 IP(192.168.2.1),查询路由表和ARP表(需提前配置跨 VNI 的路由,比如知道 VNI 200 的流量要转发到 Edge2)。

  5. L3 网关转发到目标 L2 网关:Border L3 网关将数据重新封装成 VXLAN 报文(目标 VNI 200),转发到目标 L2 网关(Edge2)。

  6. 目标 L2 网关拆封装转发 :Edge2 收到报文后,解封装 VXLAN 头部,将原始数据转发给 VM2(192.168.2.1)。

  7. 返程同理:VM2 回包时,先发给 Edge2 ,Edge2 封装后发给 Border L3 网关 , Border L3 网关转发给 Edge1 , Edge1 解封装发给 VM1。

关键特点:

1.必须依赖 "VXLAN 网关"(没有网关,不同 VNI 段完全隔离);

2.数据会经历 "二层 VXLAN 封装 → 三层转发 → 目标侧二层解封装" 的过程;

3.核心用例:不同业务组互通(如 Web 服务器段 VNI 100 访问数据库段 VNI 200)、VXLAN 段访问外网(网关做 NAT 后连 Internet)。

VXLAN集中式网关:

在L3Gateway三层转发模式下,VXLAN技术分为两种类型的网关,一种是集中式网关,另一种是分布式网关。对于集中式网关的配置我们可以通过静态方式或EVPN方式动态完成

集中式网关,只有一个VTEP设备作为L3GW,通常部署在网络核心层设备上,如核心交换机。所有跨 VXLAN Segment(虚拟扩展局域网段)的三层转发都由核心层的集中式网关处理 。因此存在以下优点及缺点。

优点:

  1. 管理方便,便于进行统一的安全策略配置,比如在网关处集中配置访问控制列表(ACL)、网络地址转换(NAT)、服务质量(QoS)等策略;

2.网络拓扑相对简单,对于网络规模较小、安全管控要求高的场景,集中式网关便于网络管理员集中管理和维护。

缺点:

1.容易形成网络瓶颈,因为所有跨段流量都要经过核心层的集中式网关,可能会产生次优路径问题,当网络规模扩大、流量增加时,可能导致网关处的处理压力过大,影响网络转发性能;

  1. 存在单点故障风险,如果集中式网关设备出现故障,会影响到整个网络的跨段通信。

3.集中式网关需要维护和记录所有主机的ARP记录,会导致可能超出ARP表的规格

VXLAN分布式网关:

分布式网关可存在多台VTEp设备作为L3GW,分布式网关将网关功能分散到接入层或汇聚层的 VTEP 设备上。本地跨 VXLAN 的流量可以直接在接入层的 VTEP 设备上进行三层转发,无需经过核心层的集中式网关,大大减少了数据转发的路径和延迟,提高了转发效率。例如,在同一机架内的不同 VXLAN 的虚拟机之间通信时,流量可以在接入交换机上快速完成转发,适合对延迟敏感的应用场景。对于分布式网关的布置我们一般通过结合"EVPN 控制平面协议进行配置。

优点:

1.可靠性强 :由于网关功能分布在多台设备上,单个 VTEP 设备的故障只会影响局部的网络通信,不会导致整个网络的跨 VXLAN 通信中断。而且,华三的分布式网关设备通常支持丰富的冗余和高可靠性技术,如链路聚合、热备份等,进一步增强了网络的可靠性和容错能力。

2.扩展性好 :当网络规模扩大时,只需要在新接入的 VTEP 设备上启用分布式网关功能,并通过 EVPN(以太网虚拟专用网)等协议与其他 VTEP 设备进行路由信息同步,即可实现网络的平滑扩展,无需对核心层设备进行大规模的升级改造,降低了网络扩展的成本和难度。

3.转发效率高 :分布式网关将网关功能分散到接入层或汇聚层的 VTEP 设备上,如华三的 S5860 系列接入交换机。本地跨 VXLAN 的流量可以直接在接入层的 VTEP 设备上进行三层转发,无需经过核心层的集中式网关,大大减少了数据转发的路径和延迟,提高了转发效率。例如,在同一机架内的不同 VXLAN 的虚拟机之间通信时,流量可以在接入交换机上快速完成转发,适合对延迟敏感的应用场景。

缺点:

1.管理复杂度高 :分布式网关需要在多台 VTEP 设备上进行配置和管理,相比集中式网关,管理的设备数量更多,配置项更分散。例如,要在所有分布式网关上统一配置一条安全策略,需要分别登录到每台设备进行操作,增加了管理的工作量和出错的概率。同时,不同设备之间的配置一致性也需要严格把控。

2.策略同步挑战 :虽然可以通过 EVPN 等协议实现分布式网关之间的路由信息同步,但在实际应用中,要确保所有设备的策略(如安全策略、QoS 策略 )完全同步仍然存在一定挑战。特别是在网络环境复杂、设备数量众多的情况下,可能会出现策略更新不及时或不一致的情况,影响网络的正常运行。

3.成本增加 :分布式网关需要在多台 VTEP 设备上实现网关功能,这要求这些设备具备较高的性能和功能,可能需要采购更高规格的设备,增加了硬件成本。此外,由于管理复杂度的提高,也会带来运维成本的上升。

实验需求

R4为IP核心网络

R1和R2与服务器连接的VTEP设备,通过IP核心网络实现三层互通。

虚拟机PC连接交换机SW,通过VXLAN网络实现二层互通。

R3为各虚拟机PC的集中式网关,实现各虚拟机PC可访问外网8.8.8.8

实验步骤

在R1,R2,R3,R4设备上:

1.underlay的建立,全网可达(全网启用OSPF)

2.配置VXLAN隧道,指定采用VXLAN的封装模式

3.激活L2VPN功能,配置VSI,关联VNI,绑定VXLAN隧道

4.配置服务实例(AC),指定感兴趣流,绑定VSI

在R3集中式网关设备上:

1.配置VSI接口,并配置IP地址。

2.将VSI接口关联到VSI实例中

3.匹配VM1,VM2和VM3的网段,并配置NAT

实验拓扑

实验配置:

R1:

1.underlay的建立,全网可达(全网启用OSPF)

复制代码
[R1]int g2/0
[R1-GigabitEthernet2/0]ip address 10.1.14.1 24
[R1-GigabitEthernet2/0]quit

[R1]int lo 0
[R1-LoopBack0]ip address 10.255.12.1 32
[R1-LoopBack0]quit

[R1]int range g2/0 lo0
[R1-if-range]ospf 1 area 0
[R1-if-range]quit

2.配置VXLAN隧道,指定采用VXLAN的封装模式

复制代码
[R1]int Tunnel 12 mode vxlan             ---指定采用VXLAN的封装模式
[R1-Tunnel12]source  lo0                ---指定隧道源地址
[R1-Tunnel12]destination 10.255.12.2     ---指定隧道目的地址
[R1-Tunnel12]quit

[R1]int Tunnel 13 mode vxlan
[R1-Tunnel13]source lo0
[R1-Tunnel13]destination 10.255.1.3
[R1-Tunnel13]quit

3.激活L2VPN功能,配置VSI,关联VNI,绑定VXLAN隧道

复制代码
[R1]l2vpn enable                  ---激活L2VPN功能

[R1]vsi vm1                       ---配置VSI
[R1-vsi-vm1]vxlan 10              ---关联VNI
[R1-vsi-vm1-vxlan-10]tunnel 12    ---绑定VXLAN隧道
[R1-vsi-vm1-vxlan-10]tunnel 13
[R1-vsi-vm1-vxlan-10]quit
[R1-vsi-vm1]quit

[R1]vsi vm2
[R1-vsi-vm2]vxlan 20
[R1-vsi-vm2-vxlan-20]tunnel 12
[R1-vsi-vm2-vxlan-20]tunnel 13
[R1-vsi-vm2-vxlan-20]quit
[R1-vsi-vm2]quit

[R1]vsi vm3
[R1-vsi-vm3]vxlan 30
[R1-vsi-vm3-vxlan-30]tunnel 12
[R1-vsi-vm3-vxlan-30]tunnel 13
[R1-vsi-vm3-vxlan-30]quit
[R1-vsi-vm3]quit
[R1]

4.配置服务实例(AC),指定感兴趣流,绑定VSI

复制代码
[R1]int g1/0.10
[R1-GigabitEthernet1/0.10]vlan-type dot1q vid 10   ---指定感兴趣流
[R1-GigabitEthernet1/0.10]xconnect vsi vm1         ---绑定VSI
[R1-GigabitEthernet1/0.10]quit

[R1]int g1/0.20
[R1-GigabitEthernet1/0.20]vlan-type dot1q vid 20
[R1-GigabitEthernet1/0.20]xconnect vsi vm2
[R1-GigabitEthernet1/0.20]quit

[R1]int g1/0.30
[R1-GigabitEthernet1/0.30]vlan-type dot1q vid 30
[R1-GigabitEthernet1/0.30]xconnect vsi vm3
[R1-GigabitEthernet1/0.30]quit

R2:

复制代码
[R2]int g2/0
[R2-GigabitEthernet2/0]ip address 10.1.24.2 24
[R2-GigabitEthernet2/0]quit

[R2]int lo 0 
[R2-LoopBack0]ip address 10.255.12.2 32
[R2-LoopBack0]quit

[R2]int range g2/0 lo0
[R2-if-range]ospf 1 area 0
[R2-if-range]quit


[R2]int Tunnel 12 mode vxlan
[R2-Tunnel12]source lo0
[R2-Tunnel12]destination 10.255.12.1
[R2-Tunnel12]quit

[R2]int Tunnel 23 mode vxlan
[R2-Tunnel23]source lo0
[R2-Tunnel23]destination 10.255.1.3
[R2-Tunnel23]quit

[R2]l2vpn enable 

[R2]vsi vm1
[R2-vsi-vm1]vxlan 10
[R2-vsi-vm1-vxlan-10]tunnel 12
[R2-vsi-vm1-vxlan-10]tunnel 23
[R2-vsi-vm1-vxlan-10]quit
[R2-vsi-vm1]quit

[R2]vsi vm2
[R2-vsi-vm2]vxlan 20
[R2-vsi-vm2-vxlan-20]tunnel 12
[R2-vsi-vm2-vxlan-20]tunnel 23
[R2-vsi-vm2-vxlan-20]quit
[R2-vsi-vm2]quit

[R2]vsi vm3
[R2-vsi-vm3]vxlan 30
[R2-vsi-vm3-vxlan-30]tunnel 12
[R2-vsi-vm3-vxlan-30]tunnel 23
[R2-vsi-vm3-vxlan-30]quit
[R2-vsi-vm3]quit

[R2]int g1/0.10
[R2-GigabitEthernet1/0.10]vlan-type dot1q vid 10
[R2-GigabitEthernet1/0.10]xconnect vsi vm1
[R2-GigabitEthernet1/0.10]quit

[R2]int g1/0.20
[R2-GigabitEthernet1/0.20]vlan-type dot1q vid 20
[R2-GigabitEthernet1/0.20]xconnect vsi vm2
[R2-GigabitEthernet1/0.20]quit

[R2]int g1/0.30
[R2-GigabitEthernet1/0.30]vlan-type dot1q vid 30
[R2-GigabitEthernet1/0.30]xconnect vsi vm3
[R2-GigabitEthernet1/0.30]quit

R4:

复制代码
[R4]int g1/0
[R4-GigabitEthernet1/0]ip address 10.1.14.4 24
[R4-GigabitEthernet1/0]quit

[R4]int g2/0
[R4-GigabitEthernet2/0]ip add 10.1.24.4 24
[R4-GigabitEthernet2/0]quit

[R4]int g3/0
[R4-GigabitEthernet3/0]ip address 10.1.34.4 24
[R4-GigabitEthernet3/0]quit

[R4]int range g1/0 g2/0 g3/0
[R4-if-range]ospf 1 area 0

R3(集中式网关设备):

1.创建VSI接口,并配置IP(网关)地址

2.将VSI接口关联到VSI实例中

3.NAT配置

复制代码
[R3]int g1/0
[R3-GigabitEthernet1/0]ip address 10.1.34.3 24
[R3-GigabitEthernet1/0]quit

[R3]int g2/0
[R3-GigabitEthernet2/0]ip address 202.101.1.1 30
[R3-GigabitEthernet2/0]quit

[R3]int lo0
[R3-LoopBack0]ip address 10.255.1.3 32
[R3-LoopBack0]quit

[R3]int range g1/0 lo 0
[R3-if-range]ospf 1 area 0
[R3-if-range]quit

###创建VXLAN隧道
[R3]int Tunnel 13 mode vxlan
[R3-Tunnel13]source lo 0
[R3-Tunnel13]destination 10.255.12.1
[R3-Tunnel13]quit

[R3]int Tunnel 23 mode vxlan
[R3-Tunnel23]source lo 0
[R3-Tunnel23]destination 10.255.12.2
[R3-Tunnel23]quit

###开启L2vpn功能
[R3]l2vpn enable 

###创建VSI实例
[R3]vsi vm1
[R3-vsi-vm1]vxlan 10
[R3-vsi-vm1-vxlan-10]tunnel 13
[R3-vsi-vm1-vxlan-10]tunnel 23
[R3-vsi-vm1-vxlan-10]quit
[R3-vsi-vm1]quit

[R3]vsi vm2
[R3-vsi-vm2]vxlan 20
[R3-vsi-vm2-vxlan-20]tunnel 13
[R3-vsi-vm2-vxlan-20]tunnel 23
[R3-vsi-vm2-vxlan-20]quit
[R3-vsi-vm2]quit

[R3]vsi vm3
[R3-vsi-vm3]vxlan 30
[R3-vsi-vm3-vxlan-30]tunnel 13
[R3-vsi-vm3-vxlan-30]tunnel 23
[R3-vsi-vm3-vxlan-30]quit
[R3-vsi-vm3]quit

###创建VSI接口,并配置IP(网关)地址
[R3]int Vsi-interface 10
[R3-Vsi-interface10]ip address 192.168.10.254 24
[R3-Vsi-interface10]quit

[R3]int Vsi-interface 20
[R3-Vsi-interface20]ip address 192.168.20.254 24
[R3-Vsi-interface20]quit

[R3]int Vsi-interface 30
[R3-Vsi-interface30]ip address 192.168.30.254 24
[R3-Vsi-interface30]quit

###将VSI接口关联到VSI实例中
[R3]vsi vm1
[R3-vsi-vm1]gateway Vsi-interface 10
[R3-vsi-vm1]quit

[R3]vsi vm2
[R3-vsi-vm2]gateway Vsi-interface 20
[R3-vsi-vm2]quit

[R3]vsi vm3
[R3-vsi-vm3]gateway Vsi-interface 30
[R3-vsi-vm3]quit

###NAT配置
[R3]access-list basic 2000
[R3-acl-ipv4-basic-2000]rule permit source 192.168.10.0 0.0.0.255
[R3-acl-ipv4-basic-2000]rule permit source 192.168.20.0 0.0.0.255
[R3-acl-ipv4-basic-2000]rule permit source 192.168.30.0 0.0.0.255
[R3-acl-ipv4-basic-2000]quit

[R3]int g2/0
[R3-GigabitEthernet2/0]nat outbound 2000
[R3-GigabitEthernet2/0]quit

[R3]ip route-static 0.0.0.0 0.0.0.0 202.101.1.2

SRV:

复制代码
[SRV]int g1/0
[SRV-GigabitEthernet1/0]ip address 202.101.1.2 30
[SRV-GigabitEthernet1/0]quit

[SRV]int lo 0
[SRV-LoopBack0]ip address 8.8.8.8 32
[SRV-LoopBack0]quit

SW1:

复制代码
[SW1]vlan 10 20 30

[SW1]int HundredGigE 1/0/4
[SW1-HundredGigE1/0/4]port link-mode bridge 
[SW1-HundredGigE1/0/4]port link-type trunk 
[SW1-HundredGigE1/0/4]port trunk permit vlan 10 20 30
[SW1-HundredGigE1/0/4]quit

[SW1]int HundredGigE 1/0/1
[SW1-HundredGigE1/0/1]port link-mode bridge 
[SW1-HundredGigE1/0/1]port link-type access 
[SW1-HundredGigE1/0/1]port access vlan 10
[SW1-HundredGigE1/0/1]quit

[SW1]int HundredGigE 1/0/2
[SW1-HundredGigE1/0/2]port link-mode bridge 
[SW1-HundredGigE1/0/2]port link-type access 
[SW1-HundredGigE1/0/2]port access vlan 20
[SW1-HundredGigE1/0/2]quit

[SW1]int HundredGigE 1/0/3
[SW1-HundredGigE1/0/3]port link-mode bridge 
[SW1-HundredGigE1/0/3]port link-type access 
[SW1-HundredGigE1/0/3]port access vlan 30
[SW1-HundredGigE1/0/3]quit

SW2:

复制代码
[SW2]vlan 10 20 30

[SW2]int HundredGigE1/0/5
[SW2-HundredGigE1/0/5]port link-mode bridge 
[SW2-HundredGigE1/0/5]port link-type trunk 
[SW2-HundredGigE1/0/5]port trunk permit vlan 10 20 30
[SW2-HundredGigE1/0/5]quit

[SW2]int HundredGigE1/0/1
[SW2-HundredGigE1/0/1]port link-mode bridge 
[SW2-HundredGigE1/0/1]port link-type access 
[SW2-HundredGigE1/0/1]port access vlan 10
[SW2-HundredGigE1/0/1]quit

[SW2]int HundredGigE1/0/2
[SW2-HundredGigE1/0/2]port link-mode bridge 
[SW2-HundredGigE1/0/2]port link-type access 
[SW2-HundredGigE1/0/2]port access vlan 20
[SW2-HundredGigE1/0/2]quit

[SW2]int HundredGigE1/0/3
[SW2-HundredGigE1/0/3]port link-mode bridge 
[SW2-HundredGigE1/0/3]port link-type access 
[SW2-HundredGigE1/0/3]port access vlan 30
[SW2-HundredGigE1/0/3]quit

[SW2]int HundredGigE1/0/4
[SW2-HundredGigE1/0/4]port link-mode bridge 
[SW2-HundredGigE1/0/4]port link-type access 
[SW2-HundredGigE1/0/4]port access vlan 30
[SW2-HundredGigE1/0/4]quit

PC(用思科路由器模拟):

复制代码
PC1(config)#no ip routing
PC1(config)#ip default-gateway 192.168.10.254     
PC1(config)#int e0/0
PC1(config-if)#ip address 192.168.10.1 255.255.255.0
PC1(config-if)#no shutdown

PC2(config)#no ip routing
PC2(config)#ip default-gateway 192.168.20.254
PC2(config)#int e0/0
PC2(config-if)#ip address 192.168.20.1 255.255.255.0
PC2(config-if)#no shudown

PC3(config)#no ip routing
PC3(config)#ip default-gateway 192.168.30.254
PC3(config)#int e0/0
PC3(config-if)#ip address 192.168.30.1 255.255.255.0
PC3(config-if)#no shutdown 

PC4-PC7上的配置与上述一致,仅IP地址和默认网关有变,略 

测试

通过ping测试发现PC1可以实现上网,并且PC间跨VXLAN设备之间可以实现通信,实验成功!

抓包:

这里抓R3的g1/0接口,使用PC1 ping PC4实现跨VXLAN通信时抓包如下图所示:

分析PC1去访问PC2的具体通信流程:

通过抓包我们可以发现,当PC1访问PC2时明明PC1只发送了5个ICMP包,那么为什么R3的g1/0链路上会抓到20个ICMP包呢,下面我们来具体分析一下,

由于R3是该VXLAN网络中的集中式网关设备,因此所有跨 VXLAN Segment(虚拟扩展局域网段)的三层转发都由核心层的集中式网关处理,下面我们来一起具体分析一下PC1去访问PC2的整个通信过程。

已知:

PC1 属于 VNI 10(网段 192.168.10.0/24);

PC2 属于 VNI 20(网段 192.168.20.0/24);

R1是 L2 网关(同时作为 VTEP,处理 VXLAN 封装 / 解封装)

R2 是 L2 网关(同时作为 VTEP,处理 VXLAN 封装 / 解封装)

R3 是集中式 L3 网关(处理跨 VNI 的三层转发)。

第一步:PC1 发数据到 L2 网关(R1)

PC1(192.168.10.1)要访问 PC2(192.168.20.1),先将原始数据(二层以太网帧,目的 IP 192.168.20.1)发给本地 L2 网关 R1

第二步:L2 网关封装并转发到 L3 网关(R3)

R1 识别到目标 IP(192.168.20.1)属于其他 VNI(VNI 20),于是对原始数据进行VXLAN封装(包含源 VNI 10、对端 L3 网关 R3 的 IP 等信息);

然后通过 VXLAN 隧道(Tunnel13,R1 到 R3 的VXLAN隧道),将封装后的报文转发到 R3(L3 网关)。

第三步:L3 网关解封装并转发到目标 L2 网关(R1)

R3 收到 VXLAN 报文后:

  1. 解封装 VXLAN 头部 :还原出原始三层 IP 报文,目的 IP 为 192.168.20.1(PC2 的 IP)。
  2. 查询路由表
    • 从路由表中找到 192.168.20.0/24 网段的路由条目,且出接口是 vsi20(对应 VNI 20 的虚拟接口)。
    • 这一步确保 R3 知道 "192.168.20.0/24 网段属于本地可转发的 VNI 20 域"。
  3. 查询 ARP 表
    • 找到 192.168.20.1 对应的条目:MAC address: aabb-cc00-9000Interface/Link ID: Tunnel13(R3 到 R1 的VXLAN隧道)。
    • 这一步明确 "要发往 PC2(192.168.20.1),需要通过 Tunnel13 隧道转发"。
  4. 重新封装报文
    • 将原始 IP 报文封装成二层以太网帧 (源 MAC 为 R3 的 MAC,目的 MAC 为 aabb-cc00-9000)。
    • 再给该以太网帧添加 VXLAN 头部 (指定 VNI 为 20),通过 Tunnel13 隧道转发给 R1。
第四步:目标 L2 网关解封装并转发到 PC2

R1 收到 L3 网关转发的 IP 报文后:

识别到目标 IP 是本地 VNI 20 内的 PC2;

去掉 VXLAN 封装(因为现在要发给本地 VNI 内的终端),将原始数据转发给 PC2(192.168.20.1)。

回包过程(PC2 到 PC1)

PC2 回包时,流程相反:

PC2 发数据到 R1(L2 网关);

R1 封装成 VXLAN 报文,通过隧道发给 R3(L3 网关);

R3 解封装后,根据自身路由表以及ARP表,将数据包转发给 R1;

R1 解封装后发给 PC1。

关于PC1 发 5 个请求,却在 R3 的 g1/0 抓到 20 个 ICMP 包,其具体原因如下:
  1. 去程流量(PC1→PC2)

    • PC1 发 5 个 ICMP 请求 → R1 封装成 VXLAN 报文 → 通过 Tunnel13 发给 R3。
    • R3 解封装后,重新封装成 VXLAN 报文 → 通过 Tunnel13 发给 R1。
    • 这部分在 R3 的 g1/0 会抓到 5 个 "R1→R3" 的请求封装包 + 5 个 "R3→R1" 的转发封装包(共 10 个)。
  2. 回程流量(PC2→PC1)

    • PC2 发 5 个 ICMP 响应 → R1 封装成 VXLAN 报文 → 通过 Tunnel13 发给 R3。
    • R3 解封装后,重新封装成 VXLAN 报文 → 通过 Tunnel13 发给 R1。
    • 这部分在 R3 的 g1/0 会抓到 5 个 "R1→R3" 的响应封装包 + 5 个 "R3→R1" 的转发封装包(共 10 个)。
  3. 总计:去程 10 个 + 回程 10 个 = 20 个 ICMP 相关包,导致R3设备链路处理数据包资源的压力较大。

进一步体现了VXLAN集中式网关的弊端:

①产生了次优路径:

按正常二层逻辑:PC1(VNI 10)和 PC2(VNI 20)均直接接入同一 L2 网关 VTEP1,理论上跨 VNI 通信可在 VTEP1 本地完成三层转发(若采用分布式网关,让 VTEP1 具备 L3 网关能力);但在集中式架构下,流量却必须 "绕路" 到核心层的 VTEP3,形成次优路径:

理想最优路径:PC1 → R1(本地 L3 转发)→ PC2(无需经过 R3,转发距离最短、延迟最低);

实际次优路径:PC1 → R1 → 隧道 13 → R3(解封装 + 路由查询 + 重新封装)→ VXLAN隧道 13 → R1 → PC2(流量在 R1 与 R3 之间往返,多走 "冤枉路")。

②集中式网关容易成为性能瓶颈

当网络中跨 VNI 通信的流量较大时,集中式网关容易成为性能瓶颈,因为它需要处理大量的数据包解封装、路由查询、重新封装等操作,可能导致转发延迟增加,甚至出现丢包现象,影响网络整体的传输效率。

设备资源消耗高:

集中式网关要维护大量的路由表、ARP 表等信息,尤其是在大规模网络环境中,随着接入终端数量的增多,这些表项的规模会急剧扩大,对网关设备的内存、CPU 等资源消耗极大,可能导致设备运行负荷过高,稳定性下降。

④存在单点故障隐患:

一旦集中式网关设备出现故障,整个网络中所有跨 VXLAN Segment 的通信都会中断,造成严重的网络服务不可用问题,缺乏冗余备份机制时,可靠性难以保障。

R3\]display l2vpn mac-address \[R1\]display l2vpn vsi name vm1 verbose **LINK ID表示的是 "到达该 ARP 条目中对应 IP 地址的下一跳出接口或隧道",**通过查R1的mac地址表发现其中记录的PC1和PC2和PC3的MAC地址信息其对应的LINK ID等于0,进一步使用以下命令发现,这个LINK ID 0就对应单臂路由子接口 ![](https://i-blog.csdnimg.cn/direct/4e862082cf2c4fc1bf37ac065044562f.png) ![](https://i-blog.csdnimg.cn/direct/afd3ee6039124bbfa5b028cc00fd8dca.png) #### 查看Tunnel信息 ![](https://i-blog.csdnimg.cn/direct/9c59ed9959724ff1896de9141a03bc43.png) ### 配置文档 R1: sysname R1 # ospf 1 area 0.0.0.0 # l2vpn enable # vsi vm1 vxlan 10 tunnel 12 tunnel 13 # vsi vm2 vxlan 20 tunnel 12 tunnel 13 # vsi vm3 vxlan 30 tunnel 12 tunnel 13 # interface LoopBack0 ip address 10.255.12.1 255.255.255.255 ospf 1 area 0.0.0.0 # interface GigabitEthernet1/0 port link-mode route # interface GigabitEthernet1/0.10 vlan-type dot1q vid 10 xconnect vsi vm1 # interface GigabitEthernet1/0.20 vlan-type dot1q vid 20 xconnect vsi vm2 # interface GigabitEthernet1/0.30 vlan-type dot1q vid 30 xconnect vsi vm3 # interface GigabitEthernet2/0 port link-mode route ip address 10.1.14.1 255.255.255.0 ospf 1 area 0.0.0.0 # interface Tunnel12 mode vxlan source LoopBack0 destination 10.255.12.2 # interface Tunnel13 mode vxlan source LoopBack0 destination 10.255.1.3 # R2: sysname R2 # l2vpn enable # vsi vm1 vxlan 10 tunnel 12 tunnel 23 # vsi vm2 vxlan 20 tunnel 12 tunnel 23 # vsi vm3 vxlan 30 tunnel 12 tunnel 23 # interface LoopBack0 ip address 10.255.12.2 255.255.255.255 ospf 1 area 0.0.0.0 # interface GigabitEthernet1/0 port link-mode route # interface GigabitEthernet1/0.10 vlan-type dot1q vid 10 xconnect vsi vm1 # interface GigabitEthernet1/0.20 vlan-type dot1q vid 20 xconnect vsi vm2 # interface GigabitEthernet1/0.30 vlan-type dot1q vid 30 xconnect vsi vm3 # interface GigabitEthernet2/0 port link-mode route ip address 10.1.24.2 255.255.255.0 ospf 1 area 0.0.0.0 # interface Tunnel12 mode vxlan source LoopBack0 destination 10.255.12.1 # interface Tunnel23 mode vxlan source LoopBack0 destination 10.255.1.3 R3: sysname R3 # l2vpn enable # vsi vm1 gateway vsi-interface 10 vxlan 10 tunnel 13 tunnel 23 # vsi vm2 gateway vsi-interface 20 vxlan 20 tunnel 13 tunnel 23 # vsi vm3 gateway vsi-interface 30 vxlan 30 tunnel 13 tunnel 23 # interface LoopBack0 ip address 10.255.1.3 255.255.255.255 ospf 1 area 0.0.0.0 # interface GigabitEthernet1/0 port link-mode route ip address 10.1.34.3 255.255.255.0 ospf 1 area 0.0.0.0 # interface GigabitEthernet2/0 port link-mode route ip address 202.101.1.1 255.255.255.252 nat outbound 2000 # interface Vsi-interface10 ip address 192.168.10.254 255.255.255.0 # interface Vsi-interface20 ip address 192.168.20.254 255.255.255.0 # interface Vsi-interface30 ip address 192.168.30.254 255.255.255.0 # interface Tunnel13 mode vxlan source LoopBack0 destination 10.255.12.1 # interface Tunnel23 mode vxlan source LoopBack0 destination 10.255.12.2 # ip route-static 0.0.0.0 0 202.101.1.2 # acl basic 2000 rule 0 permit source 192.168.10.0 0.0.0.255 rule 5 permit source 192.168.20.0 0.0.0.255 rule 10 permit source 192.168.30.0 0.0.0.255 R4: sysname R4 # interface GigabitEthernet1/0 port link-mode route ip address 10.1.14.4 255.255.255.0 ospf 1 area 0.0.0.0 # interface GigabitEthernet2/0 port link-mode route ip address 10.1.24.4 255.255.255.0 ospf 1 area 0.0.0.0 # interface GigabitEthernet3/0 port link-mode route ip address 10.1.34.4 255.255.255.0 ospf 1 area 0.0.0.0 SW1: sysname SW1 # vlan 10 # vlan 20 # vlan 30 # interface HundredGigE1/0/1 port link-mode bridge port access vlan 10 # interface HundredGigE1/0/2 port link-mode bridge port access vlan 20 # interface HundredGigE1/0/3 port link-mode bridge port access vlan 30 # interface HundredGigE1/0/4 port link-mode bridge port link-type trunk port trunk permit vlan 1 10 20 30 SW2: sysname SW2 # vlan 10 # vlan 20 # vlan 30 # interface HundredGigE1/0/1 port link-mode bridge port access vlan 10 # interface HundredGigE1/0/2 port link-mode bridge port access vlan 20 # interface HundredGigE1/0/3 port link-mode bridge port access vlan 30 # interface HundredGigE1/0/4 port link-mode bridge port access vlan 30 # interface HundredGigE1/0/5 port link-mode bridge port link-type trunk port trunk permit vlan 1 10 20 30

相关推荐
花火Neko`2 小时前
openwrt防火墙安全配置
网络·安全·智能路由器·istoreos
Wen2 小时前
小米路由器4A千兆刷OPENWRT(简单快速)
网络·经验分享·智能路由器
碎梦归途2 小时前
思科网络设备配置命令大全,涵盖从交换机到路由器的核心配置命令
linux·运维·服务器·网络·网络协议·路由器·交换机
七维大脑虚拟机2 小时前
飞牛NAS公网IPv6+DDNS远程访问零延迟教程
运维·服务器·网络
珠海西格电力科技2 小时前
微电网系统架构设计:并网/孤岛双模式运行与控制策略
网络·人工智能·物联网·系统架构·云计算·智慧城市
浩浩测试一下3 小时前
从Web 到 域控 <----> 企业级内网渗透思路
网络
AZ996ZA3 小时前
自学linux第十八天:【Linux运维实战】系统性能优化与安全加固精要
linux·运维·安全·性能优化
weixin_437044644 小时前
Netbox批量添加设备——堆叠设备
linux·网络·python
一体化运维管理平台4 小时前
DevOps落地利器:美信监控易如何打通开发与运维?
运维