图文并茂 VLAN 详解,让你看一遍就理解 VLAN( 二 )


二、实现VLAN的机制
2.1、实现VLAN的机制
在理解了“为什么需要VLAN”之后,接下来让我们来了解一下交换机是如何使用VLAN分割广播域的 。
首先,在一台未设置任何VLAN的二层交换机上,任何广播帧都会被转发给除接收端口外的所有其他端口(Flooding) 。例如,计算机A发送广播信息后,会被转发给端口2、3、4 。

图文并茂 VLAN 详解,让你看一遍就理解 VLAN

文章插图
这时,如果在交换机上生成红、蓝两个VLAN;同时设置端口1、2属于红色VLAN、端口3、4属于蓝色VLAN 。再从A发出广播帧的话,交换机就只会把它转发给同属于一个VLAN的其他端口——也就是同属于红色VLAN的端口2,不会再转发给属于蓝色VLAN的端口 。
同样,C发送广播信息时,只会被转发给其他属于蓝色VLAN的端口,不会被转发给属于红色VLAN的端口 。
图文并茂 VLAN 详解,让你看一遍就理解 VLAN

文章插图
2.2、直观地描述VLAN
如果要更为直观地描述VLAN的话,我们可以把它理解为将一台交换机在逻辑上分割成了数台交换机 。在一台交换机上生成红、蓝两个VLAN,也可以看作是将一台交换机换做一红一蓝两台虚拟的交换机 。
图文并茂 VLAN 详解,让你看一遍就理解 VLAN

文章插图
在红、蓝两个VLAN之外生成新的VLAN时,可以想象成又添加了新的交换机 。
但是,VLAN生成的逻辑上的交换机是互不相通的 。因此,在交换机上设置VLAN后,如果未做其他处理,VLAN间是无法通信的 。
明明接在同一台交换机上,但却偏偏无法通信——这个事实也许让人难以接受 。但它既是VLAN方便易用的特征,又是使VLAN令人难以理解的原因 。
2.3、需要VLAN间通信时怎么办?
那么,当我们需要在不同的VLAN间通信时又该如何是好呢?
请大家再次回忆一下:VLAN是广播域 。而通常两个广播域之间由路由器连接,广播域之间来往的数据包都是由路由器中继的 。因此,VLAN间的通信也需要路由器提供中继服务,这被称作“VLAN间路由” 。
VLAN间路由,可以使用普通的路由器,也可以使用三层交换机 。其中的具体内容,等有机会再细说吧 。在这里希望大家先记住不同VLAN间互相通信时需要用到路由功能 。
三、VLAN的访问链接
3.1、交换机的端口
交换机的端口,可以分为以下两种:
  • 访问链接(Access Link)
  • 汇聚链接(Trunk Link)
接下来就让我们来依次学习这两种不同端口的特征 。这一讲,首先学习“访问链接” 。
3.2、访问链接
访问链接,指的是“只属于一个VLAN,且仅向该VLAN转发数据帧”的端口 。在大多数情况下,访问链接所连的是客户机 。
通常设置VLAN的顺序是:
  • 生成VLAN
  • 设定访问链接(决定各端口属于哪一个VLAN)
设定访问链接的手法,可以是事先固定的、也可以是根据所连的计算机而动态改变设定 。前者被称为“静态VLAN”、后者自然就是“动态VLAN”了 。
3.2.1、静态VLAN
静态VLAN又被称为基于端口的VLAN(Port Based VLAN) 。顾名思义,就是明确指定各端口属于哪个VLAN的设定方法 。
图文并茂 VLAN 详解,让你看一遍就理解 VLAN

文章插图
由于需要一个个端口地指定,因此当网络中的计算机数目超过一定数字(比如数百台)后,设定操作就会变得烦杂无比 。并且,客户机每次变更所连端口,都必须同时更改该端口所属VLAN的设定——这显然静态VLAN不适合那些需要频繁改变拓补结构的网络 。
3.2.2、动态VLAN
另一方面,动态VLAN则是根据每个端口所连的计算机,随时改变端口所属的VLAN 。这就可以避免上述的更改设定之类的操作 。动态VLAN可以大致分为3类:
  • 基于MAC地址的VLAN(MAC Based VLAN)
  • 基于子网的VLAN(Subnet Based VLAN)
  • 基于用户的VLAN(User Based VLAN)
其间的差异,主要在于根据OSI参照模型哪一层的信息决定端口所属的VLAN 。
①、基于MAC地址的VLAN,就是通过查询并记录端口所连计算机上网卡的MAC地址来决定端口的所属 。假定有一个MAC地址“A”被交换机设定为属于VLAN“10”,那么不论MAC地址为“A”的这台计算机连在交换机哪个端口,该端口都会被划分到VLAN10中去 。计算机连在端口1时,端口1属于VLAN10;而计算机连在端口2时,则是端口2属于VLAN10 。
图文并茂 VLAN 详解,让你看一遍就理解 VLAN


推荐阅读