【HCIE】12.VXLAN

VXLAN,是一种IP VPN,每台设备几乎都支持IP,而MPLS会有很多设备不会支持,所以VXLAN是使用的较多。

采用MAC in UDP封装方式,MAC指的是原始数据的以太头部被封装到新的UDP头部里面。是基于三层的一个虚拟网络。

技术背景

虚拟化被企业广泛部署,一台物理服务器可能会有很多虚拟机,每个虚拟机有一个MAC地址,或者给很多用户取用,每个业务都需要使用一个VLAN号。

二层扩展

虚拟化云计算集群内允许虚拟机任意迁移,导致相同业务(相同网段)虚拟机可能运行在不同的服务器,或同一个虚拟机(IP)先后运行在不同的服务器(物理位置),物理服务器可能分布在地理位置跨度非常大的机房,因此需要使用三层进行互联

多租户之间进行隔离

云化场景一般支持多租户,即不同用户共享物理资源。这对网络提出两个需求,租户间隔离和租户内互访

VXLAN简介

VXLAN在本质上是一个种VPN技术,能够在任意路由可达的物理网络(Underlay网络)上叠加二层虚拟网络(Overlay网络),通过VXLAN网关之间的VXLAN隧道实现VXLAN网络内部的互通,同时,也可以实现与传统的非VXLAN网络的互通

对于underlay网络的视图

对于overlay网络的视图

只看到A和B连接起来,只能看到有一条隧道

VXLAN在数据中心的应用

在数据中心采用Spine Leaf两层物理架构,结合VXLAN应用

在园区网络中使用VXLAN实现“一网多用”

不同的业务修建不同的隧道,实现逻辑的隔离

设备两端支持VXLAN即可,中间的设备不需要支持VXLAN,因为中间的设备都是支持IP的,而VXLAN是基于IP的。

VXLAN的报文格式

为什么要封装在UDP里面?

以太协议是不可靠的,把他封装在UDP中还是不可靠的,原始数据就是不可靠的数据。现在很多设备都有AI纠错功能,当数据丢包之后,芯片可以进行纠错把丢的数据给找回来。

设备时基于流转发的,因为源目都一样,所以可能无法流量实现负载均衡,因此使用端口(利用UDP)用来实现负载均衡,五元组除了端口之外其他四元组是不变的,只有源端口会变化

NVE

网络虚拟边缘,是一个设备(对应到以前的设备就是PE),NVE设备可以是软件实现(例如云计算里面的虚拟交换机)也可以是硬件实现。

作用就是将原有的数据变为VXLAN数据传送出去

VTEP

VXLAN的隧道端点(对应到以前就是Loopback地址),位于NVE中,用于VXLAN报文的封装和解封装

VXLAN报文(其外层IP头部)中源IP地址为源端VTEP的IP地址,目的IP地址为目的端VETP的IP地址

VNI,内层标签

VNI是手动分配的(类似于内层标签),例如A租户配了个VNI100,另一个租户B也配了VNI100,中间修建一条VXLAN隧道对应的VNI也是100,那么从A用户进来的VNI数据进入到隧道再从另一个B组合出来。

用于标识不同的大二层网络,支持16M的租户,BD的ID号

BD,桥域

类似传统网络中采用VLAN划分广播域,在VXLAN网络中一个BD就标识一个大二层广播域。

VNI以1:1方式映射到广播域BD,同一个BD内的终端可以进行二层互通

BD的编号在本地有效,两个BD编号相同不一定是一个广播域,但是两个BD绑定的VNI号一样那么就在一个广播域(可以进行二层通信),是否在同一个BD,就看VNI是否相同

大二层概念

用户的VLAN一旦进入VXLAN里面,就没有VLAN的概念了,BD负责的就是进来之后把VLAN剥离掉,数据帧进入BD之后直接剥掉VLAN,没有VLAN的概念,送到对面的BD时再重新封装上VLAN

VAP

虚拟接入点,连接用户的接口

可以使用二层子接口也可以绑定VLAN,VAP要给BD绑定,BD要给VNI绑定

Border Edge

Edge,VXLAN网络的边缘接入设备,传统网络的流量由此进入VXLAN网络。

Border,VXLAN网络和外部网络通信的节点,用于外部流量进入VXLAN或VXLAN内部流量访问外部,一般连接具有三层转发能力的设备。

如果是Edge,那么对端连接的是主机或者服务器主机,终端

如果是Border,那么对端接的是其他网络

VXLAN隧道的建立方式

VXLAN隧道由一对VTEP确定,报文在VTEP设备进行封装之后再VXLAN隧道中依靠路由进行传输。只要VXLAN隧道的两端VTEP是三层路由可达的,VXLAN隧道就可以建立成功。

创建方式有两种,分别是静态隧道和动态隧道

  • 静态隧道:通过用户手工配置本端和远端的VNI,VTEP IP地址和头端复制列表来完成
  • 动态隧道:通过BGP EVPN方式动态建立VXLAN隧道。在VTEP之间建立BGP EVPN对等体,然后对等体之间利用BGP EVPN路由来互相传递VNI和VTEP IP地址信息,从而实现动态的建立VXLAN隧道。

VXLAN 二层网关,三层网关

二层网关:如果查了MAC地址表,发现MAC地址出口在本地就不需要二层网关,相反如果发现MAC地址的出口是VXLAN隧道那么就需要二层网关。

实现流量进入VXLAN网络,也可以用于同一VXLAN网络内终端的同子网通信

三层网关:VBDIF

进入二层网关剥离VID 打上VNI,进入三层网关剥离VNI,查路由表,打上别的VNI转发,再次进入二层网关剥离VNI,打上VID。

  1. PC1属于VLAN 10,首先从PC1发出的流量打上VLAN 10的标记
  2. 当VID进入了二层网关之后要查表转发,要进入VXLAN隧道,此时剥离VLAN ID 换成VNI编号1000
  3. 由于3层网关的VNI 编号也是1000那么流量也会进入SW3的BD 10,进入BD10 之后 VNI剥离,查询路由表发现VNI是2000,于是封装VNI2000继续转发流量
  4. 此时SW2的VNI编号也是2000 进入BD20 于是接收PC1来到流量查询MAC地址表发往PC2,并且打上VLAN TAG

划分一个VLAN 小二层 = 划分一个BD 大二层

VLAN 的名字 vlan name = BD的名字 bd 10

VLAN 的ID vlan 10 = BD的ID vni 10

实验

用CE12800设备,如果做实验做了一般,实验保存了,晚上再接着做实验,那么再开关机底层的配置就不生效了

相同BD互访

还是传统的MAC地址学习到方式,对源地址的学习而学习到的MAC地址。

打通R1 C2 C3的underlay

CE2
bridge-domain 1030	//创建BD 绑定1030
	vxlan vni 1030	//VNI 1030
#
interface G1/0/9
undo shutdown
#
interface GE1/0/9.10 mode l2
	encapsulation dot1q vid 10
	bridge-domain 1030	//绑定到BD 1030里面
#
interface Nve1	//创建一个隧道接口,逻辑接口
	sourec 2.2.2.2
	vni 1030 head-end peer-list 3.3.3.3	
关联VNI,head-end如果是BUM流量就分发给邻居,根据peer-list进行泛洪
两边的VNI要一样,才可以是一条隧道,一个BD只能绑定一个VNI,一对一的关系。

CE3
配置流程
1. 创建一个BD,给BD域关联一个VNI编号
bridge-domain 1030
	vxlan vni 1030

2.下联PC接口的物理接口undo shutdonw
interface G1/0/9
undo shutdown

3. 把下联PC接口和BD做关联
interface 	G1/0/9.10 mode l2
	encapsulation dot1q vid 30
	bridge-domain 1030

4. 创建一个逻辑的NVE接口,指定源地址
interface Nve1
	source 3.3.3.3
	vni 1030 head-end peer -list 2.2.2.2

不同BD互访

CE1
bridge-domain 1030
vxlan vni 1030
#
bridge-domain 2040
vxlan vni 2040
#
interface vbdif 1030
ip add 192.168.1.1 24
interface vbdif 2040
ip add 192.168.2.1 24
#
interface Nve1
source 1.1.1.1
vni 1030 head-end peer-list 2.2.2.2
vni 2040 head-end peer-list 3.3.3.3

CE2
bridge-domain 1030
vxlan vni 1030
#
interface G1/0/1
undo shutdown
#
interface G1/0/1.10 mode l2
encapsulation dot1q vid 10
bridge-domain 1030
#
interface Nve1
source 2.2.2.2
vni 1030 head-end peer-list 1.1.1.1

CE3
bridge-domain 2040
vxlan vni 2040
#
interface G1/0/1
undo shutdown
#
interface G1/0/1.10 mode l2
encapsulation dot1q vid 40
bridge-domain 2040
#
interface Nve1
source 3.3.3.3
vni 2040 head-end peer-list 1.1.1.1

集中式网关,CE1创建两个BD与VBDIF,分别做两个BD的网关,并且分别与CE3 CE2建立隧道。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ICT大龙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值