您当前的位置:首页 > 电脑百科 > 网络技术 > 网络知识

深入了解VLAN工作原理,不能错过干货

时间:2021-03-24 16:31:12  来源:  作者:

VLAN是一个怎样的工作过程呢?它是如何做到隔离的功能,带着这些疑问,今天一起来看看吧

VLAN基本通信原理

为了提高处理效率,交换机内部的数据帧一律都带有VLAN Tag,已统一方式处理。当一个数据进入交换机接口时,如果没有带VLAN Tag标签,且该接口上配置了PVID,那么,该数据帧就会被标记上接口的PVID。如果数据帧已经带有VLAN Tag,那么,即使接口已经配置了PVID,交换机不会再给数据帧标记VLAN Tag。

由于接口类型不同,交换机对数据帧的处理过程也不同,具体的请查阅《交换机三种端口模式Access、Hybrid和Trunk对数据包Tag的处理过程》

下面通过两个案例来说明一下VLAN的工作原理:

同一交换机不同VLAN情况

图文并茂深入了解VLAN工作原理,不能错过干货

 

上图交换机分别配置了VLAN 10 20,同时把相应的PC加入不同的VLAN中,通过在交换机上GE0/01和GE0/0/3抓包,发现GE0/0/1能抓取数据包,而GE0/0/3没有数据包经过。这也证实了VLAN的一个特性,隔离广播风暴。

图文并茂深入了解VLAN工作原理,不能错过干货

 

正常的情况先,PC1在和PC2的第一次通信,先广播一个ARP请求,在交换机的所有端口,除了自己发送数据端口之外,其他端口都能正常收到的。但是上述拓扑由于划分了VLAN,所以ARP广播被GE0/0/3端口丢弃。所以导致PC1不能获取PC2的mac地址,导致无法通信。

小伙伴们看到这里,可能会说,我们能不能提前把PC2的MAC地址告诉PC1,这样PC1就不用再发ARP广播包去请求MAC地址啦。

通过在PC1和PC2中相互把对方的MAC地址进行添加,执行如下命令

PC1>arp -s 192.168.1.3 54-89-98-C1-58-5A
PC2>arp -s 192.168.1.2 54-89-98-05-20-B9

添加完之后,重新在交换机GE0/0/1和GE0/0/3端口进行抓包,如下图,GE0/0/3还是没有数据抓取到,这次GE0/0/1端口到ICMP包的请求超时。

图文并茂深入了解VLAN工作原理,不能错过干货

 

通过提前绑定MAC地址信息,但是,依然PC1和PC2不能相互访问。那么VLAN数据包是如何工作的呢?先来看Access端口在接收和发送数据包的是都做了什么操作。

Access接口对接收不带Tag的报文处理:接收该报文,并打上缺省的VLAN ID

Access接口对接收带Tag的报文处理:当VLAN ID 与缺省VLAN ID相同时,接收该报文;当VLAN ID与缺省VLAN ID不同时,丢弃该报文;

发送帧处理过程:先剥离帧的PVID Tag,然后再转发。

注意:如果端口为access类型,并加入了一个vlan ,那么这端口的PVID属性值变成和VID值一样;缺省VLAN ID 就是当前加入的VLAN ID

从以上access端口接收发送数据包,可以大致推测出PC1和PC2的通信过程如下:

1、当PC1发送数据包时,数据包是不带Tag标签的。进入交换机GE0/0/1端口后,则被带上VLAN 10 的标签。

2、当交换机GE0/0/3端口接收到GE0/0/1端口发来的数据包,然后检查发现是带上Tag标签的,进一步比较与自己的缺省VLAN是否一致,结果发现不一致,直接发数据包丢弃了。

同一交换机相同VLAN情况

图文并茂深入了解VLAN工作原理,不能错过干货

 

上图两台交换机通过GE0/0/24端口互联,并把GE0/0/24配置成trunk口模式,允许VLAN 10、20通过。那么垮交换机的VLAN又是怎么一个流程呢?

先分别在SW1和SW2的GE0/0/24端口抓包,看看什么样的数据包经过GE0/0/24。

图文并茂深入了解VLAN工作原理,不能错过干货

 

从上图看到通过SW1和SW2的G0/0/24端口数据包都是一样的,携带了Tag标签。再来看看trunk收发数包的流程。

trunk端口对不带Tag的报文处理:

  1. 打上缺省的VLAN ID,当缺省VLAN ID在允许通过的VLAN ID列表时,接收该报文。
  2. 当缺省VLAN ID不在允许通过的VLAN ID列表时,丢弃该报文。

trunk端口对带Tag的报文处理:

  1. 当VLAN ID在接口允许通过的VLAN ID列表里时,接收该报文;
  2. 当VLAN ID不在接口允许通过的VLAN ID列表时,丢弃报文。

发送帧处理过程:

  1. 当VLAN ID与缺省VLAN ID相同,且是该接口允许通过的VLAN ID时,去掉Tag,发送该报文;
  2. 当VLAN ID与缺省VLAN ID不同,且是该接口允许通过的VLAN ID时,保持原有Tag,发送该报文。

从以上Trunk端口收发数据包的处理过程,大致可以推测出PC1和PC3的过程如下:

  1. 当PC1发送数据包到SW1端口(数据包不带Tag标签),进入SW1交换机的GE0/0/1端口后,被加上该端口VLAN ID 20进行转发。
  2. 进行ARP广播请求PC3端MAC地址,数据包进入SW1的GE0/0/24端口,由于SW1的GE0/0/24端口为trunk模式,允许VLAN 10 和20通过,并根据trunk端口发送帧处理过程。数据包顺利到达SW2的G0/0/24端口。
  3. 由于ARP广播包携带了Tag标签,只有对应的端口对此广播进行处理,并相应。
  4. PC1得到PC3的MAC地址,进行数据包封装转发,进行通信。


Tags:VLAN工作原理   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
VLAN是一个怎样的工作过程呢?它是如何做到隔离的功能,带着这些疑问,今天一起来看看吧VLAN基本通信原理为了提高处理效率,交换机内部的数据帧一律都带有VLAN Tag,已统一方式处理。...【详细内容】
2021-03-24  Tags: VLAN工作原理  点击:(254)  评论:(0)  加入收藏
我们上一篇文件文章已经说明了Native VLAN的3个工作原理,今天主要是设计一个测试用例来进行验证。今天主要讨论的是一个Trunk端口,配置的Native VLAN,如果此时这个端口收到了没...【详细内容】
2019-09-27  Tags: VLAN工作原理  点击:(391)  评论:(0)  加入收藏
今天分享的内容仍是与VLAN相关的,是VLAN的另外一个工作模式:TRUNK。首先说的TRUNK的基本概念,TRUNK的中文意思是“主干,中继”的意思,工作中我们一般都直接说英文,翻译成中文会感...【详细内容】
2019-09-25  Tags: VLAN工作原理  点击:(460)  评论:(0)  加入收藏
交换机的ACCESS工作模式在设计的时候,主要的场景是对端连接的是PC,而正常PC发送报文时是不带VLAN的,所以一般交换机的ACCESS端口都是处理不带vlan的报文。在一些特殊的场景中,AC...【详细内容】
2019-09-23  Tags: VLAN工作原理  点击:(638)  评论:(0)  加入收藏
▌简易百科推荐
HTTP 报文是在应用程序之间发送的数据块,这些数据块将通过以文本形式的元信息开头,用于 HTTP 协议交互。请求端(客户端)的 HTTP 报文叫做请求报文,响应端(服务器端)的叫做响应...【详细内容】
2021-12-27  程序员蛋蛋    Tags:HTTP 报文   点击:(0)  评论:(0)  加入收藏
一 网络概念:1.带宽: 标识网卡的最大传输速率,单位为 b/s,比如 1Gbps,10Gbps,相当于马路多宽2.吞吐量: 单位时间内传输数据量大小单位为 b/s 或 B/s ,吞吐量/带宽,就是网络的使用率...【详细内容】
2021-12-27  码农世界    Tags:网络   点击:(2)  评论:(0)  加入收藏
1.TCP/IP 网络模型有几层?分别有什么用? TCP/IP网络模型总共有五层 1.应用层:我们能接触到的就是应用层了,手机,电脑这些这些设备都属于应用层。 2.传输层:就是为应用层提供网络...【详细内容】
2021-12-22  憨猪哥08    Tags:TCP/IP   点击:(29)  评论:(0)  加入收藏
TCP握手的时候维护的队列 半连接队列(SYN队列) 全连接队列(accepted队列)半连接队列是什么?服务器收到客户端SYN数据包后,Linux内核会把该连接存储到半连接队列中,并响应SYN+ACK报...【详细内容】
2021-12-21  DifferentJava    Tags:TCP   点击:(9)  评论:(0)  加入收藏
你好,这里是科技前哨。 随着“元宇宙”概念的爆火,下一代互联网即将到来,也成了互联网前沿热议的话题,12月9日美国众议院的听证会上,共和党议员Patrick McHenry甚至宣称,要调整现...【详细内容】
2021-12-17  王煜全    Tags:Web3   点击:(14)  评论:(0)  加入收藏
一、demopublic static void main(String[] args) throws Exception { RetryPolicy retryPolicy = new ExponentialBackoffRetry( 1000, 3);...【详细内容】
2021-12-15  程序员阿龙    Tags:Curator   点击:(20)  评论:(0)  加入收藏
一、计算机网络概述 1.1 计算机网络的分类按照网络的作用范围:广域网(WAN)、城域网(MAN)、局域网(LAN);按照网络使用者:公用网络、专用网络。1.2 计算机网络的层次结构 TCP/IP四层模...【详细内容】
2021-12-14  一口Linux    Tags:网络知识   点击:(30)  评论:(0)  加入收藏
无论是在外面还是在家里,许多人都习惯了用手机连接 WiFi 进行上网。不知道大家有没有遇到过这样一种情况, 明明已经显示成功连接 WiFi,却仍然提示“网络不可用”或“不可上网”...【详细内容】
2021-12-14  UGREEN绿联    Tags:WiFi   点击:(25)  评论:(0)  加入收藏
拉了千兆宽带,买了标称 1300Mbps 的无线路由器,为什么 WiFi 还是跑不满千兆?要回答这个问题,我们先得知道这个 1300Mbps 是怎么来的。开始回答之前先说明一下,这期只讲 802.11ac,...【详细内容】
2021-12-14  Ubiquiti优倍快    Tags:WiFi   点击:(83)  评论:(0)  加入收藏
问题背景IPv6环境下,在浏览器中通过http://[vip:port]访问web业务,提示无法访问此网站,[vip]的响应时间过长。分析过程之前碰到过多次在PC浏览器上无法访问vip的情况,排查方法也...【详细内容】
2021-12-13  云原生知识星球    Tags:网络问题   点击:(27)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条