【网络工程师】手把手教你用华为ensp模拟器玩vxlan实验(静态方式)

如题所述

第1个回答  2022-06-21
一、背景

     随着云计算、虚拟化技术的发展,业务有时需要再不同地方同网段进行通信,即大二层网络。比如虚机迁移,从A数据中心迁移到异地数据中心。

      首先,我们都知道,路由器是用来隔离广播域的,同网段通信都在一个广播域,像这种不同地域,中间不知道隔了多少台路由器,就拿arp广播请求报文来说,怎么可能传过去呢?

其次,vlan的ID也是有限的,只有4096个。

这不,VXLAN就诞生了,所以一个技术的诞生绝对不是平白无故的产生,肯定是有特点的背景下,研发人员才去创造新的技术出来。

我个人简单理解vxlan就是 增加标签 和 建立隧道 ,把二层报文封装到UDP报文里面,通过隧道传递过去,构建大二层网络。当然还有很多细节的知识点,需要我们慢慢深入研究、学习。

二、拓扑图

三、思路

1、搭好实验环境,导入号CE6800镜像。

2、基础配置。(修改设备名、直连接口IP地址。)

3、配置路由协议。(保证CE1、CE2、CE3 loopback能通)

4、VXLAN相关配置。(建立VXLAN隧道、配置VNI号等)

5、验证。

四、配置过程

01、导入号CE6800镜像。

02、基础配置。

修改默认设备名:

CE1配置如下,其他设备参考如下,不再一一举例。

注意:CE系列设备,修改配置后,只要commit(提交),配置才生效。

<HUAWEI>sys

Enter system view, return user view with return command.

[~HUAWEI]sys CE1

[*HUAWEI]commi

[*HUAWEI]commit 

[~CE1]

[~CE1]

如果发现无法成功修改设备名,并提示如下报错:

 Error: The system is busy in building system configurations.

可以用display device查看:

解决办法:

1、关掉ensp;

2、启动vitual box,对CE镜像,修改系统内存,我调整到4G。

3、重新启动ensp。

我就是按上述操作,解决了。

CE1的直连接口IP地址设置,其他CE2、CE3参照拓扑图及如下命令:

[~CE1]int g1/0/0

[~CE1-GE1/0/0]undo portswitch 

[*CE1-GE1/0/0]ip add 12.1.1.1 24

[*CE1-GE1/0/0]undo shut

[*CE1-GE1/0/0]qu

[*CE1]int lo 0

[*CE1-LoopBack0]ip add 10.10.10.10 32

[*CE1-LoopBack0]qu

[*CE1]commit

[~CE1]

[Huawei]sysname SW1

[SW1]

[SW1]vlan 10

[SW1-vlan10]qu

[SW1]int g0/0/2

[SW1-GigabitEthernet0/0/2]port link-type trunk 

[SW1-GigabitEthernet0/0/2]port trunk allow-pass vlan 10

[SW1-GigabitEthernet0/0/2]port trunk allow-pass vlan all 

[SW1]int g0/00/1

[SW1-GigabitEthernet0/0/1]port link-type access 

[SW1-GigabitEthernet0/0/1]port default vlan 10

[SW1-GigabitEthernet0/0/1]qu

[Huawei]sysname SW2

[SW2]

[SW2]vlan 10

[SW2-vlan10]qu

[SW2]int g0/0/2

[SW2-GigabitEthernet0/0/2]port link-type trunk 

[SW2-GigabitEthernet0/0/2]port trunk allow-pass vlan 10

[SW2-GigabitEthernet0/0/2]port trunk allow-pass vlan all 

[SW2]int g0/00/1

[SW2-GigabitEthernet0/0/1]port link-type access 

[SW2-GigabitEthernet0/0/1]port default vlan 10

[SW2-GigabitEthernet0/0/1]qu

03、配置路由协议。

OSPF配置:

[~CE1]ospf

[*CE1-ospf-1]area 0

[*CE1-ospf-1-area-0.0.0.0]net 10.10.10.10 0.0.0.0

[*CE1-ospf-1-area-0.0.0.0]net 12.1.1.0 0.0.0.255

[*CE1-ospf-1-area-0.0.0.0]commit

[~CE1-ospf-1-area-0.0.0.0

[~CE2]ospf

[*CE2-ospf-1]area 0

[*CE2-ospf-1-area-0.0.0.0]net 12.1.1.0 0.0.0.255

[*CE2-ospf-1-area-0.0.0.0]net 23.1.1.0 0.0.0.255

[*CE2-ospf-1-area-0.0.0.0]net 20.20.20.20 0.0.0.0

[*CE2-ospf-1-area-0.0.0.0]commit

[~CE2-ospf-1-area-0.0.0.0

[~CE3]ospf

[*CE3-ospf-1]area 0

[*CE3-ospf-1-area-0.0.0.0]net 30.30.30.30 0.0.0.0

[*CE3-ospf-1-area-0.0.0.0]net 23.1.1.0 0.0.0.255

[*CE3-ospf-1-area-0.0.0.0]commit

[~CE3-ospf-1-area-0.0.0.0

查看一下OSPF邻居状态:

测试一下网络连通性,如ping一下 loopback接口。

04、VXLAN相关配置。

[~CE1]vlan 10

[*CE1-vlan10]quit

[*CE1]bridge-domain 10

[*CE1-bd10]quit

[*CE1]interface g1/0/1.1 mode l2 

[*CE1-GE1/0/1.1]encapsulation dot1q vid 10

[*CE1-GE1/0/1.1]bridge-domain 10

[*CE1-GE1/0/1.1]quit

[*CE1]commit

[~CE1]

[~CE3]vlan 10

[*CE3-vlan10]quit

[~CE3]bridge-domain 10

[*CE3-bd10]quit

[*CE3]int g1/0/1.1 mode l2

[*CE3-GE1/0/1.1]encapsulation dot1q vid 10

[*CE3-GE1/0/1.1]bridge-domain 10

[*CE3-GE1/0/1.1]quit

[*CE3]

[*CE3]commit

[~CE3

配置VXLAN隧道:

[~CE1]bridge-domain 10

[~CE1-bd10]vxlan vni 1

[*CE1-bd10]quit

[*CE1]interface Nve 1

[*CE1-Nve1]source 10.10.10.10

[*CE1-Nve1]vni 1 head-end peer-list 30.30.30.30

[*CE1-Nve1]quit

[*CE1]commit 

[~CE1]

[~CE3]bridge-domain 10

[~CE3-bd10]v

[~CE3-bd10]vxlan vni 1 //模拟器vni建议使用最小的。

[*CE3-bd10]quit

[*CE3]interface nve 1

[*CE3-Nve1]source 30.30.30.30

[*CE3-Nve1]vni1 head-end peer-list 10.10.10.10

[*CE3-Nve1]quit

[*CE3]commit

[~CE3

查看VXLAN状态:

五、验证

ok,现在我们就可以测试一下,PC1是否可以ping 通同网段的PC2:

然后,我们也可以抓包学习一下vxlan的真实报文又是如何的?

从抓包的报文来看,我们可以学习到,

vxlan是通过UDP报文来封装的,UDP源目端口使用的:4789。