Linux环境下VXLAN的简单组网

VXLAN

VXLAN(Virtual eXtensible Local Area Network,虚拟扩展局域网),是由IETF定义的NVO3(Network Virtualization over Layer 3)标准技术之一,是对传统VLAN协议的一种扩展。VXLAN的特点是将L2的以太帧封装到UDP报文(即L2 over L4)中,并在L3网络中传输。

VXLAN本质上是一种隧道技术,在源网络设备与目的网络设备之间的IP网络上,建立一条逻辑隧道,将用户侧报文经过特定的封装后通过这条隧道转发。从用户的角度来看,接入网络的服务器就像是连接到了一个虚拟的二层交换机的不同端口上,可以方便地通信。

创建点对点VXLAN隧道

系统:Debian10

A端机器ip:192.168.0.10

B端机器ip:192.168.2.11

vni:1200

本端节点配置

# A机器配置 
ip link add vxlan0 type vxlan local 192.168.0.10 remote 192.168.2.11 vni 1200 dstport 4789 dev eth0
ip link set vxlan0 up

对端节点配置

# B机器配置
ip link add vxlan0 type vxlan local 192.168.2.11 remote 192.168.0.10 vni 1200 dstport 4789 dev eth0
ip link set vxlan0 up

查看fdb转发表

bridge fdb show

多播模式的VXLAN隧道

有时候应用场景是一对多台机器的,这时候需要利用配置组播方式的vxlan隧道。

本端配置

# A 机器配置
ip link add vxlan0 type vxlan group 239.1.1.1 vni 1200 dst port dev eth0
ip link set vxlan0 up
# 添加到B机器的fdb转发表项
bridge fdb append to 00:00:00:00:00:00 dst 192.168.2.11 dev  vxlan0

对端配置

# B机器配置
ip link add vxlan0 type vxlan group 239.1.1.1 vni 1200 dev eth0
ip link set vxlan0 up
# 添加到A机器的FDB转发表项
bridge fdb append to 00:00:00:00:00:00 dst 192.168.0.10 dev vxlan0

VXLAN隧道与Bridge配合使用

# 创建网桥 br0
ip link add br0 type bridge
# 将vxlan端口加入网桥
ip link set vxlan0 master br0
# 将本地端口加入网桥
ip link set eth2 master br0
# 接口退出网桥
ip link set eth2 nomaster

注意:esxi虚拟机网络接口需要开启网卡混杂伪传输模式;加入网桥的接口不配置ip地址。

# 查看fdb转发表
bridge fdb show
# 查看网桥连接
bridge link
上一篇
下一篇