6.2、VLAN原理与配置
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帧
- 0x8100
- PRI
- 优先级
- 用于Qos,用于后期的优先级选取
- CFI
- 表示MAC是否是帧经典格式
- 0
- 代表经典格式
- 1
- 代表非经典格式
- 0
- 表示MAC是否是帧经典格式
- VLAN ID
- 一共有12个比特,表示VLAN ID的取值范围
- VLAN ID有十二个比特,即2^12=4096,但是并不是4096个都给我们进行使用
- 4096的取值范围是0~4095,实际用户能够使用的是1~4094
- 0和4095保留用于其他的用途
- VLAN ID有十二个比特,即2^12=4096,但是并不是4096个都给我们进行使用
- 一共有12个比特,表示VLAN ID的取值范围
- Type
- 类型
- Data
- 数据
- FCS
- 帧校验
- DMAC
- 帧结构
- 通过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的数据
- Untagged
- 当一个带TAG的数据传输到Access端口,会检查Access端口的PVID和数据的TAG是否一致
- 如果一致,则接收
- 如果不一致,则丢弃
- 该数据是Untagged,Access端口会为数据打上TAG,即PVID
- Access接收到数据帧以后,转发到主机
- 剥除VLAN的标签
- 因为主机只能处理不带标签的数据帧,所以Access端口在转发数据前会移除Vlan Tag
- 剥除VLAN的标签
- trunk
- Hybrid
- 华为独有
- Access
- 端口类型-Trunk
- Trunk端口是交换机和交换机之间的端口类型
- 当Trunk端口接收到帧时
- 如果该帧不包含Tag,将添加上端口的PVID
- 如果该帧包含Tag,查看接口的允许列表
- 如果允许接收,则直接接收
- 如果不允许,则丢弃
- 当Trunk端口发送帧时
- 该帧的VLAN ID在Trunk允许发送列表中
- 若与端口的PVID相同时,则剥离Tag发送
- 若与端口的PVID不同时,则直接发送
- 该帧的VLAN ID不在Trunk允许发送列表中
- 直接丢弃
- 该帧的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的帧,Hybrid端口则会为其打上PVID。然后查看允许列表
- 发送侧
- 允许列表中是否允许通过
- 如果允许通过,则查看其发送方式
- 手工配置发送方式
- 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通过
- SWA中允许列表中
- Eg
- 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
- 在VLAN中指定
- 配置验证
- 配置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
- 配置链路类型为Hybrid
- G0/0/2
- 1、指定该端口所处哪个VLAN
- Port hybrid pvid vlan 2
- 2、设置能够通过的VLAN为2和100,发出数据帧的方式为untagged
- Port hybrid untagged vlan 2 100
- 1、指定该端口所处哪个VLAN
- G0/0/3
- 1、指定该端口所处哪个VLAN
- Port hybrid pvid vlan 3
- 2、设置能够通过的VLAN为3和100,发出数据帧的方式为untagged
- Port hybrid untagged vlan 3 100
- 1、指定该端口所处哪个VLAN
- G0/0/1
- SWB
- G0/0/1
- 1、配置链路类型
- Port link-type hybrid
- 2、配置允许通过的VLAN
- Port hybrid tagged vlan 2 3 100
- 1、配置链路类型
- G0/0/2
- 1、指定该端口处于哪个VLAN
- Port hybrid pvid vlan 100
- 2、设置能够通过的VLAN为2、3、100,发出数据帧的方式为untagged
- Port hybrid untagged vlan 2 3 100
- 1、指定该端口处于哪个VLAN
- G0/0/1
- 数据传输过程
- 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地址不匹配,则会丢弃
- 主机A、主机B接收到数据帧后会查看IP地址
- SWB
- 配置验证
- 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地址将数据转换到相应的端口
- 如果一个Trunk链路PVID是5,切端口下配置port turnk allow-pass vlan 2 3,那么哪些VLAN的流量可以通过该Trunk链路进行传输?