vlan协议及端口类型
一、VLAN协议
1、协议的应用
802.1Q协议,即Virtual Bridged Local Area Networks协议,主要规定了VLAN的实现。

2、协议结构
每一个支持802.1Q协议的主机,在发送数据包时,都在原来的以太网桢头中的源地址后增加了一个4字节的802.1Q桢头(TPID+TCI),之后接原来以太网的长度或类型域。

- TPID:值为8100,当Ethernet包头中的EtherType的值也为8100时,判断出下层协议也为VLAN(0x8100)
- User Priority:定义用户优先级,包括8个优先级别。主要用于当交换机阻塞时,优先发送哪个数据包。
- CFI:以太网交换机中,规范格式指示器总被设置为0。由于兼容特性,CFI 常用于以太网类网络和令牌环类网络之间,如果在以太网端口接收的帧具有 CFI,那么设置为1,表示该帧不进行转发,这是因为以太网端口是一个无标签端口。
- VLAN ID:这是一个12位的域,指明VLAN的ID,一共4096个(在4096可能的 VID 中,VID=0 用于识别帧优先级。 4095(FFF)作为预留值,所以 VLAN配置的最大可能值为4094),每个支持802.1Q协议的主机发送出来的数据包都会包含这个域,以指明自己属于哪一个VLAN。
二、VLAN交换机端口的三种链路类型
1、以太网端口有三种链路类型:access、trunk、hybird
- Access类型的端口只能属于1个VLAN,一般用于连接计算机的端口
- Trunk类型的端口可以允许多个VLAN通过,可以接收和发送多个VLAN的报文,一般用于交换机之间连接的端口
- Hybrid类型的端口可以允许多个VLAN通过,可以接收和发送多个VLAN的报文,可以用于交换机之间连接,也可以用于连接用户的计算机
Hybrid端口和Trunk端口在接收数据时,处理方法是一样的,唯一不同之处在于发送数据时:Hybrid端口可以允许多个VLAN的报文发送时不打标签,而Trunk端口只允许缺省VLAN的报文发送时不打标签。
2、缺省VLAN
Access端口只属于1个VLAN,所以它的缺省VLAN就是它所在的VLAN,不用设置;Hybrid端口和Trunk端口属于多个VLAN,所以需要设置缺省VLAN ID.缺省情况下,Hybrid端口和Trunk端口的缺省VLAN为VLAN 1;如果设置了端口的缺省VLAN ID,当端口接收到不带VLAN Tag的报文后,则将报文转发到属于缺省VLAN的端口;当端口发送带有VLAN Tag的报文时,如果该报文的VLAN ID与端口缺省的VLAN ID相同,则系统将去掉报文的VLAN Tag,然后再发送该报文。
注:对于华为交换机缺省VLAN被称为“Pvid Vlan”, 对于思科交换机缺省VLAN被称为“Native Vlan”
3、交换机接口出入数据处理过程
1)Acess端口收报文:收到一个报文,判断是否有VLAN信息:如果没有则打上端口的PVID,并进行交换转发,如果有则直接丢弃(缺省)
2)Acess端口发报文:将报文的VLAN信息剥离,直接发送出去
3)trunk端口收报文:收到一个报文,判断是否有VLAN信息:如果没有则打上端口的PVID,并进行交换转发,如果有判断该trunk端口是否允许该VLAN的数据进入:如果可以则转发,否则丢弃
4)trunk端口发报文:比较端口的PVID和将要发送报文的VLAN信息,如果两者相等则剥离VLAN信息,再发送,如果不相等则直接发送
5)hybrid端口收报文:收到一个报文,判断是否有VLAN信息,如果没有则打上端口的PVID,并进行交换转发,如果有则判断该hybrid端口是否允许该VLAN的数据进入;如果可以则转发,否则丢弃(此时端口上的untag配置是不用考虑的,untag配置只对发送报文时起作用)
6)hybrid端口发报文:1.判断该VLAN在本端口的属性(disp interface 即可看到该端口对哪些VLAN是untag, 哪些VLAN是tag);2.如果是untag则剥离VLAN信息,再发送,如果是tag则直接发送
注:在同一个三层交换机(或路由器)上建立几个VLAN,默认情况下,这些VLAN是互通的,如果不想让它通,必须要做ACL进行限制。
1. 在旧版的思科交换机上,必须要先运行ip routing,开启路由功能,然后在这个交换机上所有的VLAN间是可能互访的,这种路由叫直连路由!
2. 在新版的思科交换机上,默认就是开启路由功能的,只要正确配置了interface vlan 的IP(即SVI)地址就可以。
3. 在华为等一些厂家的设备也是默认开启的。如果想让他们不能互相访问,反而需要做ACL限制互访,和开放特定的访问。
vlan协议及端口类型的更多相关文章
- VLAN协议与三层交换机 (Access/Trubk/Hrbrid)
VLAN协议与三层交换机(Access/Trunk/Hybrid) 目录 一.VLAN概述 1.1.分割广播域 1.2.VLAN的优势 1.3.静态VLAN 二.Trunk的作用 2.1.概念 2.2 ...
- 对交换机VLAN及各种端口类型的理解
每学习一种技术时,我们往往需要去了解why,即这个技术是为解决什么问题而出现的. VLAN全称为Virtual Local Area Network,即虚拟局域网,是逻辑上的一种划分.一般来说,如果交 ...
- VLAN 及 GVRP 配置
一.VLAN配置 +进入vlan视图,如果指定的vlan没有创建则先创建它 [undo]vlan vlan_id undo vlan 剔除已创建的vlan VLAN_id:要进入的或要创建并进入的VL ...
- 第11章 拾遗3:虚拟局域网(VLAN)
1. 虚拟局域网(VLAN) (1)VLAN是建立在物理网络基础上的一种逻辑子网,它将把一个LAN划分成多个逻辑的局域网(VLAN),每个VLAN是一个广播域,VLAN内的主机间通信就和在一个LAN内 ...
- 简洁易懂说VLAN
简洁易懂说VLAN 1. VLAN概述 虚拟局域网(Virtual Local Area Network,VLAN),VLAN最主要的作用是分割局域网中广播域.传统交换机组成的LAN中,往往包含了成千 ...
- VLAN
VLAN VLAN技术要点主要有两点: 1.支持VLAN的交换机的内部交换原理: 2.设备之间(交换机之间,交换机与路由器之间,交换机与主机之间)交互时,VLAN TAG的添加和移除. VLAN通信 ...
- 云计算底层技术-虚拟网络设备(Bridge,VLAN)( 转发)
云计算底层技术-虚拟网络设备(Bridge,VLAN) Posted on September 24, 2017 by opengers in openstack openstack底层技术-各种虚拟 ...
- VLAN入门知识
版权声明: https://blog.csdn.net/xinyuan510214/article/details/52020987 本文乃fireaxe原创,使用GPL发布,可以自由拷贝,转载.但转 ...
- 复习下VLAN的知识
转载:来自百度百科 VLAN一般指虚拟局域网 VLAN(Virtual Local Area Network)的中文名为"虚拟局域网". 虚拟局域网(VLAN)是一组逻辑上的设备和 ...
随机推荐
- WPF实现炫酷Loading控件
Win8系统的Loading效果还是很不错的,网上也有人用CSS3等技术实现,研究了一下,并打算用WPF自定义一个Loading控件实现类似的效果,并可以让用户对Loading的颗粒(Particle ...
- JavaScript学习笔记-基础语法、类型、变量
基础语法.类型.变量 非数字值的判断方法:(因为Infinity和NaN他们不等于任何值,包括自身) 1.用x != x ,当x为NaN时才返回true; 2.用isNaN(x) ,当x为NaN或 ...
- AngularJS 学习之路(1)
AngularJS 是一个 JS 框架,适用于以数据操作为主的 SPA (Single Page Application)应用. 不再是 "先查找元素在操作元素",所有操作都以 & ...
- 世界城市 XML
下载地址:http://www.qlcoder.com/uploads/dd01140921/147988679320159.xml <Location> <CountryRegio ...
- 解决Visual Stuido 2013中Xamarin的*.axml文件没有智能提示问题
最近发现VS2013开发Android,发现.axml无法进行智能提示. 1.打开VS2013菜单栏中,点击工具--选项--文本编辑器--文件扩展名 2.增加一个扩展名为"axml" ...
- SPS中JSOM和SOAP 实现文件上传
一.HTML控件 <input type="file" id="upFile" style="width:300px;"/> & ...
- Double 数据保留两位小数二:直接截取小数后面两位,不进行四舍五入
package com; public class T2 { public static void main(String[] args) { System.out.println(calculate ...
- 【代码笔记】iOS-根据size截取屏幕中间矩形区域
代码: RootViewController.m #import "RootViewController.h" @interface RootViewController () @ ...
- The JSP specification requires that an attribute name is preceded by whitespace
一个jsp页面在本地运行一点问题没有,发布到服务器就报错了: The JSP specification requires that an attribute name is preceded by ...
- Spark:利用Eclipse构建Spark集成开发环境
前一篇文章“Apache Spark学习:将Spark部署到Hadoop 2.2.0上”介绍了如何使用Maven编译生成可直接运行在Hadoop 2.2.0上的Spark jar包,而本文则在此基础上 ...