一、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. python基本数据类型和循环、判断

    一.语言分为2种: 编译型语言:写完代码不能执行,得先编译 c.c++.c#,速度相对解释性语言更快,因为只需要执行一次解释型语言:不需要编译,直接执行 python.java.php.js.go.r ...

  2. oracle之dblink

    当用户要跨本地Oracle数据库,访问另外一个数据库表中的数据时,本地数据库中必须创建了远程数据库的dblink,通过dblink本地数据库可以像访问本地数据库一样访问远程数据库表中的数据.下面讲介绍 ...

  3. 图灵机器人api的使用方法含微信版本和网页版

    访问图灵机器人官网http://www.tuling123.com/ 注册一个新的机器人账号 注册成功后转到主页 点击我的机器人>创建机器人>微信机器人 填写基本信息 点击微信介入> ...

  4. SpringBoot中使用切面的每次传的参数,进行解析,验签,并返回解码后的参数

    目的,在每次请求的时候,对每次传的参数,进行解析,验签,并返回解码后的参数, 以json传递: 例子背景: IOT平台提供对外可访问的接口, 需要对所有参数的传递做到 不泄露.认证的目的:所以需要在每 ...

  5. js-正则表达式的初步应用(一)

    一.正则表达式是使用单个字符串来描述.匹配一系列符合某个句法规则的字符串搜索模式.注:搜索模式也可用于文本替换 例子1 输出结果  注:(我为了方便在控制台输出,所以结果如下) 例子2 输出结果 上面 ...

  6. 纯java代码在控制台运算电话本(不使用数据库)

    分享学习 Task_08 package cn.rzpt; import java.util.List; import java.util.Scanner; public class Task_08 ...

  7. 集群数据ID生成之美团叶子生成

    转自https://tech.meituan.com/2017/04/21/mt-leaf.html 在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识.如在美团点评的金融.支付.餐饮.酒店. ...

  8. MybatisPlus根据模板生成器代码

    导读 网上的代码生成器,都不是自己想要的,今天下午研究了下,可以使用mybatisplus自定义模板,根据模板生成相应的代码,可以根据需求,改造相应模板即可.代码已上传github/百度云. 项目结构 ...

  9. dubbo学习(二)配置dubbo XML方式配置

    provider(生产者) <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dubbo= ...

  10. 前端性能测试工具之PageSpeed Insights

    谷歌开发的一个免费的网页分析工具,在地址栏中输入被分析的网站 url 地址,点击分析 地址:https://developers.google.cn/speed/pagespeed/insights/ ...