数据中心——Vxlan基本概念2

目录

Vxlan基本概念

简介

Vxlan虚拟化

Vxlan隧道建立方式

Vxlan基本术语概念

VXLAN报文

Vxlan头部

UDP头部

为什么要添加封装UDP

如何选择哪些报文进入Vxlan隧道

通过二层子接口接入Vxlan

通过Vlan直接接入Vxlan隧道

Vxlan隧道如何确定隧道目的地址

ARP如何解析所需的MAC地址

Vxlan网关的部署方式

Vxlan实验配置

静态建立

动态建立 


Vxlan基本概念

简介

  • Vxlan是一种基于IP网络采用Mac in UDP封装形式的二层点对点的隧道技术

(基于IP的封装,封装的对象始终是以太网数据帧)

  • Vxlan是一种无控制平面的隧道技术(可以理解无法动态的建立隧道)

例如:IPSec可以利用IKE动态建立隧道、MPLS可以利用LDP/BGP建立隧道等

  • 不过Vxlan可以利用evn(华为私有技术)或Evpn协议来充当它的控制平面,动态建立隧道
  • 可以实现二层互访、三层互访、与传统以太网结合组网部署

Vxlan虚拟化

Vxlan将网络做了两次虚拟化

1.Vxlan将IP网络先抽象成一台拥有无限端口的交换机

2.通过VNI(虚拟网络标识符)来实现广播域隔离(每一个Vni代表vxlan网络中的一个广播域,类似Vlan id)

Vxlan隧道建立方式

静态方式:手动指定Vxlan的源、目地址,建立静态隧道

动态方式:建立BGP EVPN邻居关系,通过BGP EVPN协议动态建立隧道


Vxlan基本术语概念

NVE(Network Virtualization Edge)

网络虚拟边缘节点,运行了Vxlan的物理设备称为NVE,是实现网络虚拟化功能的实体

根据NVE部署位置不同分为:

硬件模式:NVE部署在支持NVE的设备上,报文封装、解封装都在设备进行

软件模式:NVE部署在vSwitch上,报文解、封装都在vSwitch上进行

混合模式:两个都有

VTEP(Vxlan Tunnel Endpoints)

Vxlan隧道端点,用于Vxlan报文的封装与解封装。

在NVE接口中配置的隧道源地址就是VTEP地址。

用于区分不同的Vxlan隧道,2个(一对)VTEP地址就唯一确定一个Vxlan隧道

VNI(Vxlan Network Identifier)

Vxlan虚拟网络标识符,具有全局意义。

主要区分Vxlan中不同的广播域(子网),每个VNI就代表Vxlan网络中的一个广播域

同一VNI的网络可以直接Vxlan二层通信,不同VNI的网络就要Vxlan三层通信

BD(Bridge Domain)

桥接域,只具有本地意义

用于在一台Vtep上区分不同的广播域(子网),每个BD域都需要分配一个本地唯一的VNI

注意:一个物理接口下不同子接口只能绑定一个BD域

         Default子接口独占物理接口,即有Default子接口,就不允许配置其它子接口

Vbdif接口(配置的就是Vxlan隧道的网关地址)

接口的编号需要与BD的编号一致,是基于BD域创建的三层逻辑接口

用于不同VNI之间的Vxlan、以及Vxlan和非Vxlan之间的通信

NVE接口

用来指定Vxlan隧道的源目地址,进行数据封装


VXLAN报文

Vxlan头部

Vxlan Flags固定取值为0000 1000

VNIVxlan网络标识符,区分不同的Vxlan隧道

UDP头部

Sport通过原始帧的SMAC+DMAC  hash后的值

Dport4789

但是华为模拟器上:UDP的S/Dport都是4789,阉割了Hash的功能

为什么要添加封装UDP

1. 在遇到多下一跳时可以较好的负载分担

       因为IP设备主流的负载分担算法是基于五元组的(S/D IP、S/D Port、Protosal)

2.没有UDP的话,源目IP、协议号都是相同的,一直走同一条路,无法负载

有了UDP,就有了端口号,目的端口固定4789,源端口会变化,所以能达到负载分担的效果

3.使用UDP不适用TCP是因为UDP连接建立简单


如何选择哪些报文进入Vxlan隧道

通过二层子接口接入Vxlan

通过在二层子接口上配置不同的流封装类型实现不同数据进入各自对应的Vxlan隧道

主要有4种流封装模式:dot1q、untag、default、qinq

流封装类型允许进入Vxlan隧道的报文类型报文进行Vxlan封装前的处理收到Vxlan封装报文后的处理
dot1q只允许携带指定VLAN Tag的报文进入Vxlan隧道
(例如:让vlan 10的报文进入Vxlan隧道)
先剥掉原始报文的Vlan Tag
再进行Vxlan报文的封装
若内层原始报文带Vlan Tag,先将Tag替换为指定的vlan tag
若内层原始报文不带Vlan Tag,则先添加指定的Vlan Tag后再转发
untag只允许不带Vlan Tag的报文进入Vxlan隧道不做任何处理,直接封装Vxlan若内层原始报文带Vlan Tag,先将Tag替换为指定的vlan tag
若内层原始报文不带Vlan Tag,则先添加指定的Vlan Tag后再转发
default允许所有报文进入Vxlan隧道不做任何处理,直接封装Vxlan不做任何处理,直接解封装Vxlan,然后转发
qinq只允许带有指定两层Vlan Tag的报文进入Vxlan隧道如果配置的二层子接口的VLAN Tag操作为剥除两层VLAN Tag操作,则将报文的所有VLAN Tag全部剥离
如果不配置二层子接口的VLAN Tag操作为剥除两层VLAN Tag操作,则将报文的VLAN Tag全部保留
如果配置的二层子接口的VLAN Tag操作为剥除两层VLAN Tag操作,则添加指定的两层VLAN Tag后再转发
如果不配置二层子接口的VLAN Tag操作为剥除两层VLAN Tag操作,则保持报文的VLAN Tag不变直接转发。

 注意事项:

  1. 当采用Dot1q时,二层子接口封装的vid不能与二层主接口允许通过的Vlan相同

即:同一Vlan,走Vxlan隧道的话就不能走Vlan

  1. 当采用Dot1q时,同一主接口下的二层子接口Vlan ID不能重叠。

即:同一Vlan,只可以选择一个Vxlan隧道

  1. 一个主接口下仅允许创建一个Default类型的子接口,并且创建后不允许再创建其它类型的二层子接口
  2. 一个主接口下仅允许创建一个Untag类型的子接口,创建后允许创建除Default外的其它类型的二层子接口

通过Vlan直接接入Vxlan隧道

在二层主接口放行Vlan,然后在对应的Vlan下绑定BD信息,可以将对应的Vlan接入对应的Vxlan隧道


Vxlan隧道如何确定隧道目的地址

在隧道接口(NVE接口)中,通过配置头端复制列表(head-end peer-list)确定隧道的目的地址,转发BUM数据帧(BUM-------B:广播帧   U:未知目的MAC的单播帧  M:组播帧)

例如:vni 10 head-end peer-list 1.1.1.1  对应vni为10的Vxlan隧道封装的目的地址为1.1.1.1


ARP如何解析所需的MAC地址

1.AA发送ARP请求,并广播,经过LSW1打上VLAN Tag标签

                           

2.VTEP_1生成AA的MAC地址表项,并对ARP进行Vxlan封装

  1. ARP到达VTEP_1后, 由于G1/0/1.1接口配置的流封装模式dot1q指定vlan包含tag10,所以此Arp就进入到G1/0/1.1子接口,发现此子接口关联的BD为1,生成对应的MAC地址表项
  2. 之后将此ARP广播发送出去并封装Vxlan,根据dot1q将tag10剔除,然后封装BD1对应的VNI10,封装UDP,根据头端复制列表封装对应VNI的目的地址(有多个目的地址就复制多个报文),最后封装VTEP地址为源IP地址。发往VTEP_2和3

3.VTEP_2和3对报文进行Vxlan解封装,生成AA的MAC地址表项

VTEP_2和3根据ARP请求中的sip、vni对应本地的BD、smac生成相应的mac表项

4.VTEP_2和3对解封装后的ARP请求报文进行广播

VTEP2和3对ARP请求进行Vxlan解封装,然后从与相应BD关联的子接口中泛洪出去,由于子接口采用dot1q的流封装模式,所以将报文打上指定tag后再广播出去

5.CC收到后不回应,BB收到后回应AA的ARP请求

1.BB收到AA的ARP请求后,得到AA的MAC和IP地址对应关系,根据此关系发送对应的ARP应答

2.ARP应答经过LSW2打上相应的Vlan tag 20

6.VTEP_3根据报文生成对应BB的MAC表项,并对ARP应答报文进行Vxlan封装

  1. 根据ARP应答报文的sip、vni对应的bd、smac生成关于相应的NAC表项
  2. 根据报文的源、目MAC,找到对应的MAC地址表项,找到封装的目的地址为VTEP_1,封装源IP为自己的VTEP3地址。发往VTEP_1

7.VTEP_1对Vxlan报文解封装,生成对应BB的MAC表项

 根据ARP应答报文的sip、vni对应的bd、smac生成关于BB的MAC地址表项

8.VTEP_1发送解封装后的ARP应答报文

  1. VTEP_1根据mac地址对应表,将ARP应答报文发往相应的子接口
  2. 根据子接口上配置的dot1q,打上指定的vlan tag标签

9.AA根据应答报文得到BB的IP与MAC对应关系


Vxlan网关的部署方式

集中式部署与分布式部署

数据中心——Vxlan基本概念_多谢思考的博客-CSDN博客_vmware vxlanicon-default.png?t=N7T8https://blog.csdn.net/m0_49864110/article/details/123765908

Vxlan实验配置

静态建立

静态Vxlan隧道同子网互访实验_多谢思考的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_49864110/article/details/125595602静态Vxlan隧道跨子网互访实验(集中式网关)_多谢思考的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_49864110/article/details/125595774静态Vxlan多活网关实验配置(集中式网关)_多谢思考的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_49864110/article/details/125605315

动态建立 

动态建立Vxlan隧道实现同子网互访实验配置_多谢思考的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_49864110/article/details/125607968动态建立Vxlan实现隧道跨子网互访实验配置(集中式网关场景)_多谢思考的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_49864110/article/details/125608018动态建立Vxlan隧道实现跨子网互访实验配置(分布式网关单租户多子网场景)_多谢思考的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_49864110/article/details/125645823动态建立Vxlan隧道实现租户访问外网实验配置(分布式网关单租户多子网场景)_多谢思考的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_49864110/article/details/125649282

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

静下心来敲木鱼

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

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

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

打赏作者

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

抵扣说明:

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

余额充值