技术■网络工程师你真的理解VxLAN技术吗?(原来二层网络可以这么玩)( 二 )
本文插图
(MAC in UDP也即L2 over L4) , 二层报文用三层协议进行封装 , 可实现二层网络在三层范围
VxLAN是基于IP网络之上 , 它采用的是MAC in UDP技术 , 其实它与GRE/IPSEC等tunnel技术类似 , 这种封装技术对中间网络没有特殊要求 , 只要可以识别IP报文就可以传送 。
VTEP对VM发送的原始以太帧进行“封装” , 从上至下封装如下所示:
- VXLAN Header
- UDP Header
- Outer IP Header
- Outer MAC Header
- 当目的IP为接收端的VTEP的IP时 , 假如不知道这个IP地址 , 则需要执行ARP请求来获取 , 步骤如下:
2. 所有VTEP端都接收该多播报文 , VTEP查找所在主机上的全部虚拟机来匹配源虚拟机的Inner 目的MAC 。
3. 目标VTEP的虚拟机会回应该多播包 , 从而获得目标VTEP的IP地址 。
4. 发送端VTEP添加VNI-VTEP-虚拟机MAC的映射关系到自己的VXLAN表中 , 以避免再次组播学习 。
VxLAN的部署
- VxLAN存在underlay及overlay的概念 , 它是在原有的网络架构上再overlay新增了一层网络(不影响原有网络) 。 因为是架构在IP层之上 , 两站点只需要IP可达 , 就可以建立VxLAN隧道(部署VxLAN) 。
#
bridge-domain 20 //表示创建一个“大二层广播域”BD , 其编号为20
vxlan vni 2000 //表示在BD 20下指定与之关联的VNI为2000
#
VTEP会根据以上配置生成BD与VNI的映射关系表 , 该映射表可以通过命令行查看 , 如下所示:
display vxlan vni
Number of vxlan vni : 1
VNI BD-ID State
----------------------------------
5000 10 up
有了映射表后 , 进入VTEP的报文就可以根据自己所属的BD来确定报文封装时该添加哪个VNI 。 那么 , 报文根据什么来确定自己属于哪个BD呢?
- 报文根据什么去确定自己属于哪个BD呢?
以华为的交换机为例:
本文插图
default类型允许所有报文进入VXLAN隧道 , dot1q和untag类型的只允许某一类报文进入 。
- 经过同一物理接口的报文既有带VLAN Tag的 , 又有不带VLAN Tag的 , 并且他们各自要进入不同的VXLAN隧道 , 则可以在该物理接口上同时创建dot1q和untag类型的二层子接口 。
- default类型(应用于均需要走同一条VXLAN隧道的场景 , 下挂的VM全部属于同一BD)的子接口允许所有报文进入VXLAN隧道 , dot1q和untag类型的子接口只允许某一类报文进入 。 也即意味着前者不可与后者在同一子接口 。 (不然报文到了接口之后如何判断要进入哪个二层子接口)
推荐阅读
- |荷兰企业推出全新半导体技术,并承诺对华投资!中国光刻机获突破
- 辰宜科技|区块链技术与应用专题分享交流会
- 吴铭园|华为概念机设计图首次曝光,居然采用屏下摄像头技术
- AutoR智驾|电力不够持久?以色列推出动态无线充电网络 充电效率90%
- AutoR智驾|电力不够持久?以色列推出动态无线充电网络,一夜铺设一公里、充电效率90%
- 数码与拖拉机维修技术|经典性价比机型再升级:TS-453Dmini 2.5GbE NAS拆解体验
- |《5G技术助力国产机器人完成全球首场骨科实时远程手术》公示材料
- 宅秘|华为路由Q2S开启首销 有效解决大中户型网络覆盖难题
- 兰州新闻网|创新驱动 情报先行——记兰州市科学技术情报研究所
- 最极客网|原创 中兴推5G视频手机,衰颓之后还能凭技术回归主流吗?
