报文在VXLAN网络中是怎么转发的?这么简单居然有人不知道

号主:老杨丨11年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部

你们好,我的网工朋友

不知道大家有没有想过这个问题:VXLAN网络中的报文是如何转发的?

在基本的二三层转发中,二层转发依赖的是MAC表,三层转发依赖的是FIB表。

在VXLAN中,其实也是同样的道理。

今天就来讲讲报文在VXLAN网络中的转发流程,以VXLAN隧道的建立为例,分别介绍同子网内、跨子网间是如何进行通信的,看完再也没疑问了

今日文章阅读福利:《 华为官方出品-网络协议报文格式大全 》

说到报文,分享一个不错的资料给你,私信我,发送暗号“报文”,限量获取。

如果想从0到1系统学习,也欢迎私信我,告知学习意向,我会为你推荐最适合你的方式。

01 集中式VXLAN中同子网互通流程

如下图所示,VM_A、VM_B和VM_C属于同网段。此时,VM_A想与VM_C进行通信,首次进行通信,报文进行如下处理:

5cc0110bcb02c6c16ef5776265bf0a05.jpeg
同子网VM互通组网图

1、VM_A上没有VM_C的MAC地址,所以会发送ARP广播报文请求VM_C的MAC地址。

2、VTEP_1收到ARP请求后,先进行VXLAN封装,然后将VXLAN报文复制多份分别发送给所有的对端VTEP。

3、报文到达VTEP_2和VTEP_3后,VTEP对报文进行解封装,得到VM_A发送的原始报文。VTEP_2和VTEP_3在对应的二层域内广播。

4、当VM_C收到该请求报文后,发现目的IP与本机IP相同,因此VM_C将进行ARP应答。而其他VM收到该请求报文会丢弃。

经过上述过程,VM_A和VM_C均已学习到了对方的MAC地址。之后,VM_A和VM_C将采用单播方式进行通信。

02 集中式VXLAN中跨子网互通流程

跨子网报文转发需要通过三层网关实现。如下图所示,VM_A、VM_B属于不同网段。VM_A与VM_B进行通信的报文处理过程如下:

4c0841022b3811aed1d3b851426344cc.jpeg
不同子网VM互通流程示意

1、VM_A先将数据报文发送给VTEP_1。

2、VTEP_1收到后进行VXLAN封装,然后将VXLAN报文发送给对端VTEP_3。

3、VTEP_3收到VXLAN报文后进行解封装,发现目的MAC是三层网关接口BDIF的MAC地址MAC_10,而目的IP地址为IP_B(10.1.20.1),因此需要进行三层转发。

4、VTEP_3根据路由表查找到IP_B的下一跳,发现出接口为BDIF 20,VTEP_3将报文重新进行VXLAN封装,然后将VXLAN报文发送给对端VTEP_2。

5、报文到达VTEP_2后,VTEP_2对报文进行解封装,并将其发送给VM_B。

BDIF接口的功能与VLANIF接口类似,是基于BD创建的三层逻辑接口,用以实现不同子网之间的通信,或VXLAN网络与非VXLAN网络之间的通信。

整理:老杨丨11年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值