day15、1 - VLAN虚拟局域网与trunk

本文详细介绍了VLAN技术的背景、概念、使用及隔离广播的原理,强调了VLAN在控制广播、提高网络安全性方面的作用。同时,解释了Trunk技术的必要性,如何通过Trunk实现跨交换机的VLAN通信,并探讨了VLAN隔离广播与全网互通的解决方案。此外,还涉及了交换机工作原理和配置Trunk的命令。
摘要由CSDN通过智能技术生成

一、VLAN概述

1.为什么需要VLAN

  • 我们前面学习过广播和广播域,知道了广播域越小越好,而且广播域如果太大那么广播就具有一定的危害:①增加网络和设备的负担,②传播病毒(一个PC中了病毒,所在的局域网内所有人只要收到这个带有病毒的广播,就会感染),③安全性低(比如现在公司不想让财务部和市场部的员工PC通信,如果这两个部门在同一个局域网内,会发现这件事很难,那么员工PC的安全性就会降低)

  • 基于上述广播域大时广播带来的危害,所以我们可以想办法来隔绝广播,将一个大的局域网划分为一个一个小的广播域。我们前面学过可以控制广播/隔离广播域的办法有使用路由器,比如可以将财务部和市场部用路由器隔开,现在左半部分和右半部分的IP可以设置不一样,财务发的广播只能10网段的收到,就算10网段有中了病毒的PC,通过广播也无法传播到20网段;如果防止两部门之间相互通信,则只需要在路由器端口上设置一条策略,凡是目标IP为10,源IP为20的一律不让通过即可。此时每个终端收到广播的频率要下一倍。

    image-20211103102516280

    但是物理隔离的方法不灵活且劳时伤财,比如财务部的一天PC不老实,跑到市场部的连接到那边的网段,就可以访问通信了;而且如果财务部有很多人,如果还要再细分成两个或多个广播域,就会很不灵活

  • 那么现在就可以引入新的技术VLAN技术来控制广播

2.VLAN是什么

  • Virtual LAN,虚拟局域网,VLAN技术是在交换机上实现的,且通过逻辑隔离划分广播域,是一项控制广播的技术
  • 先来举一个列子:在一个教室中(局域网),现在有很多的同学入座(处于同于局域网下的PC),一个同学说话(广播),那么教室里的所有学生都可以听到;如果现在给每个学生带一个耳机,可以给不同组的学生设置不同的频段,那么即使在同一个教室中,只有同频段的学生才可以通信,就算他们的座位乱换,只要耳机的频段不变,则其他的频段的声音不同频段是听不到的。物理上没有发生变化都在教室中,但是逻辑上可以隔离成小的不同频段
  • VLAN技术类似,VLAN可以通过创建不同的VLANID,将一个物理局域网,逻辑的隔离成几个虚拟的局域网
  • VLAN是二层技术,只有交换机可以配置,路由器或PC等其他层设备无法配置vlan技术

3.VLAN技术的使用

  • 在交换机上除了交换机原有的功能外,现在新添加一项技术VLAN技术,接着创建不同的VLANID。比如在一个交换机上创建两个"频段"–VLAN1、VLAN2,如果一个局域网内有多台交换机,那么每一台交换机上都要创建相同的VLANID,每一台交换机都要认识这些"频段"。然后将交换机上的接口划分到这些"频段"中。一般在公司中为了方便区分,一个部门一个VLANID,一个VLANID一个网段,一个网段一个广播域。虽然可以只用划分在同一个网段(局域网)下划分成不同的VLANID,此时即便在网段相同的PC只要VLANID不同就无法通信。但是为了方便区分,在最初规划的时候最好就一个VLANID一个网段
  • 其实所有的交换机企业管理型交换机都已经默认启用了vlan技术,且划分了vlanID。只是只有一个vlanID,所有相当于交换机的所有端口都属于同一个vlanID,即同一个广播域,即同一个网段。这个默认vlanID为vlan1。所以交换机默认就有vlan1(还默认有vlan1002、1003、1004、1005一共五个默认开启的vlan,只是后面几个已经被淘汰了。但是取决于不同的厂家,不同厂家可能不一样,这里举的思科的例子)

4.VLAN技术实例

  • 现在公司中有两个部门–财务部和市场部,PC1、2属于财务部,PC3、4属于市场部,但是现在PC1和PC3需要合作,PC2和PC4需要合作,且为了公平安全竞争,PC1、3可以相互通信,PC2、4可以相互通信,除此之外不同的组的成员不能相互通信。如图所示:

    image-20211103133629990

    假设现在两台交换机的f0/3端口已经解决了可以转发连接在vlan2或vlan3端口的PC发的帧。因为财务部要和市场部通信,必须要由端口f0/3转发,而此时f0/3默认属于vlan1,要想让f0/3端口转发PC1和PC2的消息,则必须想办法解决f0/3端口怎么又属于vlan2又属于vlan3。具体办法详见三、Trunk

  • 说明:将PC1、PC2分别接入财务部交换机的端口f0/2和f0/1,将PC3和PC4分别接入到市场部交换机的端口f0/2和f0/1。现在按照要求在财务部交换机上创建两个vlanID–vlan2和vlan3,再将f0/2接口加入到vlan2、f0/1接口加入到vlan3;在市场部交换机上同样创建两个vlanID–vlan2和vlan3,再将f0/2加入到vlan2、f0/2加入到vlan3。按照方便区分的想法划分网段,连接属于vlan2端口的PC为10.1.1.0网段的,连接属于vlan3端口的PC为20.1.1.0网段。

  • 那么此时PC1和PC3属于同一个VLANID–vlan2=同一个网段10.1.1.0,PC2和PC3属于同一个VLANID–vlan3=同一个网段20.1.1.0。PC1和PC3可以通信,与其他人通信不了,因为不属于同一个VLANID

5.VLAN的类型

  1. 静态VLAN:需要手工配置;基于端口划分的VLAN。即交换机的vlan表中记录的是交换机上的端口和对应的vlanID,目前市面上90%的公司都在使用此技术,因为方便简单易操作
  2. 动态VLAN:需要手工配置;基于MAC地址划分的VLAN。即交换机的vlan表中记录的是公司员工PC的MAC地址和对应的vlanID。特点是相对比较灵活,但是公司员工多的话工作量大且来一个员工就要配置一个,目前快被淘汰了
  3. 802.1x端口认证技术实现动态VLAN:需要使用新的技术配合VLAN技术使用,且在域环境,基于账号密码划分的VLAN,只需要在公司的域环境中的DC上的AD的所有OU中添加OU与vlan的对应关系即可。所以这是一种结合静态VLAN技术和802.1x端口认证技术实现的动态vlan技术

6.VLAN隔离广播的原理

  • 还是按照上图说明:现在PC1想要与PC2通信,PC1要先获取PC2的MAC地址,发送ARP请求广播报文,通过封装成帧,帧发送到交换机
  1. 如果给交换机配置的静态VLAN:

    • 此时的交换机由于加入了VLAN技术,所以收到帧后会先查看vlan表:此帧从f0/2端口进入,f0/2端口属于vlan2。然后再去根据目标MAC地址匹配MAC地址表(假设此时交换机MAC地址表已经学习完整),由于ARP请求广播中的MAC地址为广播MAC地址,所以需要将帧从除入端口以外的其他所有端口转发,于是将帧送往各个端口,但是在转发前,交换机还会查看vlan表:查看各端口的vlanID,如果与帧的入端口的vlan2不相等即不属于同一个虚拟局域网,则丢弃不转发;如果相等则转发。至此就实现了隔离广播的作用
  2. 如果给交换机配置的动态VLAN:

    • 此时交换机收到帧后会先获取PC1的MAC地址,然后在vlan表中查看PC1的MAC地址属于哪一个vlanID;中间的过程和上述一致;最后帧运送到相应的端口后,交换机又会在vlan表中查看此端口连接的PC的MAC地址属于哪一个vlanID,如果不属于同一个则拒绝转发。属于同一个vlanID就会转发
  3. 使用802.1x端口认证技术实现动态VLAN:

    • 交换机上的每个端口都必须有此认证技术:即PC插上网线也上不了网,先输入账号密码,然后发送到交换机,交换机再转发给公司内的认证服务器,这台认证服务器决定你属于哪个VLANID;之后认证服务器再去找域环境下的域控制器DC的活动目录AD验证账号密码是否正确,在看你属于哪一个组织单位OU,DC服务器上有OU和vlan的对应关系,如果账号密码输入正确,则会将你所属的OU对应的vlan动态的下发到交换机,告诉交换机这一次这个人这个端口应该属于哪一个vlanID。

二、静态VLAN命令

1.创建VLAN

conf t              #先进入全局配置模式
#在现实中创建,可以一次创建多个vlanID,格式为vlan ID,ID,ID-ID,比如vlan 3,4,6-10,但在思科模拟器中只能一次创建一个
vlan ID             #vlan范围要根据不同的厂家规定
[name  自定义名称]   #可以给此vlanID命名,比如vlan 3 --> name IT,表示vlan3这个虚拟局域网表示IT部门的
exit                #退出vlan

2.删除VLAN

no vlan 10
no vlan 20
...

3.查看VLAN表

show vlan brief
image-20211103135159641

4.将端口加入到VLAN

int f0/x                       #进入某端口配置模式
switchport access vlan ID      #将此端口加入到vlanID中
exit

不同厂家的命令不尽相同,有些是直接将端口号加载switchport语句后面,思科需要先进入此端口配置模式,再加入

三、Trunk

1.为什么需要Trunk

  • 多台交换机示意图

    image-20211103133629990
  • 此时PC1要与PC3通信,因为PC1连接的端口属于vlan2,PC3连接的端口也属于vlan2,按理说同一vlanID可以完成通信,但是现在有多态交换机便出现了一个问题,当PC1发信息经过左边交换机时,交换机先得到消息流入的端口属于vlan2,然后交换机根据MAC地址表匹配到应从f0/3接口发出去,但是此时f0/3接口由于没有手工加入到vlanID,所以默认属于vlan1,由于消息来自vlan2端口,而发送端口为vlan1,vlanID不同无法转发。此时如果将f0/3加入到vlan2,那么如果PC2想要与PC4通信,交换机由于判断两个端口的vlanID不同也无法转发,所以我们现在要想办法解决跨多台交换机同一vlan可以实现通信的问题

    解决办法一:如果在交换机之间再连接一根线,端口vlanID设为vlan2,供vlan2之间的传输;为了再使valn3之间能够通信,所以还需要再在交换机之间连接一根线,端口vlanID设为vlan3。可行,但是如果vlanID太多,就很麻烦

  • 所以我们要引入Trunk,对连接交换机的端口做手脚

2.什么是Trunk

  • Trunk又称为:中继链路/公共链路,中继链路两端的端口称为Trunk端口,又叫中继端口Trunk端口不属于任何vlan,允许所有VLAN数据通过trunk链路。那么反之属于某一个vlan的端口称为接入端口

    如上图中两交换机的f0/3端口称为中继端口,之间的线称为中继链路

3.交换机端口链路类型

  • 接入端口:也称为access端口,一般用于连接pc,只能属于某1个vlan,也只能传输1个vlan的数据
  • 中继端口:也称为trunk端口,一般用于连接其他交换机,属于公共端口,允许所有vlan的数据通过!

4.标签

  • 但是此时又出现一个问题:现在两交换机之间配置好了Trunk链路,也就说允许所有的帧从中继链路通过,当帧从左边交换机的f0/3Trunk端口到达右边的交换机f0/3Trunk端口,f0/3收到后无法知道此帧到底来自哪一个vlanID,因为中继链路可以允许任何vlan数据通过,那么Trunk技术是怎么做到一个帧属于哪一个vlan呢?因为交换机会给从公共链路走的帧添加一个标签,记录此帧来自哪一个vlan

  • 标签的作用:对交换机中的帧进行vlan标记

  • 标签的种类:

    • ISL标签,cisco厂家的交换机私有的,标签大小30字节;
    • 802.1q标签,公有协议,所有厂家都支持,标签大小4字节,属于内部标签。
  • 添加标签需要通过一种协议,而对方读懂标签且拆下标签需要使用同一种协议,所以多台交换机与标签有关的协议需要使用同一个协议,不同的厂家交换机也需要设置好使用哪一种协议添加标签

    和数据的封装和解封装类似,都需要使用同层中的同一个协议,才能实现封装和解封装

5.Trunk实现跨多台交换机同一vlan通信全过程

下述过程中以802.1q标签说明

  • 当给交换机配置了vlan和Trunk(Trunk技术)后
  • 当PC1发送帧到f0/2端口,交换机先得到此帧来自vlan2端口,再根据MAC地址表匹配此帧应当从f0/3转发出去,此时由于帧要通过Trunk链路,那么交换机会做一个工作:将帧从中间劈开,然后使用添加一个标签到帧中间再拼接好此帧,标签内容记录此帧来自vlan2,然后再将添加了标签的帧从f0/3转发到右边交换机的f0/3端口
  • 右边交换机f0/3端口收到后会使用同一协议将此帧中的标签部分取出,获取标签标记的此帧属于哪一个vlan,然后再将剩下的帧拼接起来,传到交换机内部,交换机把帧中的目标MAC地址与MAC地址表匹配决定从f0/2端口转发,于是将帧送到f0/2端口,但在转发前交换机会查看vlan表此端口对应的vlanID,如果与收到帧时获取的vlanID相同,则将帧转发出去,不同则拒绝转发。

四、配置Trunk命令

  • 给交换机配置Trunk是给端口配置,让端口设置为Trunk端口,且中继链路两端的两个端口都要配置Trunk

    int f0/3             #先进入到连接交换机的端口
    [switchport trunk encapsulation dot1q/isl]     #此命令有些交换机支持选择标签协议,有些不支持,是可选的
    switchport mode trunk          #将端口设置为Trunk端口
    exit
    
  • 配置好后中继端口不会出现在vlan表中,因为此端口已经不属于任何vlan

五、vlan隔离广播与隔绝通信

  • 有一个问题:我们用vlan解决了隔离广播,但是顺带也隔离了所有的通信。因为在局域网内要与对方通信,即要先发送ARP请求广播,对方也要回复ARP单播应答,知道了对方的MAC地址后,才能将通信报文封装成帧,才可以发送出去。即vlan技术不光隔离了广播,只要是一个局域网内连接不同vlan端口的PC一切的通信都被隔绝了。
  • 这不是我们想要达到的目的,我们只是想解决把大的局域网逻辑划分成小的虚拟局域网,来减少广播带来的危害,所以我们现在要想办法解决如果使用vlan技术又可以隔离广播,还可以使不同vlan之间可以通信。最终结果是保持了隔离广播的特性又能实现全网互通(单臂路由会详细学习)

六、交换机的工作原理(配置了VLAN和Trunk后)

  • 结合拓扑图说明配置了vlan和trunk的交换机的工作原理(以静态vlan和采用802.1q标签的trunk说明)

    image-20211103201953227
  • 过程说明

    1. 当PC1发送一个广播或者数据帧,到达交换机sw1的f0/1端口,先查看vlan表中f0/1端口对应的vlanID,再将帧送到交换机内部

    2. 根据帧中的源MAC地址学习MAC地址表(已经形成此MAC记录或者没有冲突则不学习)

    3. 而后得到目标MAC地址去匹配MAC地址表,如果没有匹配到则丢弃此帧;匹配到则将帧运送到相应的端口

    4. 1 如果此端口是接入端口(即连接的是主机)

      • 在转发前,交换机还会查看vlan表即将转发的端口对应vlanID与此帧进入交换机端口的vlanID是否一致
        • 如果不一致,则将此帧丢弃不转发
        • 如果一致,则将此帧从此端口转发出去
    5. 2 如果此端口是中继端口(即连接的是交换机)

      • 在转发前,交换机会使用802.1q协议生成一个4字节大小的标签,标签内容记录此帧进入的端口的vlanID,再将此帧按照协议将此帧从中间分开,将标签拼接到中间,组装成一个含有vlan标签的帧,再从Trunk端口f0/3经过Trunk链路转发出去
    6. 当交换机sw2的中继端口f0/3收到含有vlan标签的帧后,先通过同样的802.1q协议获取到标签部分,得到标签中记录的vlanID,再将除去标签的帧的剩下部分按照协议拼接好,再将帧送到交换机内部

    剩下步骤又开始从2以后开始重复

七、拓展无聊内容

  • 现在有如图所示的网络:

    image-20211104162416282
  • 此时如果不使用trunk技术,不加入单臂路由,如何能够让10.1.1.1向10.1.1.2通信

  • 只需要在把左交换机的f0/2端口加入vlan2,把右交换机的f0/2端口加入vlan3即可实现通信

  • 原理:交换机的vlan原理,当交换机的端口收到一个帧后,交换机只认得到这个帧进入的端口属于哪一个vlan,并不认识此发出此帧的交换机端口的vlanID。所以当把左路由器的f0/2端口加入vlan2,由于10.1PC发出帧从f0/1端口进入交换机,记录vlan2,由于f0/2也属于vlan2,则交换机会转发此帧;当右交换机收到此帧,从f0/2进入,自己的f0/2端口属于vlan3,又帧从自己的f0/1发出,f0/1也属于vlan3,所以允许转发此帧,则完成了10.1PC向10.2PC通信的过程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值