ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

VLAN详解系列:(8)使用VLAN设计局域网

2021-02-26 11:30:03  阅读:159  来源: 互联网

标签:报文 VLAN 端口 缺省 局域网 交换机 网络 详解


使用VLAN设计局域网

使用VLAN设计局域网的特点
通过使用VLAN构建局域网,用户能够不受物理链路的限制而自由地分割广播域。
另外,通过先前提到的路由器与三层交换机提供的VLAN间路由,能够适应灵活多变的网络构成。
但是,由于利用VLAN容易导致网络构成复杂化,因此也会造成整个网络的组成难以把握。
可以这样说,在利用VLAN时,除了有:
l网络构成灵活多变
这个优点外,还搭配着:
l网络构成复杂化
这个缺点。
下面,就让我们来看看具体的实例。

不使用VLAN的局域网中网络构成的改变

假设有如图所示的由1台路由器、2台交换机构成的“不使用VLAN构建”的网络。

vlan

图中的路由器,带有2个LAN接口。左侧的网络是192.168.1.0/24,右侧是192.168.2.0/24。
现在如果想将192.168.1.0/24这个网络上的计算机A转移到192.168.2.0/24上去,就需要改变物理连接、将A接到右侧的交换机上。
并且,当需要新增一个地址为192.168.3.0/24的网络时,还要在路由器上再占用一个LAN接口并添置一台交换机。而由于这台路由器上只带了2个LAN接口,因此为了新增网络还必须将路由器升级为带有3个以上LAN接口的产品。

使用VLAN的局域网中网络构成的改变

接下来再假设有一个由1台路由器、2台交换机构成的“使用VLAN”的局域网。交换机与交换机、交换机与路由器之间均为汇聚链路;并且假设192.168.1.0/24对应红色VLAN、192.168.2.0/24对应蓝色VLAN。

vlan

需要将连接在交换机1上192.168.1.0/24这个网段的计算机A转属192.168.2.0/24时,无需更改物理布线。只要在交换机上生成蓝色VLAN,然后将计算机A所连的端口1加入到蓝色VLAN中去,使它成为访问链接即可。

然后,根据需要设定计算机A的IP地址、默认网关等信息就可以了。如果IP地址相关的设定是由DHCP获取的,那么在客户机方面无需进行任何设定修改,就可以在不同网段间移动。

利用VLAN后,我们可以在免于改动任何物理布线的前提下,自由进行网络的逻辑设计。如果所处的工作环境恰恰需要经常改变网络布局,那么利用VLAN的优势就非常明显了。

并且,当需要新增一个地址为192.168.3.0/24的网段时,也只需要在交换机上新建一个对应192.168.3.0/24的VLAN,并将所需的端口加入它的访问链路就可以了。

如果网络环境中还需要利用外部路由器,则只要在路由器的汇聚端口上新增一个子接口的设定就可以完成全部操作,而不需要消耗更多的物理接口(LAN接口)。要使用的是三层交换机内部的路由模块,则只需要新设一个VLAN接口即可。

网络环境的成长,往往是难以预测的,很可能经常会出现需要分割现有网络或是增加新网络的情况。而充分活用VLAN后,就可以轻易地解决这些问题。

使用VLAN设计局域网(2)

利用VLAN而导致的网络结构复杂化
虽然利用VLAN可以灵活地构建网络,但是同时,它也带来了网络结构复杂化的问题。
特别是由于数据流纵横交错,一旦发生故障时,准确定位并排除故障会比较困难。
为了便于理解数据流向的复杂化,假设有下图所示的网络。计算机A向计算机C发送数据时,数据流的整体走向如下:
计算机A→交换机1→路由器→交换机1→交换机2→计算机C

vlan

首先计算机A向交换机1送出数据(①),其后数据被转发给路由器(②)进行VLAN间路由。路由后的数据,再从汇聚链路返回交换机1(③)。由于通信目标计算机C并不直连在交换机1上,因此还需要经过汇聚链路转发到交换机2(④)。在交换机2上,数据最终被转发到C所连的端口2上,这才完成整个流程(⑤)。
在这个例子中,仅由2台交换机构成网络,其数据流已经如此复杂,如果构建横跨多台交换机的VLAN的话,每个数据流的流向显然会更加难以把握。

网络的逻辑结构与物理结构

为了对应日渐复杂化的数据流,管理员需要从“逻辑结构”与“物理结构”两方面入手,把握好网络的现状。
物理结构,指的是从物理层和数据链路层观察到的网络的现状,表示了网络的物理布线形态和VLAN的设定等等。
而逻辑结构,则表示从网络层以上的层面观察到的网络结构。下面我们就试着以路由器为中心分析一个IP网络的逻辑结构。
还是先前的那个例子,描绘了布线形态和VLAN设定的“物理结构”如下图所示。

vlan

分析这个物理结构并转换成以路由器为中心的逻辑结构后,会得到如下的逻辑结构图。当我们需要进行路由或是数据包过滤的设定时,都必须在逻辑结构的基础上进行。

vlan

把握这两种网络结构图的区别是十分重要的,特别是在VLAN和三层交换机大行其道的现代企业级网络当中。

下面附带一份不同端类型对于VLAN Tag的处理过程

untag就是普通的ethernet报文,普通PC机的网卡是可以识别这样的报文进行通讯;tag报文结构的变化是在源mac地址和目的mac地址之后,加上了4bytes的vlan信息,也就是vlan tag头;一般来说这样的报文普通PC机的网卡是不能识别的 下图说明了802.1Q封装tag报文帧结构带802.1Q的帧是在标准以太网帧上插入了4个字节的标识。其中包含:2个字节的协议标识符(TPID),当前置0x8100的固定值,表明该帧带有802.1Q的标记信息。2个字节的标记控制信息(TCI),包含了三个域。Priority域,占3bits,表示报文的优先级,取值0到7,7为最高优先级,0为最低优先级。该域被802.1p采用。规范格式指示符(CFI)域,占1bit,0表示规范格式,应用于以太网;1表示非规范格式,应用于Token Ring。VLAN ID域,占12bit,用于标示VLAN的归属。 以太网端口有三种链路类型:Access、Hybrid和Trunk。Access类型的端口只能属于1个VLAN,一般用于连接计算机的端口;Trunk类型的端口可以允许多个VLAN通过,可以接收和发送多个VLAN的报文,一般用于交换机之间连接的端口;Hybrid类型的端口可以允许多个VLAN通过,可以接收和发送多个VLAN的报文,可以用于交换机之间连接,也可以用于连接用户的计算机。Hybrid端口和Trunk端口在接收数据时,处理方法是一样的,唯一不同之处在于发送数据时:Hybrid端口可以允许多个VLAN的报文发送时不打标签,而Trunk端口只允许缺省VLAN的报文发送时不打标签。
在这里先要向大家阐明端口的缺省VLAN这个概念Access端口只属于1个VLAN,所以它的缺省VLAN就是它所在的VLAN,不用设置;Hybrid端口和Trunk端口属于多个VLAN,所以需要设置缺省VLAN ID。缺省情况下,Hybrid端口和Trunk端口的缺省VLAN为VLAN 1 当端口接收到不带VLAN Tag的报文后,则将报文转发到属于缺省VLAN的端口(如果设置了端口的缺省VLAN ID)。当端口发送带有VLAN Tag的报文时,如果该报文的VLAN ID与端口缺省的VLAN ID相同,则系统将去掉报文的VLAN Tag,然后再发送该报文。注:对于华为交换机缺省VLAN被称为“Pvid Vlan”,对于思科交换机缺省VLAN被称为“Native Vlan”交换机接口出入数据处理过程如下:

Acess端口收报文:
收到一个报文,判断是否有VLAN信息:如果没有则打上端口的PVID,并进行交换转发,如果有则直接丢弃(缺省)

Acess端口发报文:
将报文的VLAN信息剥离,直接发送出去 (所以,Access端口可以实现同一交换机上相同VLAN下的主机通信;也可以实现交换机级连时的缺省VLAN1报文交换,但不能实现VLAN透传。)

trunk端口收报文:
收到一个报文,判断是否有VLAN信息:如果有,判断该trunk端口是否允许该 VLAN的数据进入:如果可以则转发,否则丢弃;如果没有VLAN信息则打上端口的PVID,并进行交换转发。

trunk端口发报文:
比较将要发送报文的VLAN信息和端口的PVID,如果不相等则直接发送。如果两者相等则剥离VLAN信息,再发送。(所以,将交换机级连口统统设置为Trunk并允许所有VLAN通过后,VLAN2-VLAN4000直接透传,而VLAN1则因为和Trunk缺省PVID相同,需要通过剥离VLAN信息又添加VLAN信息实现了透传。而如果更改Trunk的缺省PVID,则可以实现某一交换机下的VLAN-X和另一交换机下的VLAN-Y通信。)

hybrid端口收报文:
收到一个报文,判断是否有VLAN信息:如果有,则判断该hybrid端口是否允许该VLAN的数据进入:如果可以则转发,否则丢弃(此时端口上的untag配置是不用考虑的,untag配置只对发送报文时起作用);如果没有则打上端口的PVID,并进行交换转发。

hybrid端口发报文:
1、判断该VLAN在本端口的属性(disp interface 即可看到该端口对哪些VLAN是untag,哪些VLAN是tag)
2、如果是untag则剥离VLAN信息,再发送,如果是tag则直接发送(所以,Hybrid实现了不同VLAN下的主机的通信。)
说明:思科不存在hybrid端口,只有华为 H3C可以配置

 

标签:报文,VLAN,端口,缺省,局域网,交换机,网络,详解
来源: https://blog.csdn.net/weixin_46948473/article/details/114120954

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有