同子网基于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实战指南------数据中心网络工程师进阶之路》(电子版,无纸质版,私联),全国唯一的华为数据中心网络核心技术专著。

相关推荐
乘云数字DATABUFF2 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
荣--4 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森4 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜5 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
SelectDB6 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
XIAOHEZIcode7 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220708 天前
如何搭建本地yum源(上)
运维
大树8811 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠11 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质11 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务