vlan绑定_【干货】图文并茂,深入了解VLAN工作原理

关注我,你的眼睛会怀孕

0bd3a08a948a4709788c210447883170.png

了解了VLAN的划分的几种方法和配置,我非常好奇VLAN是一个怎样的工作过程呢?它是如何做到隔离的功能,带着这些疑问,今天一起来看看吧。

bc195b95000b457f0113f895d42f1058.gif

a34313ba9e5e811dc599b0cefc30b57a.gif

VLAN基本通信原理

a34313ba9e5e811dc599b0cefc30b57a.gif

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

由于接口类型不同,交换机对数据帧的处理过程也不同,下面通过两个案例来说明一下VLAN的工作原理:

a34313ba9e5e811dc599b0cefc30b57a.gif

同一交换机不同VLAN情况

a34313ba9e5e811dc599b0cefc30b57a.gif

313717c68d8a8448c20c0dc7b9f69748.png

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

78e6c23216e2820c1777a3cc454f54d3.png

正常的情况先,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包的请求超时。

964e6c73b8a28b0af1e1163d620c7429.png

通过提前绑定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的通信过程如下:

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

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

a34313ba9e5e811dc599b0cefc30b57a.gif

同一交换机相同VLAN情况

a34313ba9e5e811dc599b0cefc30b57a.gif

fb208b966eb62da50250dfb9348aa7c3.png

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

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

4cce4238316df09b39af067eb8aa39b6.png

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

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

  • 打上缺省的VLAN ID,当缺省VLAN ID在允许通过的VLAN ID列表时,接收该报文。

  • 当缺省VLAN ID不在允许通过的VLAN ID列表时,丢弃该报文。

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

  • 当VLAN ID在接口允许通过的VLAN ID列表里时,接收该报文;

  • 当VLAN ID不在接口允许通过的VLAN ID列表时,丢弃报文。

发送帧处理过程:

  • 当VLAN ID与缺省VLAN ID相同,且是该接口允许通过的VLAN ID时,去掉Tag,发送该报文;

  • 当VLAN ID与缺省VLAN ID不同,且是该接口允许通过的VLAN ID时,保持原有Tag,发送该报文。

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

  • 当PC1发送数据包到SW1端口(数据包不带Tag标签),进入SW1交换机的GE0/0/1端口后,被加上该端口VLAN ID 20进行转发。

  • 进行ARP广播请求PC3端MAC地址,数据包进入SW1的GE0/0/24端口,由于SW1的GE0/0/24端口为trunk模式,允许VLAN 10 和20通过,并根据trunk端口发送帧处理过程。数据包顺利到达SW2的G0/0/24端口。

  • 由于ARP广播包携带了Tag标签,只有对应的端口对此广播进行处理,并相应。

  • PC1得到PC3的MAC地址,进行数据包封装转发,进行通信。

来源:https://network.51cto.com/art/201910/605101.htm

年度热文

8b0201d2bfb8876e140b90a051963a84.png

【必看】一次心惊肉跳的服务器入侵排查....

【必看】IT行业常用专业术语,你get到了吗?

【必看】网络工程师技能图谱,这些你都会吗?

【干货】服务器性能优化的8种常用方法

【干货】网工常见面试题集锦(一)

【收藏】网工常见面试题集锦(二)

【必看】这些Linux命令能解决95%以上的问题

【必看】超全Linux工作规划线路图

【必看】网工面试必答问题,看完OFFER轻松拿

【干货】华为交换机端口vlan详解

【干货】什么样的网络需要划分VLAN?

【干货】组播原理协议讲解

【收藏】网络故障处理手册大全,看完再也不怕出问题了



0738e50bbc827e1f8012e38a21110e27.png

系统集成/认证培训

买设备,找我们

IT维保,找我们

IT培训,找我们

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值