VLAN/Trunk以及三层交换之间的关系与区别

所属分类: 网络 / 组网 阅读数: 636
收藏 0 赞 0 分享

  VLAN/Trunk以及三层交换之间的关系与区别是什么,如果能回答出下面四个问题那就说明你知道他们之前的区别,如果不知道答案的话可以参考本文哦。

  1.支持VLAN的交换机一定是三层交换机吗?

  2.Trunk配置了就可以VLAN间通信吗?

  3.Trunk具体怎么工作的?

  4.VLAN间的通信到底是怎么执行的?

  如果说给若干个纯二层环境加上若干个路由器,我想绝大多数的人都可以设计出一个个完美的互联互通的网络,然而加上了VLAN之类的概念,反而被绕晕了,具有讽刺意义的是,VLAN本来就是用来简化纯二层环境+交换机的配置的。因此首先要理清VLAN的基本概念,然后具体VLAN间将如何进行通信就不解自知了。

  VLAN/Trunk以及三层交换的概念

  虚拟局域网VLAN

  VLAN(Virtual Local Area Network)的中文名为"虚拟局域网"。VLAN是一种将局域网设备从逻辑上划分成一个个网段,从而实现虚拟工作组的新兴数据交换技术。这一新兴技术主要应用于交换机和路由器中,但主流应用还是在交换机之中。但又不是所有交换机都具有此功能,只有VLAN协议的第二层以上交换机才具有此功能,这一点可以查看相应交换机的说明书即可得知。

  Trunk

  简单说,端口如果配置为trunk模式,则允许多个vlan的数据通过该端口,一般是交换机与交换机互联的端口配置成trunk。

  三层交换

  三层交换技术就是:二层交换技术+三层转发技术。它解决了局域网中网段划分之后,网段中子网必须依赖路由器进行管理的局面,解决了传统路由器低速、复杂所造成的网络瓶颈问题。

  1.VLAN和三层没有任何关系

  如果先不提Trunk而纯粹的VLAN实际上就是将多个纯二层的以太网交换机合并成了一个,用软件进行控制。合并后的交换机就是支持VLAN的交换机,参与合并的多个物理交换机如今退化成了逻辑意义上的交换机。多个物理交换机并不是傻乎乎的合并后完事,VLAN交换机的另一个意义就是可以通过各种策略指定哪个物理port属于哪个逻辑交换机,如果让物理交换机实现这个,就不得不涉及购置,布线等问题,这就说明了软件真的比硬件更加灵活,以软件为基准,硬件其实就是固化了的软件。

  如果想明白VLAN的含义,在Linux上配置几个Bridge就可以了。我们知道,Linux内置了一个软Bridge实现,通过brctl可以进行配置,一个单独的Linux物理主机配置了N块以太网卡,就可以简单的模拟VLAN的概念(注意,此时还没有引入VLAN的本质-Trunk)了:

  a.新增一个br0,将网卡1/2/3加进去;

  b.新增一个br1,将网卡4/5/6加进去;

  c....

  d.网卡1连接一个纯二层交换机1;

  e.网卡4连接一个纯二层交换机2;

  f....

  这样Linux主机上就存在了多个Bridge,你可以将Linux主机这个物理的机器视为一个支持VLAN的机器了。

  VLAN交换机是一个纯二层的设备。然而,如果仅仅这样,那就没有必要推出VLAN的概念了,VLAN到底和上述的简单配置有什么不同呢?这就涉及到了IEEE802.1q标准,请看下节。

  2.Trunk和三层没有任何关系

  如果一个VLAN交换机上配置了两个VLAN,分别为VLAN1和VLAN2,另外几台VLAN交换机上可能也需要配置VLAN1和VLAN2,毕竟单独一台机器的口子有限,因此对于组网,不级联的拓扑是很少见的,现在关键的问题就是需要让处在不同VLAN交换机的口子可以属于同一个VLAN,即属于同一个广播域。办法很简单,那就是每一个VLAN用一个线将两个VLAN交换机上属于同一个VLAN的口子连起来,如果两台交换机上分别有3个VLAN,那就扯 3根线...这不得不说是一个好方法,但决不是一个妙方法。对于硬件上的体力活儿,软件一般都能很好的解决,这一次,又是软件帮了忙,正如VLAN的概念提出时那样(见上一节)。

  Trunk标准提出来了,所谓的Trunk就是可以让多个VLAN在两个交换机级联时复用一根线,因此软件上需要对数据帧做一些文章,以便数据帧到达另一个交换机的时候知道自己属于哪个VLAN从而限制帧的传输域,802.1q正是做这个的,从而这也成了VLAN的核心。Trunk只是简化了布线,降低了硬件成本,这是一个通过软件降低硬件成本的绝好的例子。

  既然Trunk可以通过多个VLAN的数据,那么实际上Trunk是将广播域延伸到了另外一台交换机上,而对于LAN,其广播域延伸到哪里,LAN也就延伸到了那里。事实上这并不与VLAN的初衷之一-限制广播域相冲突,Trunk将广播透传的时候是打着VLAN id标记的,也就是说广播除了可以在Trunk上或者在自己VLAN内部传输,是决不会到达其它VLAN里面的,如果一个广播到达了这样一个交换机,其上既没有别的Trunk口,也没有广播携带的VLAN id对应的VLAN,那么广播也就到此为止而消失了。

  到此为止,丝毫没有任何第三层的概念出现。

  3.VLAN接口的概念

  VLAN 接口的概念和Linux上Bridge的实现十分相像,就是可以为一个VLAN配置一个或者多个接口,在该接口上可以指定三层的IP地址,在VLAN的某一个口子(物理二层接口)上配置这样一个VLAN接口(三层接口)实际上就等同于在VLAN的该口子上插入了一台三层设备,只是这台设备是一台虚拟的设备罢了,另外和真正插一台设备不同的是,由于它是处在本机内部的,因此它所配置IP地址当然也就属于本机IP地址了,处在路由表的Local域中。

  理解了这一点就会明白,实际上配置了VLAN接口的VLAN交换机实际上是往纯VLAN交换机里面硬塞了一台三层设备,二者合而为一,因此更能加深对“VLAN交换机是一个纯二层的设备”这个观点的认识。

  4.LAN交换机上可以配置IP地址

  姑且先抛开VLAN的概念,说一下LAN交换机。一般以为LAN交换机是纯二层的设备,可是知道了VLAN接口的概念后,我们发现即使没有VLAN,也是可以将一台虚拟的三层设备插入到一个LAN交换机的口子上去的,其实Linux的软Bridge就是这样做的,那么内置了三层虚拟设备的LAN交换机就有了三层的功能。这是什么呢?还是以Linux为例,在Linux上配置两个Bridge,分别为br0,br1,在br0上配置IP地址 1.1.1.1/24,在br1上配置IP地址2.2.2.2/24,我们就可以看到br0标示的一个LAN上的流量可以通过br0的IP地址被路由到 br1,反之,br1标示的LAN流量也可以通过br1的IP地址路由到br0,这是什么?这就是三层交换机,一个将路由器接口变成交换机接口的路由器,这部三层交换机上拥有两组LAN接口,虽然可以略见VLAN的概念,但是没有任何标准说这个三层交换机上的两组LAN就是两个VLAN。

  可见,三层交换机可以和VLAN没有关系。

  5.以太网三层交换机

  从上述第4节可以看出,三层交换机可以和VLAN没有关系,然而实际情况下,三层交换机一般都支持VLAN,为何设备厂商要如此做呢?这涉及到一个工业设计的问题(没有毕业的本科年代学习工业设计,大专年代学习了网络~~),工业上的设计主要关注产品的使用而不是理论上的合理性,因此将VLAN引入第4节的 “两组LAN”是最合适不过的了。

  另外,三层交换机本质上还是偏重于“交换机”而不是“三层”,交换机的特征就是交换,所谓的交换是一个快速转发的概念,基本都是使用硬件芯片完成的,大量的存储芯片以空间换时间完成快速交换,这得益于以太网帧头的简单易操作性以及LAN交换机设计时关注了基于源MAC的自动学习和基于目标MAC的转发,之所以能如此还是因为以太网是一个BMA,即广播网络,到底数据应该由谁接收不是交换机决定的,而是各个端点主机决定的,这样的话交换机就可以模糊的进行转发,做到尽可能的精确-通过源MAC/端口学习,大不了就广播。这就是以太网交换的特征,三层交换机可以利用以太网交换的大量存储芯片用来存储IP层的路由结果,利用以太网快速交换的思想用来进行三层转发,数据包的第一次通过还是要走三层,这相当于一次学习的过程,类似以太网的MAC/端口学习,以后的结果就可以存储于ASCI了,这样就完成了快速转发。

  6.三层交换机和路由器的区别

  这个问题的答案铺天盖地,然而内容也是千篇一律,很少有人研究其背后的原因。既然以太网三层交换机可以做到一次路由多次转发,那么为何不再WAN上使用呢?如果仅仅是因为WAN不一定是以太网的话,那大可为了性能在WAN上引入以太网技术,这并不是主要原因,实际上,如果再深入一点看一下WAN上的路由器和接入层路由器的路由表就会恍然大悟了,WAN路由器上的表项数量十分庞大,且在BGP的影响下虽不频繁但是还是会有刷新,如果使用硬件来转发的话,光是对存储空间的需求就是一个挑战,三层交换机的快速转发实际上用到了cache的概念,有cache就会有冲突,特别在WAN环境下,IP地址的变动,可达性信息的变动会导致大量的cache冲突,因此三层交换机带来的收益会被马上抵消,另外WAN环境实际上用不到很多交换机口子,因此三层交换机内部背板芯片布线对于WAN环境是不合理的。其实用不着为WAN的性能担心,WAN路由器早就使用了类似Cisco CEF的快速转发技术了。

  三层交换机的使用场合是单个小型机构内部,因为这种地方的特定IP地址几乎不会变动,路由相对稳定,IP地址总量也不多,且路由基本都能汇聚,正好符合cache最优化使用的原则,三层交换机用武之地正在于此。

  7.VLAN间的通信

  这个问题的方案也是铺天盖地,答案同样千篇一律。VLAN间的通信方式被总结出来有两种:1.使用单臂路由方式;2.使用三层交换方式。这好像是从 CCNP/CCIE或者华为的HCSE的考试指南中流出来的,如果背下来当然是有用的,当初我考HCSE的时候还背了呢。学习到了一定程度就应该抛弃答案,回归本质。两个VLAN间的通信其实就是两个LAN间的通信,两个LAN间的通信需要一个网关来路由,那么VLAN间通信也就需要一个网关来路由了,这个网关的选择就多样了,可以选择VLAN接口,可以选择路由器等等,最终具体属于一个VLAN的主机在访问另一个VLAN的主机时如何能寻址到这个三层接口,那也有很多选择,VLAN的access链路上帧保持原样,流量若要跨越交换机的级联线,那么需要通过Trunk链路,最终总能找到这个下一跳三层接口。

  VLAN间的通信就这么简单,不要被支持VLAN,支持Trunk的三层交换机这个All for one的杂烩概念迷住了双眼。

  以上就是VLAN/Trunk以及三层交换之间的关系与区别,希望大家可以搞明白他们的区别,谢谢阅读,希望能帮到大家,请继续关注脚本之家。

更多精彩内容其他人还在看

如何构建安全的网络架构的方案

这篇文章主要为大家介绍了如何构建安全的网络架构的方案,网络的安全核心,提供边界安全防护和访问权限控制;网络防病毒系统:杜绝病毒传播,提供全网同步的病毒更新和策略设置,提供全网杀毒
收藏 0 赞 0 分享

DCN校园网大二层架构的设计方案

校园网是为学校师生提供快捷高效的教学、科研和综合信息服务的网络,那么校园网大二层架构是怎么设计的呢?请和脚本之家的小编一起来看一下
收藏 0 赞 0 分享

适合中小企业的组网实例分析

这篇文章主要为大家介绍了中小企业通用的信息化解决方案做一些探讨,于中小企业来说,组网的方式、网络的结构、网络设备可能千差万别,但是最重要的是根据企业的实际需求,确定网络的应用和功能
收藏 0 赞 0 分享

如何避免企业网络安全设备部署失败的解决方案

为了保护企业不受多元化和低端低速可适应性的持久威胁,IT企业正在部署各种各样的新型网络安全设备:下一代防火墙、IDS与IPS设备、安全信息事件管理(SIEM)系统和高级威胁检测系统
收藏 0 赞 0 分享

掌握两种局域网管理技巧 让企业网络更高效

要想有效地提高局域网上网效率,还需掌握一些控制技巧的!这不,下面两则控制技巧,相信会让各位耳目一新,需要的朋友可以参考下
收藏 0 赞 0 分享

局域网中电脑病毒入侵的原理及防范方法

计算机病毒只存在于互联网,局域网很安全?现在的病毒局域网中也能快速繁殖,导致局域网计算机的相互感染,怎么判断局域网被病毒的入侵?下面将详细为大家讲解局域网被病毒入侵的现象,及预防的方法
收藏 0 赞 0 分享

如何实现ADSL宽带多机共享

ADSL是当今比较实惠的一种宽带接入方案,其计费目前一般采用包月的方式。如果一个用户使用一个帐号上网,那就势必有点不划算,如何实现一条ADSL多个用户上网呢?需要的朋友可以参考下
收藏 0 赞 0 分享

用HOSTS文件屏蔽网站 建立网站映射的方法

于Hosts文件的执行优先级高于DNS域名解析,为了防止出现Hosts和DNS域名访问的混乱,在Windows 98中把Hosts改成了Hosts.sam,就是要取消该文件的域名解析功能。而本文所述恰恰是利用了Hosts文件的这一功能
收藏 0 赞 0 分享

修改TTL值防内网“窥视”的具体实现方法

有些技术迷经常使用Ping命令探测服务器,然后根据返回的TTL值判断服务器的系统类型,查找服务器的漏洞,脚本之家的小编在下面的文章里教大家怎么修改TTL值,需要的朋友可以参考下
收藏 0 赞 0 分享

用SyGate 现局域网共享上网 共享ADSL

上课的时候,很多人发现老师的电脑又网络,而自己的去没有。学生如何“借”老师的局域网?利用Sygate当“二传”共享ADSL,下面脚本之家将会详细描述Sygate的使用方法,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多