VXLAN基本概念
NVE(Network Virtualization Edge,网络虚拟边缘)
- 是实现网络虚拟化功能的网络实体,可以是硬件交换机也可以是软件交换机。
- NVE在三层网络上构建二层虚拟网络,是运行VXLAN的设备。
VTEP(VXLAN Tunnel Endpoints,VXLAN隧道端点)
- VTEP是VXLAN隧道端点,位于NVE中,用于VXLAN报文的封装和解封装。
- VXLAN报文(其外层IP头部)中源IP地址为源端VTEP的IP地址,目的IP地址为目的端VTEP的IP地址。
VNI(VXLAN Network Identifier,VXLAN网络标识)
- 类似VLANID,用于区分VXLAN段。不同VXLAN段的虚拟机不能直接二层相互通信。
- 一个租户可以有一个或多个VNI,VNI长度为24 bit,支持多达16 M的租户。
BD(BridgeDomain,桥域)
- 类似传统网络中采用VLAN划分广播域,在VXLAN网络中一个BD就标识一个大二层广播域。
- VNI以1:1方式映射到广播域BD,同一个BD内的终端可以进行二层互通。
VAP(VirtualAccess Point,虚拟接入点)
- 实现VXLAN的业务接入。
- VAP有两种配置方式,二层子接口方式或者VLAN绑定方式:
- 二层子接口方式接入,例如在SW1创建二层子接口关联BD 10,则这个子接口下的特定流量会被注入到BD 10。
- VLAN绑定方式接入,例如在SW2配置VLAN 10与广播域BD 10关联,则所有VLAN10的流量会被注入到BD 10。
Edge和Border
- Edge:VXLAN网络的边缘接入设备,传统网络的流量由此进入VXLAN网络。
- Border:VXLAN网络和外部网络通信的节点,用于外部流量进入VXLAN网络或VXLAN内部流量访问外部,一般连接具有三层转发能力的设备(如Router、Firewall)。
VXLAN二层网关、三层网关
- 二层(L2)网关:实现流量进入VXLAN网络,也可用于同一VXLAN网络内终端的同子网通信。
- 三层(L3)网关:用于VXLAN网络内终端的跨子网通信以及终端对外部网络(非VXLAN网络)的访问。
VXLAN的报文格式
分布式与集中式网关
VXLAN工作原理
VXLAN隧道的建立方式
- VXLAN隧道由一对VTEP确定,报文在VTEP设备进行封装之后在VXLAN隧道中依靠路由进行传输。只要VXLAN隧道的两端VTEP是三层路由可达的,VXLAN隧道就可以建立成功。
- 根据VXLAN隧道的创建方式将VXLAN隧道分为以下两种:
- 静态隧道:通过用户手工配置本端和远端的VNI、VTEP IP地址和头端复制列表(head-end peer-list)来完成。
- 动态隧道:通过BGP EVPN(Ethernet VPN,以太网虚拟私有网络)方式动态建立VXLAN隧道。在VTEP之间建立BGP EVPN对等体,然后对等体之间利用BGP EVPN路由来互相传递VNI和VTEP IP地址信息,从而实现动态地建立VXLAN隧道。
VXLAN静态隧道配置实验
实验1:同VNI二层互通(2层网关)
PC1和PC5属于BD100,属于同一个广播域,需要二层互通。
PC2和PC6属于BD200,属于同一个广播域,需要二层互通。
LSW1配置
vlan batch 10 20
#
interface GigabitEthernet0/0/1
port link-type trunk
port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/2
port link-type access
port default vlan 10
#
interface GigabitEthernet0/0/3
port link-type access
port default vlan 20
LSW2配置
vlan batch 30 40
#
interface GigabitEthernet0/0/1
port link-type trunk
port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/2
port link-type access
port default vlan 30
#
interface GigabitEthernet0/0/4
port link-type access
port default vlan 40
AR1配置
interface GigabitEthernet0/0/0
ip address 10.1.12.11 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 10.1.11.11 255.255.255.0
#
interface GigabitEthernet0/0/2
ip address 10.1.13.11 255.255.255.0
#
ospf 1 router-id 1.1.1.1
area 0.0.0.0
network 10.1.11.11 0.0.0.0
network 10.1.12.11 0.0.0.0
network 10.1.13.11 0.0.0.0
CE1配置
interface GE1/0/0
undo portswitch
undo shutdown
ip address 10.1.11.1 255.255.255.0
#
interface LoopBack0
ip address 10.1.1.1 255.255.255.255
#
ospf 1 router-id 4.4.4.4
area 0.0.0.0
network 10.1.4.4 0.0.0.0
network 10.1.11.1 0.0.0.0
#
bridge-domain 100
vxlan vni 100
#
bridge-domain 200
vxlan vni 200
#
interface GE1/0/1.100 mode l2
encapsulation dot1q vid 10
bridge-domain 100
#
interface GE1/0/1.200 mode l2
encapsulation dot1q vid 20
bridge-domain 200
#
interface Nve1
source 10.1.1.1
vni 100 head-end peer-list 10.1.3.3
vni 200 head-end peer-list 10.1.3.3
CE3配置
interface GE1/0/0
undo portswitch
undo shutdown
ip address 10.1.13.3 255.255.255.0
#
interface LoopBack0
ip address 10.1.3.3 255.255.255.255
#
ospf 1 router-id 3.3.3.3
area 0.0.0.0
network 10.1.3.3 0.0.0.0
network 10.1.13.3 0.0.0.0
#
bridge-domain 100
vxlan vni 100
#
bridge-domain 200
vxlan vni 200
#
interface GE1/0/1.100 mode l2
encapsulation dot1q vid 30
bridge-domain 100
#
interface GE1/0/1.200 mode l2 //通过二层子接口接入Vxlan
encapsulation dot1q vid 40 //采用Dot1q的封装模式(Vlan10报文进入Vxlan隧道)
bridge-domain 200 //绑定BD域
#
interface Nve1 //创建Nve接口
source 10.1.3.3 //配置VTEP地址
vni 100 head-end peer-list 10.1.1.1
vni 200 head-end peer-list 10.1.1.1
实验2:不同vni三层互通(L3网关)
BD100 BD200属于同一个租户,需要3层互通
备注:征程配置是CE2需要4条头端列表,CE1 和CE3需要两条,但是模拟器通不了
CE2配置
interface GE1/0/0
undo portswitch
undo shutdown
ip address 10.1.12.2 255.255.255.0
#
interface LoopBack0
ip address 10.1.2.2 255.255.255.255
#
ospf 1 router-id 2.2.2.2
area 0.0.0.0
network 10.1.2.2 0.0.0.0
network 10.1.12.2 0.0.0.0
#
bridge-domain 100
vxlan vni 100
#
bridge-domain 200
vxlan vni 200
#
interface Vbdif100
ip address 10.1.10.254 255.255.255.0
#
interface Vbdif200
ip address 10.1.20.254 255.255.255.0
#
interface Nve1
source 10.1.2.2
vni 100 head-end peer-list 10.1.1.1
vni 100 head-end peer-list 10.1.3.3
vni 200 head-end peer-list 10.1.1.1
vni 200 head-end peer-list 10.1.3.3
CE1增加配置
interface Nve1
vni 100 head-end peer-list 10.1.2.2
vni 200 head-end peer-list 10.1.2.2
CE3增加配置
interface Nve1
vni 100 head-end peer-list 10.1.2.2
vni 200 head-end peer-list 10.1.2.2
说明:以上是完整的3层互通配置,但是在华为模拟器上存在问题,不能互通。