当前位置:首页 > 天道酬勤 > 正文内容

vlan透传(如何划分vlan)

张世龙2021年12月22日 02:32天道酬勤660

vlan的应用在网络项目中非常广泛,基本上大多数项目都需要划分vlan。 前几天,我们谈到了vlan的配置,我有朋友,提到了有没有更基础的内容。 今天从基础的vlan知识开始,理解vlan的划分原理。

一、为什么需要VLAN

1、什么是VLAN?

LAN (虚拟局域网)翻译成中文是“虚拟局域网”。 LAN可以是由少数家庭计算机构成的网络,也可以是由数百台计算机构成的企业网络。 VLAN是指LAN,特别是指由路由器划分的网络——,即广播域。

简单地说,同一VLAN内的用户间通信与一个LAN内相同,同一VLAN内的广播只能由VLAN内的成员收听,不能传输到其他VLAN,因此可以抑制不必要的广播风暴的产生。 另外,如果没有路由,不同的VLAN之间无法相互通信,因此提高了不同工作组之间的信息安全性。 网络管理员可以通过配置VLAN之间的路由,完全管理网络中不同工作组之间的信息互访。

2、如果VLAN没有分割,会发生什么?

那么,为什么要分割VLAN (广播域)呢? 那是因为,如果只有一个广播域,就有可能影响网络整体的传输性能。 具体原因请参照附图加深理解。

图中是由5台双层交换机(交换机1~5 )连接多个客户机构成的网络。 在这种情况下,假设计算机a需要与计算机b进行通信。 在基于以太网的通信中,由于必须在数据帧中指定目标MAC地址才能正常通信,所以计算机a首先广播“ARP请求(ARP Request )”信息,尝试获取计算机b的MAC地址

接收到1个广播帧(ARP请求)的交换机将转发到接收端口以外的所有端口。 也就是说,泛滥了。 接着,交换机2在接收到广播帧之后也泛滥。 开关3、4、5也再次泛滥。 最终,ARP请求将转发到同一网络中的所有客户端。 也就是说,这是网络风暴。

分析认为,这一计算a的ARP请求原本是为了获取计算机b的MAC地址而发出的。 也就是说,如果计算机b能接收到就万事大吉了。 但实际上,数据帧传播到了整个网络,所有的计算机都接收到了它。 这样,一方面广播信息消耗网络整体的带宽,另一方面接收广播信息的计算机为了对其进行处理而消耗一部分CPU时间。 网络带宽和CPU运算能力的浪费会增加,有可能导致网络故障。

二、VLAN的原理

1、实现VLAN的结构

在了解“为什么需要VLAN”之后,让我们看一下交换机如何使用VLAN划分广播域。

首先,在没有设置VLAN的第2层交换机上,广播帧将转发到除接收端口以外的所有端口,然后泛滥。 例如,计算机a发送广播消息时,会将其转发到端口2、3和4。

此时,如果交换机生成了红色和蓝色两个VLAN;

同时将端口1、2设定为属于红色VLAN,端口3、4设定为属于蓝色VLAN。

从a发送广播帧时,交换机只会将其转发到属于同一VLAN的其他端口——,即属于同一红色VLAN的端口2,而不会转发到属于蓝色VLAN的端口。

同样,当c发送广播消息时,它只传输到属于蓝色VLAN的其他端口,而不传输到属于红色VLAN的端口。

这样,VLAN通过限制播放帧的传输范围来分割播放域。 在上图中,为了便于说明,用红色和蓝色两种颜色识别不同的VLAN,但在实际使用中通过“VLAN的ID”进行区别。

但是,VLAN生成的逻辑开关互不相通。 因此,在交换机上安装VLAN后,必须进行其他处理,才能在VLAN之间进行通信。

2、如果需要VLAN间通信怎么办?

那么,如果需要在不同的VLAN之间进行通信,该怎么办呢?

局域网是广播域。 通常,两个广播域之间由路由器连接,在广播域之间往来的分组由路由器中继。 因此,路由器也需要为VLAN之间的通信提供中继服务,这被称为“VLAN之间的路由”。

VLAN间路由可以使用普通路由器,也可以使用三层交换机。 请记住,在不同的VLAN之间进行通信时需要路由功能。

二、VLAN的划分方法

1、静态VALN

静态VLAN也称为基于端口的VLAN。 为了从意思上也能理解,是固定的。 明确指定交换机的每个端口属于哪个VLAN的设置方法。

基于端口的vlan方法的主要优点是,建议vlan的成员很容易理解,可以直接为交换机上的现有端口配置vlan,并明确考虑哪些端口相同

个vlan,很清楚的理解。

那么它的缺点呢?

由于需要一个个端口地指定,因此当网络中的计算机数目超过一定数字(比如数百台)后,设定操作就会变得烦杂无比。并且,计算机每次变更所连端口,都必须同时更改该端口所属VLAN的设定——这显然静态VLAN不适合那些需要频繁改变拓补结构的网络和大型网络。

2、动态VLAN

动态VLAN则是根据每个端口所连的计算机,随时改变端口所属的VLAN。这就可以避免上述的更改设定之类的操作。动态VLAN可以大致分为3类:

● 基于MAC地址的VLAN(MAC Based VLAN)

● 基于子网的VLAN(Subnet Based VLAN)

● 基于用户的VLAN(User Based VLAN)

①、基于MAC地址的VLAN,就是通过查询并记录端口所连计算机上网卡的MAC地址来决定端口的所属。假定有一个计算机的MAC地址为“A”被交换机设定为属于VLAN“10”,那么不论MAC地址为“A”这台计算机连在交换机哪个端口,该端口都会被划分到VLAN10中去。

例如:计算机连在端口1时,端口1属于VLAN10;而计算机连在端口2时,则是端口2属于VLAN10。

②、基于子网的VLAN,则是通过所连计算机的IP地址,来决定端口所属VLAN的。不像基于MAC地址的VLAN,即使计算机因为交换了网卡或是其他原因导致MAC地址改变,只要它的IP地址不变,就仍可以加入原先设定的VLAN。

说白了,只要电脑ip地址不变,那么它的vlan就不变,很方便,计算机可以换交换机端口,也可以MAC地址了,都不影响。

③、基于用户的VLAN,则是根据交换机各端口所连的计算机上当前登录的用户,来决定该端口属于哪个VLAN。这里的用户识别信息,一般是计算机操作系统登录的用户,比如可以是Windows域中使用的用户名。这些用户名信息,属于OSI第四层以上的信息。

3、总结

综上所述,vlan的设定手法有静态VLAN和动态VLAN两种,其中动态VLAN又可以继续细分成几个小类。

其中基于子网的VLAN和基于用户的VLAN有可能是网络设备厂商使用独有的协议实现的,不同厂商的设备之间互联有可能出现兼容性问题;因此在选择交换机时,一定要注意事先确认。

三、交换机之间的连接方式

那么,如果需要设置跨越多台交换机的VLAN时又如何呢?

1、方法一

在规划企业级网络时,很有可能会遇到隶属于同一部门的用户分散在同一座建筑物中的不同楼层的情况,这时可能就需要考虑到如何跨越多台交换机设置VLAN的问题了。假设有如下图所示的网络,且需要将不同楼层的A、C和B、D设置为同一个VLAN。

如下图:

这时最关键的就是“交换机1和交换机2该如何连接才好呢?”

最简单的方法,自然是在交换机1和交换机2上各设一个红、蓝VLAN专用的接口并互联了。

但是,这个办法从扩展性和管理效率来看都不好。例如,在现有网络基础上再新建VLAN时,为了让这个VLAN能够互通,就需要在交换机间连接新的网线。建筑物楼层间的纵向布线是比较麻烦的,一般不能由基层管理人员随意进行。并且,VLAN越多,楼层间(严格地说是交换机间)互联所需的端口也越来越多,交换机端口的利用效率低是对资源的一种浪费、也限制了网络的扩展。

2、方法2

为了避免上面这种低效率的连接方式,人们想办法让交换机间互联的网线集中到一根上,这时使用的就是汇聚链接(Trunk Link)。

何谓汇聚链接?

汇聚链接(Trunk Link)指的是能够转发多个不同VLAN的通信的端口。

汇聚链路上流通的数据帧,都被附加了用于识别分属于哪个VLAN的特殊信息。

现在再让我们回过头来考虑一下刚才那个网络如果采用汇聚链路又会如何呢?用户只需要简单地将交换机间互联的端口设定为汇聚链接就可以了。这时使用的一根网线还是普通的UTP线,而不是什么其他的特殊布线。图例中是交换机间互联,因此需要用交叉线来连接。

接下来,让我们具体看看汇聚链接是如何实现跨越交换机间的VLAN的。

A发送的数据帧从交换机1经过汇聚链路到达交换机2时,在数据帧上附加了表示属于红色VLAN的标记。

交换机2收到数据帧后,经过检查VLAN标识发现这个数据帧是属于红色VLAN的,因此去除标记后根据需要将复原的数据帧只转发给其他属于红色VLAN的端口。这时的转送,是指经过确认目标MAC地址并与MAC地址列表比对后只转发给目标MAC地址所连的端口。只有当数据帧是一个广播帧、多播帧或是目标不明的帧时,它才会被转发到所有属于红色VLAN的端口。

蓝色VLAN发送数据帧时的情形也与此相同。

四、VLAN间通信的原理

1、同一VLAN内的通信

接下来,我们继续学习使用汇聚链路连接交换机与路由器时,VLAN间路由是如何进行的。如下图所示,为各台计算机以及路由器的子接口设定IP地址。

红色VLAN(VLANID=1)的网络地址为192.168.1.0/24,蓝色VLAN(VLANID=2)的网络地址为192.168.2.0/24。各计算机的MAC地址分别为A/B/C/D,路由器汇聚链接端口的MAC地址为R。交换机通过对各端口所连计算机MAC地址的学习,生成如下的MAC地址列表。

首先考虑计算机A与同一VLAN内的计算机B之间通信时的情形。

计算机A发出ARP请求信息,请求解析B的MAC地址。交换机收到数据帧后,检索MAC地址列表中与收信端口同属一个VLAN的表项。结果发现,计算机B连接在端口2上,于是交换机将数据帧转发给端口2,最终计算机B收到该帧。收发信双方同属一个VLAN之内的通信,一切处理均在交换机内完成。

2、不同VLAN间通信时数据的流程

接下来是这一讲的核心内容,不同VLAN间的通信。让我们来考虑一下计算机A与计算机C之间通信时的情况。

过程1、计算机A从通信目标的IP地址(192.168.2.1)得出C与本机不属于同一个网段。因此会向设定的默认网关(Default Gateway,GW)转发数据帧。在发送数据帧之前,需要先用ARP获取路由器的MAC地址。

过程2、得到路由器的MAC地址R后,接下来就是按图中所示的步骤发送往C去的数据帧。①的数据帧中,目标MAC地址是路由器的地址R、但内含的目标IP地址仍是最终要通信的对象C的地址。

过程3、交换机在端口1上收到①的数据帧后,检索MAC地址列表中与端口1同属一个VLAN的表项。由于汇聚链路会被看作属于所有的VLAN,因此这时交换机的端口6也属于被参照对象。这样交换机就知道往MAC地址R发送数据帧,需要经过端口6转发。

过程4、从端口6发送数据帧时,由于它是汇聚链接,因此会被附加上VLAN识别信息。由于原先是来自红色VLAN的数据帧,因此如图中②所示,会被加上红色VLAN的识别信息后进入汇聚链路。路由器收到②的数据帧后,确认其VLAN识别信息,由于它是属于红色VLAN的数据帧,因此交由负责红色VLAN的子接口接收。

过程5、接着,根据路由器内部的路由表,判断该向哪里中继。

由于目标网络192.168.2.0/24是蓝色VLAN,,且该网络通过子接口与路由器直连,因此只要从负责蓝色VLAN的子接口转发就可以了。这时,数据帧的目标MAC地址被改写成计算机C的目标地址;并且由于需要经过汇聚链路转发,因此被附加了属于蓝色VLAN的识别信息。这就是图中③的数据帧。

过程6、交换机收到③的数据帧后,根据VLAN标识信息从MAC地址列表中检索属于蓝色VLAN的表项。由于通信目标——计算机C连接在端口3上、且端口3为普通的访问链接,因此交换机会将数据帧除去VLAN识别信息后(数据帧④)转发给端口3,最终计算机C才能成功地收到这个数据帧。

进行VLAN间通信时,即使通信双方都连接在同一台交换机上,也必须经过:发送方——交换机——路由器——交换机——接收方

这样一个流程。

最新弱电资料更新—弱电工程各系统施工报价清单(12月21日)

扫描二维码推送至手机访问。

版权声明:本文由花开半夏のブログ发布,如需转载请注明出处。

本文链接:https://www.zhangshilong.cn/work/26749.html

分享给朋友:

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。