6.2、VLAN原理与配置

  • 前言
  • 随着网络中计算机的数量越来越多,传统的以太网络开始面临冲突严重、广播泛滥以及安全性无法保障等各种问题
  • VLAN(Virtual Local Area Network)即虚拟局域网,是将一个物理的局域网在逻辑上分成多个广播域的技术。通过在交换机上配置VLAN,可以实现在同一个VLAN内的用户可以进行二层互访,而不同VLAN间的用户被二层隔离。这样既能够隔离广播域,又能够提升网络的安全性
  • VLAN技术(虚拟局域网)
  • 在交换机进行隔离广播域
  • 可以实现在同一个VLAN内的用户可以进行二层互访,而不同VLAN间的用户被二层隔离。这样既能隔离广播域,又能提升网络的安全性
  • 概述
  • 我们通过交换机改变冲突域的问题,但是交换机只能控制冲突域的问题,并不能解决广播域的问题。
  • 如果我们想将物理的、局域网中的广播域控制范围,或者把广播域划分成多个小的广播域,我们可以通过路由器来隔离广播域。但是路由器接口少,而且价格昂贵,显然这种方法是不能够长时间进行使用的
  • 传统以太网
  • 早期局域网技术是基于总线型结构
  • 主要存在冲突严重
  • 任意节点发出的信息都可以发送到其他点形成广播
  • 共享一条信息通道,信息安全难以保障
  • 随着主机数量的增加,共享网络中的冲突会越来越严重,交换网络中的广播也会越来越多
  • 想要解决广播域的问题,只能通过在二层上的VLAN技术
  • VLAN技术
  • VLAN技术可以将一个物理局域网在逻辑上去划分多个广播域
  • 物理上划分多个广播域是通过路由器
  • 由于路由器价格太过昂贵,所以不可取
  • 可以通过逻辑上在交换机上隔离广播域
  • VLAN能够隔离广播域
  • 同个VLAN的主机可以互相相通
  • 不同VLAN间是不能互通的
  • VLAN帧格式
  • VLAN的标签长4个字节,它的结构相当于普通的帧结构就多了一个Tag
  • 帧结构
  • DMAC
  • 目的MAC
  • SMAC
  • 源MAC
  • Tag
  • 四个字节
  • TPID
  • 0x8100
  • 固定的,代表该帧为VLAN帧
  • PRI
  • 优先级
  • 用于Qos,用于后期的优先级选取
  • CFI
  • 表示MAC是否是帧经典格式
  • 0
  • 代表经典格式
  • 1
  • 代表非经典格式
  • VLAN ID
  • 一共有12个比特,表示VLAN ID的取值范围
  • VLAN ID有十二个比特,即2^12=4096,但是并不是4096个都给我们进行使用
  • 4096的取值范围是0~4095,实际用户能够使用的是1~4094
  • 0和4095保留用于其他的用途
  • Type
  • 类型
  • Data
  • 数据
  • FCS
  • 帧校验
  • 通过Tag区分不同VLAN
  • VLAN帧主要通过VLAN ID来进行区分是属于那一个VLAN
  • 链路类型
  • 链路类型一共分为两种
  • 用户主机和交换机之间的链路
  • 干道链路
  • 交换机和交换机之间的链路
  • 用户主机和交换机之间的链路为接入链路,交换机与交换机之间的链路为干道链路
  • PVID
  • PVID表示端口在缺省情况下所属的VLAN
  • PVID也叫POST VLAN ID,即端口的VLAN ID
  • 缺省情况下,X7系列交换机每个端口的PVID都是1
  • 端口类型-Access
  • Access端口在收到数据后会添加VLAN Tag,VLAN ID和㐰的PVID相同
  • Access端口在转发数据前会移除VLAN Tag
  • 端口类型
  • Access
  • 主机和交换机所连接的端口
  • 当数据传输到Access端口
  • 该数据是Untagged,Access端口会为数据打上TAG,即PVID
  • Untagged
  • 不带TAG的数据
  • 当一个带TAG的数据传输到Access端口,会检查Access端口的PVID和数据的TAG是否一致
  • 如果一致,则接收
  • 如果不一致,则丢弃
  • Access接收到数据帧以后,转发到主机
  • 剥除VLAN的标签
  • 因为主机只能处理不带标签的数据帧,所以Access端口在转发数据前会移除Vlan Tag
  • trunk
  • Hybrid
  • 华为独有
  • 端口类型-Trunk
  • Trunk端口是交换机和交换机之间的端口类型
  • 当Trunk端口接收到帧时
  • 如果该帧不包含Tag,将添加上端口的PVID
  • 如果该帧包含Tag,查看接口的允许列表
  • 如果允许接收,则直接接收
  • 如果不允许,则丢弃
  • 当Trunk端口发送帧时
  • 该帧的VLAN ID在Trunk允许发送列表中
  • 若与端口的PVID相同时,则剥离Tag发送
  • 若与端口的PVID不同时,则直接发送
  • 该帧的VLAN ID不在Trunk允许发送列表中
  • 直接丢弃
  • 端口类型-Hybrid
  • Hybrid端口既可以连接主机,又可以连接交换机
  • Hybrid端口可以以Tagged或Untagged方式加入VLAN
  • 对于与主机相连的Access端口,主机接受的是Untagged的帧,所以Access端口发送的是Untagged的方式
  • Trunk端口发送出去的,有可能是Untagged,有可能是带Tag的数据帧
  • 进行使用Hybrid时,发出去的帧到底是Tag的帧还是Untagged的帧,需要区别好。需要手动进行配置
  • Hybrid可以用于主机和交换机,并且使用的规则不一样。所以可以将其用于不同的用途
  • Hybrid接口规则可以统一
  • 接收侧
  • 如果收到Untagged的帧,Hybrid端口则会为其打上PVID。然后查看允许列表
  • 在允许列表内,则接收
  • 不在允许列表内,则不接收
  • 如果收到带Tag的帧,会检查允许列表
  • 在允许列表内,则接收
  • 不在允许列表内,则不接收
  • 发送侧
  • 允许列表中是否允许通过
  • 如果允许通过,则查看其发送方式
  • 手工配置发送方式
  • Untagged
  • Tag
  • 如果不允许通过
  • 则直接丢弃
  • Hybrid主要是通过允许列表来做决定的,所以Hybrid有非常独特的运用方式,可以做到Access和Trunk端口做不到的事情
  • Eg
  • 现有主机A、主机B和一台服务器
  • 主机A和主机B都可以访问服务器
  • 主机A发送一个Untagged数据到SWA,当SWA接收到数据帧会打上PVID并转发出去。SWB收到数据帧后剥离Tag并转发给服务器
  • 主机B同理
  • 主机A和主机B之间不可以互通
  • SWA中允许列表中
  • 主机A连接的端口不允许VLAN3通过
  • 主机B连接的端口不允许VLAN2通过
  • 主机A连接的端口和主机B连接的端口允许VLAN100通过
  • VLAN划分方法
  • 基于端口的VLAN换分方法在实际中最为常见
  • 实际中常用的方法
  • 基于端口
  • 划分VLAN最常用的方法
  • 基于MAC地址
  • 用于安全性比较高的场所
  • VLAN配置
  • 将端口划分到VLAN之前,要先创建VLAN。交换机需要多少个VLAN标签,就需要创建多少个VLAN
  • 创建VLAN的方法
  • 单独创建
  • Vlan 10
  • 批量创建
  • Vlan batch 2 to 3
  • 配置Access端口
  • 添加端口到VLAN
  • 1、改变端口类型
  • Port link-type access
  • HW设备默认端口类型为hybrid类型
  • 2、将端口划分到VLAN
  • 在VLAN中指定
  • Port G0/0/1
  • 在接口中指定
  • Port default vlan 3
  • 配置验证
  • 配置Trunk端口
  • 1、修改端口类型为trunk
  • Port link-type trunk
  • 2、配置允许列表
  • Port trunk allow-pass vlan 2 3
  • 配置验证
  • 配置Hybrid端口
  • 配置
  • 主机A和主机B都可以和服务器相通,而主机A和主机B不能互相通信
  • SWA
  • G0/0/1
  • 配置链路类型为Hybrid
  • 这一步可以省略,因为默认端口为hybrid
  • Port link-type hybrid
  • 配置允许列表
  • Port hybrid tagged vlan 2 3 100
  • Tagged
  • 表示发出数据帧方式为tagged
  • G0/0/2
  • 1、指定该端口所处哪个VLAN
  • Port hybrid pvid vlan 2
  • 2、设置能够通过的VLAN为2和100,发出数据帧的方式为untagged
  • Port hybrid untagged vlan 2 100
  • G0/0/3
  • 1、指定该端口所处哪个VLAN
  • Port hybrid pvid vlan 3
  • 2、设置能够通过的VLAN为3和100,发出数据帧的方式为untagged
  • Port hybrid untagged vlan 3 100
  • SWB
  • G0/0/1
  • 1、配置链路类型
  • Port link-type hybrid
  • 2、配置允许通过的VLAN
  • Port hybrid tagged vlan 2 3 100
  • G0/0/2
  • 1、指定该端口处于哪个VLAN
  • Port hybrid pvid vlan 100
  • 2、设置能够通过的VLAN为2、3、100,发出数据帧的方式为untagged
  • Port hybrid untagged vlan 2 3 100
  • 数据传输过程
  • SWB
  • 服务器发送该数据给主机A,首先到达G0/0/1接口,打上PVID100,然后到达G0/0/1,VLAN100在G0/0/1的允许列表中,发出的方式为TAG,所以发出一个带有TAG为100的数据帧
  • SWA
  • 到达G0/0/1,G0/0/1允许列表有100,所以接收。检测到G0/0/2和G0/0/3都允许100,两个端口都发出untagged
  • 主机
  • 主机A、主机B接收到数据帧后会查看IP地址
  • 目的IP地址匹配,则会接收
  • 目的IP地址不匹配,则会丢弃
  • 配置验证
  • Voice VLAN应用
  • 通过配置Voice VLAN可以区分语音流量和业务流量,使语音流量优于业务流量,从而为语音流量提供服务保证
  • 配置
  • 1、进入端口
  • 2、配置voice-vlan
  • Voice-vlan 2 enable
  • 3、将配置端口加入voice-vlan模式
  • Voice-vlan mode auto
  • 4、语音VLAN绑定方式通过MAC地址绑定
  • 配置验证
  • 总结
  • 如果一个Trunk链路PVID是5,切端口下配置port turnk allow-pass vlan 2 3,那么哪些VLAN的流量可以通过该Trunk链路进行传输?
  • VLAN1、VLAN2、VLAN3的流量可以通过该Trunk链路进行传输
  • PVID为2的Access端口收到一个不带标记的帧会采取什么样的动作?
  • Access端口收到一个不带标记的数据帧,会给该数据帧打上一个VLAN2的标签,然后交换机会根据标签和目的MAC地址将数据转换到相应的端口