3.VXLAN报文在leaf上进行封装与解封装,中间的spine是无感知的,仅支持IP传输即可,VXLAN报文的封装如下:
以leaf1上封装访问server2的报文为例:
外层以太网帧头/外层IP头/UDP头部/VXLAN头部/原始报文
报文结构解释如下:
外层以太网帧头:SMAC为G1/0/1、DMAC为spine1的G0/0/1
外层IP头:SIP为leaf1的VTEP地址、DIP为leaf2的VTEP地址
UDP头部:目的端口固定为4789,源端口为原始报文中的内层以太网帧头hash得出的值
VXLAN头部:主要包含固定flag位00001000、携带VNI 500
原始报文:为server1上发出的初始报文,结构为:内层以太网帧头(DMAC为PC2 MAC、SMAC为PC1 MAC)/内层IP头(两端PC的IP地址)/载荷(报文携带的数据)
underlay配置略过,overlay配置如下
bridge-domain 1000 //创建bright-domain 1000
vxlan vni 500 //创建VNI 500 并与bright-domain 1000进行关联
#
interface GE1/0/3.10 mode l2 //配置业务接入点
encapsulation dot1q vid 10
bridge-domain 1000
#
interface Nve1 //将本设备配置为edge设备,并进入NVE接口
source 11.11.11.11 //指定loopback1口为本edge设备的vtep地址
vni 500 head-end peer-list 22.22.22.22 //收到配置VXLAN隧道
#
vxlan tunnel-status track exact-route //开启VXLAN隧道状态监控功能,开启后去往对端VTEP路由必须可达,隧道才UP,不开启默认只要有去往对端VTEP路由,即使是黑洞路由隧道也会UP
#
bridge-domain 1000 //创建bright-domain 1000
vxlan vni 500 //创建VNI 500 并与bright-domain 1000进行关联
#
interface GE1/0/3.20 mode l2 //配置业务接入点
encapsulation dot1q vid 20
bridge-domain 1000
#
interface Nve1 //将本设备配置为edge设备,并进入NVE接口
source 22.22.22.22 //指定loopback1口为本edge设备的vtep地址
vni 500 head-end peer-list 11.11.11.11 //收到配置VXLAN隧道
#
vxlan tunnel-status track exact-route //开启VXLAN隧道状态监控功能,开启后去往对端VTEP路由必须可达,隧道才UP,不开启默认只要有去往对端VTEP路由,即使是黑洞路由隧道也会UP
#
1、display vxlan tunnel //查看VXLAN隧道
2、display vxlan peer //查看隧道列表
3、PC1访问PC2测试
VSW1上:向VLAN 10内泛洪了ARP请求报文
leaf1上:ARP请求报文进入BD1000,然后通过VNI500进入VXLAN隧道中,泛洪到leaf2的VNI500,进入到与VNI500绑定的BD1000,最终到达PC2,PC2收到了泛洪的ARP请求报文,向PC1回复ARP应答报文
ARP应答报文结构如下:
ICMP请求报文结构如下: