一、vlan技术简介

1.广播风暴

  广播风暴(broadcast storm)简单的讲是指当广播数据充斥网络无法处理,并占用大量网络带宽,导致正常业务不能运行,甚至彻底瘫痪,这就发生了“广播风暴”。一个数据帧或包被传输到本地网段 (由广播域定义)上的每个节点就是广播;由于网络拓扑的设计和连接问题,或其他原因导致广播在网段内大量复制,传播数据帧,导致网络性能下降,甚至网络瘫痪,这就是广播风暴。

2.设备发出的广播帧在广播域中传播,占用网络带宽,降低设备性能。路由器能够隔离广播,减小广播域范围。

3.用vlan隔离广播:二层交换机使用vlan隔离广播,减小广播域范围。

4,vlan的优点

  1)有效控制广播域范围

  2)增强局域网的安全性

  3)灵活构建虚拟工作组

二、vlan类型

1,基于端口vlan

  以端口为单位,不同端口可以划分到不同的vlan,端口相互之间可以二层隔离,vlan之间只能通过三层路由通信。

2.基于Mac地址的vlan

  基于MAC地址的VLAN是通过查询并记录端口所连计算机上网卡的MAC地址来决定端口的所属.其可以根据每个端口所连的计算机,随时改变端口所属的VLAN,避免静态VLAN的频繁更改设定的操作,且由于计算机上网卡的MAC地址是全球唯一的,可以避免非法计算机的入侵登陆.结果表明,基于MAC地址划分的VLAN使得计算机不会因连接端口变化导致VLAN变化,增加了连接的灵活性;划分到特定VLAN的计算机只能访问相同VLAN的服务器,未被绑定MAC地址的计算机无法访问服务器,增强了计算机网络的安全性.

3.基于协议的vlan

基于协议划分VLAN是根据不同网络层协议(包括IPv4、IPX、AppleTalk等协议)进行的VLAN划分,不是根据具体类型的网络层地址进行VLAN划分。

4.基于子网的vlan

通过配置基于 IP 子网划分 VLAN,将指定网段或 IP 地址发出的报文在指定的 VLAN中传输,减轻了网络管理者的初始配置任务量,且有利于管理。

三、vlan技术原理

1.vlan标签(Tag vlan)

VLAN标签用来指示VLAN的成员,它封装在能够穿越局域网的帧里。这些标签在数据包进入VLAN的某一个交换机端口的时候被加上,在从VLAN 的另一个端口出去的时候被去除。根据VLAN 的端口类型会决定是给帧加入还是去除标签。VLAN 中的两类接口类型是指接入端口和骨干端口。

2.802,1Q帧格式

带有IEEE802,1Q标记的以太网帧

3.单交换机vlan标签操作

  1)不带vlan标签的以太网帧在进入交换机端口时,附加缺省vlan标签

  2)出交换机端口时,去掉vlan标签

4.Access链路类型端口

Access port 一般用于连接计算机的网络适配器,此类型的交换机端口仅能属于一个Vlan。
Access 端口接收报文的规则:
1) 收到tagged frame,直接丢弃
2) 收到untagged frame
首先进行802.1q封装,802.1Q VLAN ID 为此端口所属 VLAN,然后将此封装后的帧转发给此VLAN内的其他端口(这属于二层交换)
 
Access 端口发送报文的规则:
将802.1q帧进行解封,然后从端口发送出去

5.跨交换机vlan标签操作

  Tag vlan时基于交换机端口的另一种类型,主要用于实现跨交换机的相同vlan内主机之间可以直接访问,同时对于不同Vlan 的主机进行隔离。Tag vlan的接口进行数据传输时,需要在数据帧内添加4个字节的802.1q标签信息,用于标识该数据帧属于哪个vlan,以便对段交换机接受到的数据帧进行过滤。

6.trunk链路类型端口

Trunk port 一般用于交换机与交换机之间的连接,允许多个vlan通过,可以接收和发送多个vlan的数据帧,缺省vlan的以太网数据帧不带标签。
 
Trunk端口接收报文的规则:
1)收到tagged frame
首先判断此802.1q帧的VLAN ID是多少,然后判断trunk端口是否属于(允许)此VLAN,如果属于(允许)该VLAN,将此帧进行二层转发,否则直接丢弃。
2)收到untagged frame
首先进行802.1q封装,802.1Q VLAN ID   为此端口所属native VLAN,然后将此封装后的帧转发给此VLAN内的其他端口(这属于二层交换)
 
Trunk端口发送报文的规则:
分析要转发的802.1q 帧,判断其VLAN是否是native VLAN,如果是native VLAN.,则将此帧进行解封(去掉802.1q封装)后发出;如不是,则将则帧直接发出。

7.hybrid链路类型端口

Hybrid端口允许多个VLAN帧通过并且还可以指定哪些VLAN数据帧被剥离标签,主要实现高隔离度的波分和复用。Hybrid端口和Trunk端口在接收数据时,处理思路方法是一样的,唯一区别之处在于:

发送数据时,Hybrid端口具有解除多VLAN标签的功能,Hybrid端口可以允许多个VLAN的报文发送时不打标签,从而增加了网络的灵活性,在一定程度上也增加了安全性,而Trunk端口只允许缺省VLAN的报文发送时不打标签。

四、vlan的基本配置

1.vlan的基本配置

1)创建vlan并进入vlan视图

2)将指定端口加入到当前vlan中

2.配置trunk接口

1)配置端口的链路类型为trunk类型

2)允许指定的vlan通过当前trunk端口

3)设置trunk端口的缺省vlan

3.配置hybrid端口

1)配置端口的链路类型为hybrid类型

2)允许指定的vlan通过当前hybrid端口

3)设置hybrid端口的缺省vlan

4.vlan配置示例

5.vlan显示及维护

五、总结

1.vlan的作用是限制局域网中广播传送的范围

2.通过对以太网帧进行打标签操作,交换机区分不同vlan的数据帧

3.交换机的端口链路类型分为Access、Trunk和Hybrid.

第十二章 配置vlan的更多相关文章

  1. 《Linux命令行与shell脚本编程大全》 第二十二章 学习笔记

    第二十二章:使用其他shell 什么是dash shell Debian的dash shell是ash shell的直系后代,ash shell是Unix系统上原来地Bourne shell的简化版本 ...

  2. 《Android群英传》读书笔记 (5) 第十一章 搭建云端服务器 + 第十二章 Android 5.X新特性详解 + 第十三章 Android实例提高

    第十一章 搭建云端服务器 该章主要介绍了移动后端服务的概念以及Bmob的使用,比较简单,所以略过不总结. 第十三章 Android实例提高 该章主要介绍了拼图游戏和2048的小项目实例,主要是代码,所 ...

  3. 第十二章——SQLServer统计信息(1)——创建和更新统计信息

    原文:第十二章--SQLServer统计信息(1)--创建和更新统计信息 简介: 查询的统计信息: 目前为止,已经介绍了选择索引.维护索引.如果有合适的索引并实时更新统计信息,那么优化器会选择有用的索 ...

  4. 《Django By Example》第十二章 中文 翻译 (个人学习,渣翻)

    书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:第十二章,全书最后一章,终于到这章 ...

  5. 第二十二章 Django会话与表单验证

    第二十二章 Django会话与表单验证 第一课 模板回顾 1.基本操作 def func(req): return render(req,'index.html',{'val':[1,2,3...]} ...

  6. Gradle 1.12用户指南翻译——第五十二章. Maven 插件

    本文由CSDN博客貌似掉线翻译,其他章节的翻译请参见:http://blog.csdn.net/column/details/gradle-translation.html翻译项目请关注Github上 ...

  7. Gradle 1.12 翻译——第十二章 使用Gradle 图形用户界面

    有关其他已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或访问:http://gradledoc.qiniudn.com ...

  8. Android群英传笔记——第十二章:Android5.X 新特性详解,Material Design UI的新体验

    Android群英传笔记--第十二章:Android5.X 新特性详解,Material Design UI的新体验 第十一章为什么不写,因为我很早之前就已经写过了,有需要的可以去看 Android高 ...

  9. Gradle 1.12用户指南翻译——第二十二章. 标准的 Gradle 插件

    其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://g ...

随机推荐

  1. 漏洞扫描工具acunetix12会遇到的问题

    1.如果安装好之后,打开工具时显示无法访问,首先去看任务管理器当中,acunetix的服务是否启动了 2.如果忘记了账号密码,可以在安装目录下,双击ChangePassword.exe进行重置密码

  2. python中实现参数化的原理

    k就是   <参数名>

  3. mini logger for c++

    水平太菜,最近捣鼓这个 log,折腾了好一会.由于之前都是用 std::cout,不能满足同时输出到屏与文件的目的,故经过一番搜索,在stackoverflow 找到了答案,现总结如下: 头文件 lo ...

  4. [剑指Offer]57-和为s的数字

    题目一 输入一个递增的数组和一个数字,在数组中查找2个数字,是他们的和正好为S,如果有多对的和为S,则输出任意一对即可. 题解 关键信息是数组有序.初始化i,j指向第一个和第二个数,与S比较,若小了, ...

  5. 基于k8s的集群稳定架构

    前言 我司的集群时刻处于崩溃的边缘,通过近三个月的掌握,发现我司的集群不稳定的原因有以下几点: 1.发版流程不稳定 2.缺少监控平台[最重要的原因] 3.缺少日志系统 4.极度缺少有关操作文档 5.请 ...

  6. Python爬虫之反爬虫---使用随机User-Agent

    在编写爬虫时,大多数情况下,需要设置请求头.而在请求头中,随机更换User-Agent可以避免触发相应的反爬机制. 使用第三方库fake-useragent便可轻松生成随机User-Agent. 使用 ...

  7. gateway(二、过滤器)

    过滤器其实是路由转发+过滤器 自定义过滤器 首先创建一个类继承下边两个类,实现过滤器 然后在启动项中通过创建bean的方式创建路由器 @Componentpublic class TimeFilter ...

  8. Spring学习(三)--Spring的IOC

    1.BeanFactory和FactoryBean BeanFactory是一个接口类,定义了IOC容器最基本的形式,提供了IOC容器所应该遵守的基本服务契约. FactoryBean是一个能产生或者 ...

  9. newifi3-D2 openwrt挂载u盘扩容/overlay

    格式化U盘 1.openwrt安装插件 opkg install fdisk swap-utils kmod-usb-storage kmod-fs-ext4 e2fsprogs kmod-usb-o ...

  10. Java知识系统回顾整理01基础03变量07final关键字

    一.final赋值 final 修饰一个变量,有很多种说法,比如不能改变等等 准确的描述是 当一个变量被final修饰的时候,该变量只有一次赋值的机会 二.在声明的时候赋值 i已经被赋值为5,所以这里 ...