同子网基于IPv4网络静态VXLAN配置示例(下)

接上篇:同子网基于IPv4网络静态VXLAN配置示例(上)-CSDN博客

(3)验证VXLAN报文封装/解封装和报文转发流程。

为了使大家加深对VXLAN报文的封装和解封装流程的理解,下面以本示例中VM1 ping VM2时的ICMP报文的转发过程,介绍VXLAN封装和解封装流程。在没有配置VXLAN三层网关的网络中,中间的IP设备Switch1仅按照IP路由表进行IP报文转发,不进行VXLAN封装和解封装。

图4-31是Leaf1 GE1/0/1.1子接口上收到的VM1向VM2发送的ICMP请求报文。此时的报文还没有经过VXLAN封装,仍为普通的IP报文,以太网头中的源/目的MAC地址分别为VM1、VM2的MAC地址5489-986e-2681、5489-98ef-7555,IP报头中的源/目的IP地址也是VM1、VM2的IP地址10.1.1.10、10.1.1.1.11,并且封装了经过Switch2封装的VLAN 10标签。

此ICMP请求报文到了Leaf1后,在经过VXLAN隧道向Leaf2传输前,必须经过VXLAN封装。但在进行VXLAN封装前,因为Leaf1采用基于Dot1q二层子接口接入方式,按照默认配置先会去掉原始ICMP请求报文中封装的VLAN 10标签。经过VXLAN重封装的VXLAN报文根据外层IP报头按照IP路由表向Switch1传输。

图4-32是Leaf1 GE1/0/0接口向Switch1发送的,经过VXLAN封装后的ICMP请求报文。封装后的VXLAN报文中,内层以太网头、内层IP报头均与图4-31所示的ICMP请求报文一样,新增的外层以太网头的源/目的MAC地址分别是Leaf1、Switch1的GE1/0/0接口的MAC地址3867-bc01-0100、3867-bc03-0100;新增的外层IP报头的源/目的IP地址分别是Leaf1、Leaf2的VTEP IP地址1.1.1.1、2.2.2.2;VXLAN网段为VNI 2010。

在Leaf1上经过了VXLAN封装的VM1向VM2发送的ICMP请求报文到了Switch1后,按照普通的IP报文依据IP路由表传输。首先要根据原VXLAN报文中的外层IP报头中的目的IP地址2.2.2.2,在IP路由表找到本地出接口GE1/0/1(IP地址为192.168.2.2),以及下一跳Leaf2 GE1/0/0接口IP地址192.168.2.1。图4-33是Switch1的IP路由表。

Switch1找到对应的路由表项后,再根据本地的ARP表找到出接口GE10/1、下一跳IP地址192.168.2.1对应的MAC地址。图4-34是Switch1的ARP表。最后,Switch1仅对所收到的VXLAN报文中的外层以太网头进行重封装,其它部分保持不变,通过出接口GE1/0/1向Leaf2进行传输。

图4-35是Switch1 GE1/0/1接口向Leaf2发送的,经过外层以太网头重封装后的ICMP请求报文。其中除了外层以太网头中的源/目的MAC地址分别由原来的Leaf1 GE1/0/0、Switch1 GE1/0/0接口的MAC地址3867-bc01-0100、3867-bc03-0100,分别更换为Switch1的GE1/0/1接口、Leaf2的GE1/0/0接口的MAC地址3867-bc03-0101、3867-bc02-0100外,其它均与图4-32中的一样。

经过了Switch1转发,封装了VM1向VM2发送的ICMP请求报文的VXLAN报文到了Leaf2后,首先会根据其中的VNI 2010封装,找到对应的隧道出接口,即GE1/0/1.1二层接口,然后按照该Dot1q子接口的VLAN封装配置,在对原来的VXLAN报文进行VXLAN解封装后添加VLAN 10的标签,发送给VM2。图4-36是Leaf2 GE1/0/1.1子接口向VM2发送的ICMP请求报文。

至此,VM1发送的ICMP请求报文经过多次封装、解封装后,成功到达了VM2。VM2向VM1发送的ICMP应答报文的VXLAN封装、解封装和报文转发流程类似,不再赘述。

(4)验证VXLAN MAC地址学习功能。

在Leaf1和Leaf2上分别执行display mac-address 命令,可以看到这两台设备已成功动态学习到了VM1和VM2的MAC地址,并且已记录生成对应的MAC地址表项。图4-37是在Leaf1上执行display mac-address 命令的输出。从中可以看出,VM1的MAC地址5489-986e-2681是通过GE1/0/1.1子接口学习到的,VM2的MAC地址5489-98ef-7555是通过VXLAN隧道从Leaf2学习到的。

【说明】在Switch1上执行display mac-address 命令时,不会见到VM1、VM2的MAC地址表项,因为本示例中Switch1仅作为一台普通的三层设备,不会进行VXLAN封装和解封装,仅对所收到的VXLAN报文进行二层以太网头重封装,然后按IP路由进行转发。

以上内容摘自笔者刚刚发布的2026年新作《华为VXLAN+BGP EVPN实战指南------数据中心网络工程师进阶之路》(电子版,无纸质版,私联),全国唯一的华为数据中心网络核心技术专著。

相关推荐
在角落发呆19 小时前
工具配置备份步骤:从手动备份到自动化方案
运维·windows·自动化
百度一下吧20 小时前
Nginx 使用手册:从安装配置到实战部署
运维·nginx
JeJe同学20 小时前
Docker镜像导入、容器启动
linux·运维·docker
木子n120 小时前
车载以太网与SOME/IP服务化通信实战-01.从字节到服务:SOME/IP报文解析与四通道开销账
网络·网络协议·tcp/ip·车载以太网·some/ip
回眸&啤酒鸭21 小时前
【回眸】自动化白盒测试落地实战指南
运维·自动化·log4j
闲云野鹤在人间21 小时前
MySQL|从理论、安装、备份到主从复制、MHA高可用详解
linux·运维·数据库·mysql·云计算
Escalating_xu1 天前
【C 语言】数据在内存中的存储:补码、大小端、整型陷阱与 IEEE 754 全解析
java·c语言·网络
爱跳舞的烤冷面1 天前
Linux篇——网络编程
网络
资料库011 天前
Linux 8个常见运维故障排查
java·linux·运维
Knight_AL1 天前
基于 Netty 实现的 WebSocket 服务端
网络·websocket·网络协议