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