摘要:VxLAN(Virtual Extensible LAN)作为现代数据中心网络虚拟化的核心技术,解决了传统 VLAN 扩展性不足的问题。本文将从 VxLAN 的基本原理、封装机制、控制平面、应用场景出发,结合企业级网络设备的真实部署案例,带你全面理解这项云网络基石技术。
常见问题解答:文末包含 5 个关键技术问题的详细解答(UDP 通信、网络拓扑、IP 互访要求、网关配置、VxLAN vs VLAN 对比)
一、为什么需要 VxLAN?
1.1 传统 VLAN 的局限性
在传统企业网络中,VLAN(Virtual LAN)是网络隔离的标准方案。但面对云数据中心和多租户场景,VLAN 暴露出三个致命问题:
| 问题 | 说明 | 影响 |
|---|---|---|
| VLAN ID 不足 | 12 位 VLAN ID 最多支持 4094 个 VLAN | 云服务商需要为每个租户分配独立网络,4094 远远不够 |
| 二层域受限 | VLAN 无法跨越三层网络边界 | 虚拟机迁移受物理位置限制,无法实现跨数据中心漂移 |
| MAC 表压力 | 所有 VM 的 MAC 地址都需要在物理交换机上学习 | 大规模 VM 场景下,交换机 MAC 表容易溢出 |
真实场景:假设你是一家云服务商,有 1000 个企业客户,每个客户平均需要 10 个隔离网络 → 需要 10,000 个 VLAN,但 VLAN 上限只有 4094。
1.2 VxLAN 的诞生
2011 年,VMware、Cisco、Arista 等公司联合提出了 VxLAN 标准(RFC 7348),核心目标:
- ✅ 支持 1600 万+ 隔离网络(24 位 VNI)
- ✅ 基于 UDP 封装,可跨越三层网络
- ✅ MAC-in-UDP 封装,对物理网络透明
二、VxLAN 核心原理
2.1 封装机制:MAC in UDP
VxLAN 的本质是将原始二层帧封装在 UDP 数据包中,通过 IP 网络传输。
封装开销:约 50 字节
- 外层 MAC 头:14 字节
- 外层 IP 头:20 字节
- UDP 头:8 字节
- VxLAN 头:8 字节
2.2 关键组件
VTEP(VxLAN Tunnel End Point)
VTEP 是 VxLAN 隧道的端点,负责封装和解封装。可以部署在:
| 部署位置 | 示例 | 特点 |
|---|---|---|
| 物理交换机 | 企业级核心路由器、三层交换机 | 硬件加速,性能好 |
| 虚拟交换机 | VMware vSwitch、OVS | 灵活,与 Hypervisor 集成 |
| 网关设备 | 边缘网关、工业路由器 | 边缘场景,连接云端 |
VNI(VxLAN Network Identifier)
24 位网络标识符,作用类似 VLAN ID,但容量大得多:
VNI 范围:0 - 16,777,215 (2^24 - 1)
保留 VNI:0 和 16,777,215
可用 VNI:1 - 16,777,214
Underlay vs Overlay
| 网络类型 | 说明 | 示例 |
|---|---|---|
| Underlay | 物理 IP 网络,承载 VxLAN 流量 | 数据中心 Spine-Leaf 网络 |
| Overlay | 逻辑二层网络,VM 看到的网络 | 租户的虚拟局域网 |
三、VxLAN 控制平面:如何学习 MAC 地址?
VxLAN 需要知道"哪个 VTEP 上有哪个 MAC 地址",这就是控制平面的任务。
3.1 三种控制平面模式
Figure: Three control plane modes - Flood & Learn (left), Centralized Controller (middle), BGP EVPN (right, recommended)
模式一:Flood & Learn(泛洪学习)
- ✅ 配置简单,无需额外组件
- ❌ 广播流量大,扩展性差
- ❌ 不适合大规模部署
模式二:集中式控制器
- ✅ 集中管理,策略统一
- ❌ 控制器单点故障
- ❌ 厂商锁定(如 VMware NSX)
模式三:EVPN + VxLAN(推荐⭐)
- ✅ 无泛洪,效率高
- ✅ 标准协议,多厂商互通
- ✅ 支持跨子网路由
- ⭐ 现代数据中心标准方案
EVPN 路由类型:
- Type 2:MAC/IP 路由(通告 VM 的 MAC 地址)
- Type 3:Inclusive Multicast(广播/组播)
- Type 5:IP 前缀路由(跨子网通信)
四、VxLAN 应用场景
4.1 云数据中心多租户
Figure: Multi-tenant cloud datacenter with complete isolation (Tenant A: VNI 1001, Tenant B: VNI 1002)
关键需求:
- 租户之间完全隔离(即使 IP 地址重叠)
- 支持租户内部多层网络架构
- 虚拟机可跨物理服务器迁移
4.2 跨数据中心二层互联
Figure: Cross-datacenter layer-2 extension enables VM live migration without IP change
关键需求:
- 虚拟机可跨数据中心迁移(如灾备场景)
- 应用无需修改 IP 地址
- 低延迟、高可用
4.3 容器网络(Kubernetes CNI)
Figure: Pod-to-Pod communication across nodes via VxLAN tunnel (Flannel/Calico)
主流方案:
- flannel:VxLAN 后端,简单易懂
- Calico:支持 VxLAN 和 BGP 两种模式
- Cilium:eBPF + VxLAN
五、真实案例:企业网络 VxLAN 部署
5.1 案例背景
客户:某智能制造企业(广州)
需求:
- 总部与 3 个工厂需要网络互联
- 每个工厂有独立的 MES、ERP、OA 系统
- 需要支持跨厂区的虚拟机迁移(灾备)
- 未来可能扩展到 10+ 工厂
网络现状:
- 总部:企业级核心路由器 + 三层交换机
- 工厂:边缘网关
- 各站点通过 MPLS 专线互联
5.2 方案设计
拓扑架构
VNI 规划
Figure: VNI assignment for different departments (VNI range: 0-16,777,215)
| 业务系统 | VNI | IP 网段 | 说明 |
|---|---|---|---|
| MES 生产网 | 100 | 10.10.0.0/16 | 生产控制,高优先级 |
| ERP 管理网 | 200 | 10.20.0.0/16 | 企业管理,中优先级 |
| OA 办公网 | 300 | 10.30.0.0/16 | 日常办公,标准优先级 |
| 访客网络 | 400 | 10.40.0.0/16 | 隔离,仅互联网访问 |
5.3 配置示例(核心路由器)
# 启用 VxLAN 功能
vxlan enable
# 创建 VxLAN 隧道接口
interface vxlan1
vxlan vni 100
vxlan source-interface 192.168.1.1
vxlan remote-vtep 10.1.1.1 # 工厂 A
vxlan remote-vtep 10.1.2.1 # 工厂 B
vxlan remote-vtep 10.1.3.1 # 工厂 C
# 配置 BGP EVPN
router bgp 65001
neighbor 10.1.1.1 remote-as 65001
neighbor 10.1.2.1 remote-as 65001
neighbor 10.1.3.1 remote-as 65001
address-family l2vpn evpn
neighbor 10.1.1.1 activate
neighbor 10.1.2.1 activate
neighbor 10.1.3.1 activate
# 将物理接口绑定到 VxLAN
interface gigabitethernet0/1
vxlan binding vxlan1
switchport access vlan 100
5.4 配置示例(边缘网关)
# 工厂 A - 边缘网关配置
vxlan enable
interface vxlan1
vxlan vni 100
vxlan source-interface 10.1.1.1
vxlan remote-vtep 192.168.1.1 # 总部
interface vxlan2
vxlan vni 200
vxlan source-interface 10.1.1.1
vxlan remote-vtep 192.168.1.1 # 总部
router bgp 65001
neighbor 192.168.1.1 remote-as 65001
address-family l2vpn evpn
neighbor 192.168.1.1 activate
5.5 部署效果
| 指标 | 部署前 | 部署后 |
|---|---|---|
| 网络隔离数 | 4 个 VLAN | 4 个 VNI(可扩展至 1600 万+) |
| 跨厂区通信 | 需要路由,配置复杂 | 二层直通,透明传输 |
| 虚拟机迁移 | 不支持 | 支持跨厂区实时迁移 |
| 扩展性 | 受 VLAN 数量限制 | 可无缝添加新工厂 |
| 故障恢复 | 手动切换 | BGP 自动收敛,秒级恢复 |
5.6 遇到的问题与解决
问题 1:MTU 设置不当导致丢包
Figure: MTU mismatch causes packet drop (left), solution is to increase physical MTU to 1550+ (right)
现象:VxLAN 隧道建立后,大包传输丢包严重
原因:VxLAN 封装增加 50 字节开销,但物理网络 MTU 仍为 1500
解决:
# 方案一:增加物理网络 MTU(推荐)
interface gigabitethernet0/1
mtu 1550
# 方案二:减少 VM 侧 MTU
# 在虚拟机内设置
ifconfig eth0 mtu 1450
问题 2:BGP EVPN 邻居无法建立
现象:VTEP 之间 BGP 邻居状态一直是 Idle
原因:防火墙阻止了 BGP 端口(TCP 179)
解决:
# 在设备上开放 BGP 端口
firewall rule add permit tcp any any eq 179
问题 3:广播流量过大
现象:网络监控发现大量广播包
原因:使用了 Flood & Learn 模式,未配置 EVPN
解决:升级为 BGP EVPN 控制平面(见上方配置)
六、VxLAN 性能优化建议
6.1 硬件卸载
如果物理交换机支持 VxLAN 硬件卸载,可以:
- ✅ 降低 CPU 负载
- ✅ 提升转发性能
- ✅ 减少延迟
6.2 ECMP 负载均衡
在 Spine-Leaf 架构中,使用 ECMP(Equal-Cost Multi-Path)分散 VxLAN 流量:
# 配置 ECMP
ip load-share mode vxlan-flow
6.3 控制平面优化
- 使用 BGP Route Reflector 减少 BGP 会话数
- 配置 BGP 聚合定时器 减少路由更新频率
- 启用 BFD 实现快速故障检测
七、VxLAN 与其他 Overlay 技术对比
| 技术 | 封装协议 | 扩展性 | 跨三层 | 成熟度 | 适用场景 |
|---|---|---|---|---|---|
| VxLAN | UDP (4789) | 1600 万+ | ✅ | ⭐⭐⭐⭐⭐ | 云数据中心 |
| GRE | GRE (47) | 有限 | ✅ | ⭐⭐⭐⭐ | 站点互联 |
| NVGRE | GRE | 1600 万+ | ✅ | ⭐⭐ | 已淘汰 |
| Geneve | UDP (6081) | 1600 万+ | ✅ | ⭐⭐⭐ | 新兴标准 |
| STT | TCP | 1600 万+ | ✅ | ⭐⭐ | VMware 专用 |
结论:VxLAN 是目前最成熟、应用最广泛的 Overlay 技术。
八、常见问题解答(FAQ)
Q1:VxLAN 是基于 UDP 通信的吗?
答案:是的,VxLAN 完全基于 UDP 通信。
📦 VxLAN 的 UDP 封装细节
标准端口
- UDP 目的端口:4789(IANA 分配的标准端口)
- UDP 源端口:动态分配(通常由 VTEP 随机选择)
完整封装层次
| 层次 | 协议 | 说明 |
|---|---|---|
| L2 | 外层以太网头 | 物理网络 MAC 地址转发 |
| L3 | 外层 IP 头 | VTEP 之间的 IP 路由 (VTEP IP) |
| L4 | UDP 头 | 目的端口 4789,源端口随机 |
| L4.5 | VxLAN 头 | 8 字节,包含 24 位 VNI |
| L2 | 原始以太网帧 | VM 发送的完整二层帧 |
为什么选择 UDP?
| 原因 | 说明 |
|---|---|
| 无连接 | UDP 不需要建立连接,封装开销小 |
| 负载均衡友好 | 可以用 UDP 五元组做 ECMP 哈希 |
| 穿透性好 | UDP 容易穿越 NAT 和防火墙 |
| 简单高效 | 没有 TCP 的重传、拥塞控制,由上层处理 |
抓包示例
如果你在物理网络上抓包,会看到这样的结构:
Ethernet II (外层 MAC)
├─ IP (外层 IP,源/目的是 VTEP 地址)
├─ UDP (目的端口 4789)
├─ VxLAN (8 字节头,含 VNI)
└─ Ethernet II (原始 VM 数据包)
├─ IP
├─ TCP/UDP
└─ 应用数据
一个关键细节:UDP 源端口
VxLAN 的 UDP 源端口不是固定的,VTEP 会:
- 根据内层数据包的哈希值选择源端口
- 这样做是为了让 ECMP 负载均衡更有效
VTEP-A → VTEP-B 的不同流量:
流量 1: UDP 源端口 50001 → 目的 4789
流量 2: UDP 源端口 50002 → 目的 4789
流量 3: UDP 源端口 50003 → 目的 4789
这样物理网络的 Spine 交换机可以用五元组哈希把不同流量分散到多条路径上。
⚠️ 常见问题
Q1-1:UDP 不可靠,VxLAN 数据会丢吗?
答:会丢,但这不是问题。
- VxLAN 承载的是二层以太网帧,以太网本身就是"尽力而为"
- 上层协议(TCP)会处理重传
- 如果 VM 跑的是 UDP 应用(如视频),那丢包是应用层该处理的
Q1-2:防火墙需要放行什么?
答:
- 放行 VxLAN UDP 4789 端口:
permit udp any any eq 4789 - 如果用了 BGP EVPN,还要放行 BGP:
permit tcp any any eq 179
Q1-3:可以用其他 UDP 端口吗?
答:可以,但不推荐。
- 标准是 4789,所有厂商都支持
- 如果用非标准端口,需要两端 VTEP 手动配置
- 某些硬件卸载可能只支持 4789
总结:VxLAN = MAC in UDP in IP in Ethernet,UDP 4789 是它的核心标识。
Q2:VxLAN 组网相当于一个中心多个分支吗?
答案:VxLAN 技术本身不强制拓扑,但实际部署中"一个中心 + 多个分支"确实是最常见的模式。
🏢 典型拓扑:中心辐射型(Hub-Spoke)
这种模式的特点
| 特点 | 说明 |
|---|---|
| 中心节点 | 总部 VTEP 作为 BGP Route Reflector,集中管理路由 |
| 分支节点 | 工厂 VTEP 只和总部建立隧道,分支之间不直接通信 |
| 流量走向 | 工厂 A → 工厂 B 的流量会经过总部转发 |
| 优点 | 配置简单、集中管控、安全策略统一 |
| 缺点 | 总部带宽压力大,单点故障风险 |
🔄 另一种模式:全互联(Full Mesh)
Figure: Full-mesh topology where all VTEPs connect directly. N×(N-1)/2 tunnels required.
所有 VTEP 之间直接建立隧道,流量不经过中转。
这种模式的特点
| 特点 | 说明 |
|---|---|
| 直接通信 | VTEP-A → VTEP-B 直接发送,不经过 VTEP-C |
| 优点 | 延迟低,无单点故障 |
| 缺点 | 隧道数量多(N×(N-1)/2),配置复杂 |
📊 两种模式对比
| 场景 | 中心辐射型 | 全互联型 |
|---|---|---|
| 站点数量 | 适合 10+ 站点 | 适合 <10 站点 |
| 隧道数量 | N-1 条 | N×(N-1)/2 条 |
| 带宽压力 | 集中在中心 | 分散 |
| 延迟 | 分支间通信需中转 | 直接通信 |
| 配置复杂度 | 低 | 高 |
| 典型场景 | 总部 + 分支机构 | 数据中心内部 |
💡 选型建议
推荐中心辐射型的场景:
- 总部有高性能核心设备,适合做中心
- 分支是边缘设备,配置越简单越好
- 需要集中管控(安全策略、路由)
- 未来需要扩展(加新分支只需和总部建隧道)
推荐全互联型的场景:
- 站点数量少(<10 个)
- 对延迟敏感
- 各站点设备性能相当
- 有足够的配置和维护能力
🎯 关键结论
- VxLAN 技术本身 - 不限制拓扑,任何 VTEP 之间都能建隧道
- 实际部署 - "一个中心 + 多个分支"最常见(尤其是企业场景)
- 选型原则 - 根据站点数量、设备性能、运维能力选择合适的拓扑
Q3:VxLAN 组网要求 VTEP 两端 IP 都能互访吗?
答案:是的,VTEP 之间的 IP 地址必须能互访,但 VM 的 IP 不需要。
✅ 什么是必须互通的?
网络要求总结
| 网络类型 | 谁需要互通 | 要求 |
|---|---|---|
| Underlay | VTEP 的物理 IP | ✅ 必须三层可达 (能 ping 通) |
| Overlay | VM 的 IP | ❌ 不需要,VM 以为自己在同一二层 |
🔍 为什么 VTEP IP 必须互通?
因为 VxLAN 封装后的数据包长这样:
[外层 MAC | 外层 IP (VTEP-A → VTEP-B) | UDP 4789 | VxLAN 头 | 原始帧]
↑_________↑
这段必须能路由到达!
如果 VTEP-A 的 IP 192.168.1.10 无法路由到 VTEP-B 的 IP 192.168.2.10:
- ❌ 外层 IP 包无法送达
- ❌ VxLAN 隧道建立失败
- ❌ VM 之间无法通信
📋 典型配置中的网络要求
总部核心路由器 (VTEP)
# 物理接口 IP (Underlay)
interface gigabitethernet0/1
ip address 192.168.1.1 255.255.255.0 # ← 这个 IP 必须能被工厂访问
工厂边缘网关 (VTEP)
# 物理接口 IP (Underlay)
interface wan1
ip address 10.1.1.1 255.255.255.0 # ← 这个 IP 必须能被总部访问
路由要求
总部核心路由器的路由表:
10.1.1.0/24 → 走 MPLS 专线 → 工厂 A
10.1.2.0/24 → 走 MPLS 专线 → 工厂 B
10.1.3.0/24 → 走 MPLS 专线 → 工厂 C
工厂 A 边缘网关的路由表:
192.168.1.0/24 → 走 MPLS 专线 → 总部
10.1.2.0/24 → 走 MPLS 专线 → 工厂 B (可选)
10.1.3.0/24 → 走 MPLS 专线 → 工厂 C (可选)
验证命令
在总部核心路由器上测试:
ping 10.1.1.1 # 工厂 A VTEP - 必须通
ping 10.1.2.1 # 工厂 B VTEP - 必须通
ping 10.1.3.1 # 工厂 C VTEP - 必须通
在工厂 A 边缘网关上测试:
ping 192.168.1.1 # 总部 VTEP - 必须通
⚠️ 常见坑点
坑 1:防火墙阻止 VTEP 通信
# ❌ 错误:防火墙只放了 VM 网段,没放 VTEP IP
firewall rule add permit ip 10.1.1.0/24 10.1.2.0/24
# ✅ 正确:VTEP 的物理 IP 也要放行
firewall rule add permit ip 192.168.1.0/24 10.1.0.0/16
firewall rule add permit udp any any eq 4789 # VxLAN 端口
firewall rule add permit tcp any any eq 179 # BGP 端口
坑 2:NAT 导致 VTEP IP 不可达
工厂 A (私有 IP) 互联网 总部 (公有 IP)
10.1.1.1 ─────→ NAT 转换 ─────→ 203.0.113.1
# ❌ 问题:总部不知道 10.1.1.1 是谁
# ✅ 解决:配置静态 NAT 或使用公有 IP
坑 3:路由不对称
去程:总部 → 工厂 A ✓ 通
回程:工厂 A → 总部 ✗ 不通 (路由缺失)
# 检查:双向 ping 测试
🎯 最小化要求总结
| 要求 | 说明 | 必须? |
|---|---|---|
| VTEP 之间 IP 三层可达 | 能互相 ping 通 | ✅ 必须 |
| UDP 4789 端口开放 | VxLAN 封装端口 | ✅ 必须 |
| BGP 179 端口开放 | 如果用 EVPN | ✅ 必须 |
| VM 之间 IP 可达 | ❌ 不需要,VxLAN 就是解决这个的 | 不需要 |
| 物理网络二层连通 | ❌ 不需要,VxLAN 跨越三层 | 不需要 |
💡 一句话总结
VTEP 的物理 IP 必须三层互通,VM 的 IP 完全不用管 —— VxLAN 的价值就是让 VM 以为自己在同一二层,哪怕物理上隔着十万八千里。
Q4:VxLAN 组网后,下联设备只要设置同网段就能通?不需要配网关?
答案:同一 VNI 内 + 同网段 = 不需要网关,直接二层通信,就像接在同一台交换机上一样。
✅ 不需要网关的情况
场景:同一 VNI + 同网段
VM1 想 ping VM2:
目标 IP: 10.1.1.6/24
VM1 判断:和我在同一网段 → 直接 ARP 广播 → 二层转发 → 不需要网关 ✅
这相当于一台虚拟交换机!
| 特性 | 传统交换机 | VxLAN Overlay |
|---|---|---|
| 广播域 | VLAN | VNI |
| MAC 学习 | 本地学习 | VTEP 之间学习 |
| 同网段通信 | 二层转发 | 二层转发(封装在 VxLAN 里) |
| 需要网关 | ❌ 不需要 | ❌ 不需要 |
⚠️ 但需要网关的情况
情况 1:同一 VNI + 不同网段
VNI = 100
VM1: 10.1.1.5/24 VM2: 10.1.2.5/24
│ │
└────────────────────┘
同一 VNI,但不同网段
VM1 想 ping VM2:
目标 IP: 10.1.2.5/24
VM1 判断:不在同一网段 → 发给默认网关 → 需要三层路由 ❌
解决:需要配置分布式网关(每个 VTEP 都配置网关 IP)
情况 2:不同 VNI(即使同网段)
VNI = 100 VNI = 200
VM1: 10.1.1.5/24 VM2: 10.1.1.6/24
│ │
└──────────────────────────┘
不同 VNI,完全隔离
VM1 想 ping VM2:
❌ 不通!VNI 之间完全隔离
✅ 需要三层网关做 VNI 间路由
📋 VxLAN 网关的两种模式
模式 1:集中式网关
所有 VTEP 的流量都发到同一个网关 VTEP
缺点:网关单点故障,带宽瓶颈
模式 2:分布式网关(推荐⭐)
每个 VTEP 都是网关
优点:
- ✅ 就近网关,延迟低
- ✅ 无单点故障
- ✅ 带宽分散
配置示例:
interface vlan100
ip address 10.10.1.1 255.255.255.0 # 网关 IP
vxlan vni 100
🎯 一句话总结
| 场景 | 需要网关? |
|---|---|
| 同一 VNI + 同网段 | ❌ 不需要,直接二层通 |
| 同一 VNI + 不同网段 | ✅ 需要,三层路由 |
| 不同 VNI | ✅ 需要,VNI 间路由 |
你的理解是对的:VxLAN 同 VNI 同网段 = 虚拟交换机,下联设备配同网段 IP 就能通,不需要网关!
Q5:VxLAN 和 VLAN 有什么区别?
答案:VxLAN 是 VLAN 的"升级版",解决了 VLAN 的扩展性和跨三层问题。
📊 核心对比
| 特性 | VLAN | VxLAN |
|---|---|---|
| 标准 | IEEE 802.1Q (1998) | RFC 7348 (2011) |
| 隔离标识 | 12 位 VLAN ID | 24 位 VNI |
| 隔离数量 | 4094 个 | 1600 万个+ |
| 跨三层 | ❌ 不支持 | ✅ 支持(UDP 封装) |
| 封装方式 | 无(native 二层) | MAC-in-UDP |
| 控制平面 | STP/MSTP | BGP EVPN(推荐) |
| 典型场景 | 企业局域网 | 云数据中心、跨数据中心 |
🎯 选型建议
使用 VLAN 的场景:
- 单个数据中心内部
- 隔离数量 < 1000
- 不需要跨三层延伸二层
- 设备不支持 VxLAN
使用 VxLAN 的场景:
- 云数据中心多租户
- 需要跨数据中心二层互联
- 隔离数量 > 4094
- Kubernetes 容器网络
- 需要虚拟机在线迁移
💡 实际部署中的关系
VxLAN 和 VLAN 不是替代关系,而是互补关系:
- Overlay 网络:使用 VxLAN VNI 1001-2000 隔离不同租户
九、总结
核心要点回顾
-
VxLAN 解决什么问题?
- VLAN 数量不足(4094 → 1600 万+)
- 二层网络无法跨越三层边界
- 大规模虚拟机的 MAC 表压力
-
VxLAN 如何工作?
- MAC-in-UDP 封装(UDP 端口 4789)
- VTEP 负责封装/解封装
- VNI 标识隔离网络
-
控制平面怎么选?
- 小规模:Flood & Learn
- 中等规模:集中式控制器
- 大规模:BGP EVPN(推荐⭐)
-
典型应用场景
- 云数据中心多租户
- 跨数据中心二层互联
- Kubernetes 容器网络
-
网络拓扑选择
- 中心辐射型:适合 10+ 站点,配置简单
- 全互联型:适合 <10 站点,延迟低
-
网络要求
- VTEP 物理 IP 必须三层互通
- VM IP 不需要互通(VxLAN 解决的就是这个)
-
网关配置
- 同 VNI + 同网段:不需要网关
- 同 VNI + 不同网段:需要分布式网关
- 不同 VNI:需要三层网关做 VNI 间路由
-
VxLAN vs VLAN
- VxLAN 是 VLAN 的升级,不是替代
- 两者在实际部署中互补共存
设备选型建议
| 场景 | 推荐设备 | 角色 |
|---|---|---|
| 数据中心核心 | 企业级核心路由器、高端交换机 | VTEP 网关 + BGP EVPN 控制器 |
| 企业汇聚 | 三层交换机 | VTEP 交换机 |
| 边缘站点 | 边缘网关、工业路由器 | 边缘 VTEP |
| 工业场景 | 工业级路由器 | 工业 VTEP |
参考资源
- RFC 7348 - VxLAN 标准文档
- RFC 7432 - BGP EVPN 标准文档
- 产品文档 - 各厂商设备配置指南
- VMware NSX 架构指南 - VxLAN 控制平面最佳实践