01 VXLAN技术
VXLAN(Virtual eXtensible Local Area Network)是一种网络虚拟化技术,通过在网络层之上创建一个逻辑上的二层网络,允许跨越多个物理网络的数据中心之间实现虚拟机迁移。
VXLAN使用UDP/IP作为封装协议,将原始的二层数据帧封装到UDP报文中,通过隧道技术传输到目的端点,再解封装恢复原始的数据帧。
01 工作原理:
- 封装过程:当数据帧从一个VXLAN端点(称为VTEP,VXLAN Tunnel End Point)进入VXLAN网络时,它被封装到一个UDP报文中,并加上一个VXLAN头部。这个头部包含一个24位的VNI(VXLAN Network Identifier),用于标识不同的逻辑网络。
- 传输过程:封装后的数据包通过三层网络传输到目的VTEP。
- 解封装过程:目的VTEP接收到数据包后,去除UDP和VXLAN头部,恢复原始的数据帧,并将其发送到正确的主机或VLAN。
02 VXLAN的优势
- 扩展性:VXLAN支持高达1600万个逻辑网络(通过24位的VNI),极大地扩展了网络的规模。
- 隔离性:不同的VXLAN可以提供逻辑上的隔离,使得各个虚拟网络之间互不干扰。
- 灵活性:VXLAN可以在不同的物理网络之间传输二层流量,简化了虚拟机迁移的过程。
- 可管理性:VXLAN减少了对传统VLAN数量的依赖,使得网络管理更加简单。
02 二层VXLAN详解
二层VXLAN(Layer 2 VXLAN)主要用于实现跨越多个物理网络的二层通信。它通过将二层数据帧封装在UDP/IP包中,使这些数据帧能够在三层网络中透明传输。

01 二层VXLAN的特点和优势
- 逻辑隔离:不同的VXLAN段之间逻辑上是隔离的,即便它们位于相同的物理网络上,也可以实现互不干扰的通信。
- 大规模扩展:VXLAN支持多达1600万个逻辑网络,大大缓解了传统VLAN数量限制的问题。
- 跨数据中心通信:二层VXLAN允许在不同的数据中心之间建立逻辑上的二层网络,支持跨数据中心的虚拟机迁移。
- 简化网络管理:减少了对传统VLAN的依赖,使得网络配置和管理变得更加简单。
02 实现二层VXLAN的关键组件和技术
- VTEP(VXLAN Tunnel End Point):负责执行数据帧的封装和解封装操作。
- VNI(VXLAN Network Identifier):用于标识不同的逻辑网络。
- UDPI/IP封装:使用UDP/IP协议作为隧道传输协议,将二层数据帧封装在UDP报文中。
- ARP请求处理:在VXLAN环境中,ARP请求也需要通过隧道传输,并在目的端解封装后进行处理。
03 三层VXLAN详解
三层VXLAN(Layer 3 VXLAN)是在二层VXLAN的基础上增加了路由功能,使得数据包可以在不同的VXLAN网络之间进行路由。

01 三层VXLAN的特点和优势
- 路由灵活性:通过路由功能,三层VXLAN可以实现不同VXLAN网络之间的通信,提供更灵活的网络连接。
- 子网管理:每个VXLAN网络可以划分为多个子网,支持更精细的网络管理和策略实施。
- 自动化配置:BGP-EVPN协议可以自动发现和管理VXLAN网络中的路由信息,简化了网络配置和维护工作。
- 扩展性:三层VXLAN不仅支持大规模的逻辑网络扩展,还可以通过路由实现更复杂的网络拓扑。
02 实现三层VXLAN的关键组件和技术
- BGP-EVPN:使用BGP-EVPN协议来管理VXLAN网络中的路由信息,实现自动化路由配置。
- VTEP(VXLAN Tunnel End Point):负责执行数据包的封装和解封装操作。
- VNI(VXLAN Network Identifier):用于标识不同的逻辑网络。
- UDPI/IP封装:使用UDP/IP协议作为隧道传输协议,将数据包封装在UDP报文中。
- 路由协议支持:支持BGP、OSPF等路由协议,用于在VXLAN网络之间进行路由选择。
04 二层与三层VXLAN的区别
01 工作层面:
二层VXLAN:主要用于实现跨越多个物理网络的二层通信,使得不同位置的虚拟机可以如同在同一物理网络中一样进行通信。
三层VXLAN:除了实现二层通信之外,还支持不同VXLAN网络之间的路由功能,使得数据包可以在不同的逻辑网络之间进行路由。
02 路由能力:
二层VXLAN:不具备路由能力,所有的通信都是在同一逻辑二层网络内部进行。
三层VXLAN:支持路由功能,可以实现不同逻辑网络之间的数据包传输。
03 管理复杂度:
二层VXLAN:相对简单,主要关注的是二层通信的封装和解封装。
三层VXLAN:管理复杂度较高,需要配置路由协议(如BGP-EVPN)来管理不同VXLAN网络之间的路由信息。
04 二层和三层VXLAN各自的适用场景
二层VXLAN
- 数据中心内部:在数据中心内部,二层VXLAN可以实现不同机架或机房之间的虚拟机迁移,保持虚拟机的二层通信不变。
- 虚拟化环境:在虚拟化环境中,二层VXLAN可以提供逻辑上的隔离,使得各个虚拟网络之间互不干扰。
三层VXLAN
- 多租户环境:在云计算或多租户环境中,三层VXLAN可以实现不同租户之间的网络隔离,并支持不同租户之间的路由通信。
- 分布式网络:在分布式网络架构中,三层VXLAN可以实现不同地理位置之间的逻辑网络通信,并提供路由功能。