老U喊来驿站的网管,网管发现中毒的电脑疯狂地发送着广播报文,冲击了连接在同一个交换机上的NVR,导致NVR的CPU负荷过重,严重影响视频解码的效果。为了避免今后再出现电脑中毒影响监控系统的事件,老U决定另买一台交换机,把办公电脑和监控系统隔离。所谓“物以类聚,人以群分”,好学又实在的老U结交的也是同样好学又实在的网管。网管说:不需要浪费那个钱,在交换机上做一下VLAN划分,把办公电脑和监控系统划归到不同的VLAN就行了。
为什么划分了VLAN就可以避免相互影响呢?
VLAN(Virtual Local Area Network)即虚拟局域网,顾名思义,就是在交换机上虚拟出不同的局域网,不同的VLAN相互隔离,使得报文无法进行二层转发。如图1-8所示,交换机上划分了黑、白两色识别的不同的VLAN——在实际使用中则是用“VLAN ID”来区分的。不同的VLAN相当于不同的几台交换机。
图1-8 VLAN划分
说明
VLAN提出的初衷是为了限制广播域。在网络中充斥着大量的广播报文,很多协议都会定期发送广播报文,如ARP、DHCP、RIP、NetBEUI、Apple Talk等;目的MAC在交换机上不存在的单播报文(称为未知单播),也会被交换机以广播的形式转发。广播报文会被连接在交换机上的所有设备收到,干扰这些设备的CPU的工作,影响系统的正常业务处理性能。通过划分VLAN,VLAN内部的设备产生的广播报文就会被限制在该VLAN内部,不会影响其他VLAN内的设备,从而大大降低广播报文的影响范围和频度。
交换机对于以太帧的转发控制是基于VLAN标签(VLAN Tag)来实现的,VLAN标签被嵌入在以太帧的头部。标签中最重要的属性是VLAN ID,用于标识该以太帧属于哪个VLAN。用户通常可以配置的VLAN ID为2~4094(0和4095都为协议保留值,1为系统默认VLAN)。
为了划分VLAN,交换机首先需要配置各个端口所属的默认VLAN ID。当一个不带VLAN标签的以太帧从某个端口进入交换机,就会被打上该端口所属的默认VLAN ID。这个默认VLAN ID称为该端口的虚拟局域网ID(Port-base VLAN ID,PVID),或者说,该端口是该VLAN的访问(Access)端口。该端口允许带着该VLAN标签的以太帧进入,而当带着该VLAN标签的以太帧从该端口出去后,VLAN标签就会被剥离。
一个端口是不是只允许VLAN标签为自己所属的PVID的以太帧进出呢?倒也不是。但一个端口若要允许带着其他VLAN标签的以太帧进出,就需要配置“汇聚”(Trunk)对应的VLAN,或者说,该端口是该VLAN的Trunk端口。这样,这个端口也允许带着被“Trunk”的其他VLAN标签的以太帧进入该端口,但带着该VLAN标签的以太帧从该端口出去后,VLAN标签却不会被剥离。
除了Access端口和Trunk端口之外,还有一个混合(Hybrid)端口。相对于Trunk,当一个端口Hybrid某个VLAN时,可以指定带有该VLAN标签的以太帧出去后是否继续携带VLAN标签。
需要说明的是,很多计算机、服务器、NVR、DVR、IPC等主机都并不支持带有VLAN标签的以太帧的接收和发送,所以必须保证以太帧在离开交换机前往主机时将VLAN标签剥离。
理解网络知识的最好方法是组网实验,我们来看一个典型的例子。假设在图1-9中,需要将不同楼层的A、C和B、D分别划分到黑色VLAN和白色VLAN。首先,交换机1和交换机2上分别配置两个VLAN,并配置连接A和连接C的端口的PVID为黑VLAN,连接B和连接D的端口的PVID为白VLAN。
图1-9 VLAN划分实例图A
问题在于,交换机1和交换机2该如何连接呢?最简单的方法,自然是在交换机1和交换机2上各设一个黑、白VLAN专用的接口并互连,如图1-10所示。
图1-10 VLAN划分实例图B
但这个办法显然不好,如果再多配置几个VLAN,交换机用于互联的端口就不够用了。这时Trunk端口就有用武之地了:交换机互联只各用一个端口,让该端口同时Trunk黑VLAN和白VLAN,一切轻松搞定,如图1-11所示。
图1-11 VLAN划分实例图C
让我们来一次以太帧的VLAN之旅:A发出的以太帧不带VLAN标签,进入交换机1之后被嵌入黑VLAN的标签,由于互联的端口Trunk了黑VLAN,所以该以太帧可以带着标签出来;到了交换机2,因为互联端口Trunk了黑VLAN,所以顺利进入了交换机2,继而从连接C的端口出来,由于连接C的端口Access了黑VLAN,标签被剥离;最后以太帧到达C。
从上面的组网可以看出,“Trunk”一词确实名副其实啊,作用大大的!
但老U似乎感觉有些疑惑:交换机怎么知道将以太帧往哪个端口转发呢?嗯,想起来了,当然是MAC地址表了!对啊,还记得MAC地址表里的VLAN属性吗?就是这里的用处了:控制以太帧仅在本VLAN内部做二层转发!
如图1-12所示,交换机有四个端口:ethernet 0/1、ethernet 0/2、ethernet 0/3、ethernet 0/4。PC1与PC2属于vlan2的办公网络,IPC与NVR都属于vlan3的监控网络。
图1-12 VLAN配置组网图
相关配置如下:
配置完成后,PC1和PC2可以互相Ping通,IPC和NVR可以相互Ping通。PC1、PC2与IPC、NVR两两之间无法Ping通。
家园网友互动
Q:spring_sky24 发表于 2015-8-11 15:18:11
请教一个初级问题,假设交换机划分了3个VLAN,不同VLAN间如何实现互访?
A:网语者 发表于 2015-8-12 14:37:12
不同VLAN间互访通过三层路由实现。
VLAN的原理和配置弄清楚了,这下老U再也不用担心办公室网络和监控网络相互干扰的问题了。
时光飞逝,转眼间网络已经顺利运行了1个月。有一天,领班在整理机房时不小心接错了端口,这下子大家一起叫了起来:网——上——不——去——了!只见交换机的指示灯一片群魔乱舞,疯狂闪烁,这可怎么办呢?