这是一个非常典型的 云网络架构问题,考察你对 Underlay 与 Overlay 网络解耦、通信机制、虚拟化网络模型 的理解。
我们来系统性地拆解:
✅ 一、简明结论(面试可用)
在云网络中,物理主机(Underlay)访问 VM(Overlay) 的核心挑战是:
如何跨越“物理网络”与“虚拟网络”的边界。
主要有 4 种方式:
- 通过集中式网关(L3 Gateway)
- 通过分布式网关(Distributed Logical Router)
- 通过服务链(Service Insertion)或负载均衡器
- 直接路由打通(Underlay 与 Overlay 路由互通)
所有方式的本质都是:将 Overlay 中的 VM IP 映射到 Underlay 可达的路径上。
✅ 二、背景说明
| 角色 | 网络位置 | IP 范围 |
|---|---|---|
| 物理主机 | Underlay | 192.168.1.0/24(物理网络) |
| VM | Overlay(如 VXLAN) | 10.0.0.0/24(租户网络) |
- VM 之间通过 VXLAN/Geneve 封装通信
- 物理主机无法直接看到 VM 的
10.0.0.xIP - 需要 网关或路由机制 实现互通
✅ 三、四种主要方式详解
🔹 方式 1:通过集中式网关(Centralized L3 Gateway)
📌 架构
深色版本
物理主机 (192.168.1.10)
↓
[ 核心交换机 / 边缘路由器 ]
↓
[ 集中式网关(L3 Gateway)]
↓ (VXLAN 封装)
[ 宿主机 ] → [ VM (10.0.0.50) ]
✅ 实现机制
-
在 网络边缘设备(如 Top-of-Rack 交换机、防火墙、路由器)上配置:
- VXLAN VTEP
- L3 接口:
10.0.0.1/24(作为 VM 的默认网关)
-
物理主机配置静态路由:
Bash 深色版本 ip route add 10.0.0.0/24 via 192.168.1.1 # 指向网关 -
网关收到
10.0.0.50的包后,封装成 VXLAN 发送到 VM 所在宿主机
✅ 优点
- 架构清晰,易于管理
- 安全策略集中(可集成防火墙)
❌ 缺点
- 流量绕行,延迟高(Hairpin 转发)
- 网关成为瓶颈
🌐 典型场景
- 传统数据中心
- Cisco ACI、VMware NSX-V
🔹 方式 2:通过分布式网关(Distributed Logical Router, DLR)
📌 架构
深色版本
物理主机 (192.168.1.10)
↓
[ TOR 交换机 ]
↓
[ 宿主机 A (192.168.1.20) ] ← 同一宿主机或直连
↓ (本地路由)
[ VM (10.0.0.50) ]
✅ 实现机制
-
每个宿主机上运行一个“分布式逻辑路由器”实例(如 Open vSwitch、NSX DLR)
-
路由器实例拥有:
- 上行接口:连接 Underlay(
192.168.1.20) - 下行接口:连接 Overlay(
10.0.0.1/24)
- 上行接口:连接 Underlay(
-
物理主机配置路由:
Bash 深色版本 ip route add 10.0.0.0/24 via 192.168.1.20 -
当包到达宿主机,本地路由器实例直接路由到 VM,无需 VXLAN 封装(同宿主机)或仅跨宿主机时封装
✅ 优点
- 东西向流量本地转发,性能好
- 无单点瓶颈
- 支持 ECMP
❌ 缺点
- 控制面复杂(需要控制器同步路由)
🌐 典型场景
- VMware NSX-T
- OpenStack + OVN
- 阿里云 VPC(自研分布式网关)
🔹 方式 3:通过服务链或负载均衡器(Service Insertion)
📌 架构
深色版本
物理主机 → [ 7层负载均衡 / API 网关 / Ingress Controller ]
↓
[ 后端 VM ]
✅ 实现机制
- 物理主机不直接访问 VM IP
- 而是访问一个 代理服务(如 Nginx、Envoy、ALB)
- 该代理部署在 Underlay 可达的位置,但后端指向 Overlay 中的 VM
- 代理收到请求后,通过 VXLAN 封装转发给 VM
✅ 优点
- 安全(VM 不暴露)
- 可做认证、限流、日志
❌ 缺点
- 增加延迟
- 仅适用于应用层访问
🌐 典型场景
- Kubernetes Ingress
- AWS ALB → EC2
- 微服务网关
🔹 方式 4:Underlay 与 Overlay 路由打通(BGP 路由宣告)
📌 架构
深色版本
物理主机 (192.168.1.10)
↓
[ TOR 交换机(运行 BGP)]
↓
[ 宿主机(运行 BGP Speaker,如 BIRD)]
↓
[ VM (10.0.0.50) ]
✅ 实现机制
-
宿主机上的 BGP 客户端(如
BIRD、FRR)向 TOR 交换机宣告:Text 深色版本 Network: 10.0.0.0/24, Next-hop: 192.168.1.20 -
TOR 交换机学习到路由,广播给整个 Underlay
-
物理主机自动可达
10.0.0.0/24(无需静态路由)
✅ 优点
- 完全自动化
- 支持大规模扩展
- 适合裸金属接入 VPC
❌ 缺点
- 需要交换机支持 BGP
- 路由表膨胀风险
🌐 典型场景
- MetalLB(K8s 裸金属 LB)
- Calico BGP 模式
- 阿里云、AWS 的本地网关(Local Gateway)
✅ 四、总结对比表
| 方式 | 是否需要 VXLAN 封装 | 性能 | 管理复杂度 | 典型场景 |
|---|---|---|---|---|
| 集中式网关 | 是(跨子网) | 一般 | 低 | 传统 DC |
| 分布式网关 | 否(本地)/是(跨宿主) | ⭐ 高 | 高 | 云平台 |
| 服务链代理 | 是 | 中 | 中 | 微服务 |
| BGP 路由打通 | 否(Underlay 直达) | ⭐ 高 | 中 | 裸金属接入 |
✅ 五、关键技术点
1. VXLAN 封装由谁完成?
- 如果是跨宿主机通信:源宿主机的 VTEP(内核/OVS)
- 如果是本地通信:不需要封装,直接二层转发
2. ARP 如何解析?
- 分布式网关:网关代理 ARP 响应
- 集中式网关:网关响应 ARP
3. 安全考虑
- 通常配合 安全组(Security Group) 或 微隔离 控制访问
✅ 六、面试回答模板
“在云网络中,物理主机访问 Overlay 中的 VM,主要有四种方式:
- 集中式网关:流量经外部设备封装 VXLAN,简单但有绕行;
- 分布式网关:每个宿主机本地路由,性能最好,现代云平台主流;
- 服务链代理:通过 LB/网关间接访问,适合应用层;
- BGP 路由打通:自动宣告 VM 网段,适合大规模裸金属接入。
核心思想是:让 Underlay 网络知道 Overlay 网络的可达性,封装通常由宿主机完成。”
✅ 七、总结
| 问题 | 回答 |
|---|---|
| 物理机如何访问 VM? | 通过网关、代理或路由打通 |
| VXLAN 谁封装? | 宿主机(VTEP) |
| 哪种方式最快? | 分布式网关(本地转发) |
| 云厂商用哪种? | 分布式网关 + BGP(如阿里云、AWS) |
掌握这四种模式,说明你对 云网络的控制面与数据面协同 有深刻理解,是云架构师的核心能力。