超全!华为交换机端口vlan详解~
关注「开源Linux」,选择“设为星标”
回复「学习」,有我为您特别筛选的学习资料~
华为交换机和其他品牌的交换机在端口的vlan划分上有一些区别,今天就和大家详细说说华为交换机的端口vlan属性~
按照IEEE802.1Q标准,vlan帧的格式如下:
此处的Tag就是vlan tag,即我们常说的vlan标签。
具体含义如下:
①TPID为固定值0x8100,表明加了一个vlan标签
②PRI为优先级,0~7
③CFI,取0表示为规范格式,取1表示非规范格式
④vlan ID为vlan号,取值范围1-4094
首先提一个概念,即PVID(Port Vlan ID),这是端口的一个基本属性,可手动设置,默认值为1。其次,所有的以太网帧在交换机中进行处理的时候,都是按照上图格式来进行处理的,即帧都是带了vlan tag的。
华为交换机的端口有三种模式,分别是access,trunk,hybrid。
access
1、access端口接收帧时:
①如果接收的帧有vlan tag时,该帧的vlan ID和access端口的PVID相同时,将改帧送入交换机;该帧的vlan ID和access端口的PVID不同时,丢弃帧。
②如果接收的帧没有vlan tag时,access端口会将该帧打上vlan tag,vlan ID即为本端口的PVID,送入交换机。
2、access端口发送帧时:
access端口只能发送vlan ID和端口PVID相同的帧,发送出去时会剥掉vlan tag。
例子:
[Huawei-GigabitEthernet0/0/3]port link-type access
[Huawei-GigabitEthernet0/0/3]port default vlan 10
此时该端口为access端口,PVID为10。
该端口只能发送vlan ID为10的帧,发送出来的帧没有vlan tag。
该端口可以接收vlan ID为10的帧(如交换机传出的帧);也可以接收没有vlan tag的帧(如PC传出的帧),此帧将打上vlan tag(vlan ID=10)传入交换机。
trunk
1、trunk端口接收帧时:
①接收没有vlan tag的帧,trunk端口将帧打上vlan tag,vlan ID和本端口的PVID相同,若该PVID在trunk端口的放行vlan中,送入交换机,若PVID不在trunk端口的放行vlan中,丢弃该帧。
②接收有vlan tag的帧,若帧的vlan ID在trunk端口的放行vlan中,送入交换机,若vlan ID不在trunk端口的放行vlan中,丢弃该帧。
2、trunk端口发送帧时:
trunk端口只能发送放行vlan中的帧,若该帧的vlan ID和trunk的PVID相同,则剥掉vlan tag发送;若该帧的vlan ID和trunk的PVID不同,则保留原有vlan tag发送。
例子:
[Huawei-GigabitEthernet0/0/4]port link-type trunk
[Huawei-GigabitEthernet0/0/4]port trunk pvid vlan 5
[Huawei-GigabitEthernet0/0/4]port trunk allow-pass vlan 10 20 30
此时该端口为trunk端口,PVID为5,放行vlan为10,20,30。
该端口可以发送vlan ID为10,20,30的帧时,发送出去的帧是有vlan tag的。
该端口可以接收vlan ID为10,20,30的帧。
[Huawei-GigabitEthernet0/0/5]port link-type trunk
[Huawei-GigabitEthernet0/0/5]port trunk pvid vlan 5
[Huawei-GigabitEthernet0/0/5]port trunk allow-pass vlan 5 10 20 30
此时该端口为trunk端口,PVID为5,放行vlan为5,10,20,30。
该端口可以发送vlan ID,5,10,20,30的帧,发送vlan ID为10、20、30的帧时,帧是有vlan tag的;发送vlan ID为5的帧,帧是没有vlan tag的。
该端口可以接收vlan ID为5,10,20,30的帧,也可以接收没有vlan tag的帧。
hybrid
1、hybrid端口接收帧时:
①接收没有vlan tag的帧,hybrid端口将帧打上vlan tag,vlan ID和本端口的PVID相同,若该PVID在hybrid端口的放行vlan中,送入交换机,若PVID不在hybrid端口的放行vlan中,丢弃该帧。
②接收有vlan tag的帧,若帧的vlan ID在hybrid端口的放行vlan中,送入交换机,若vlan ID不在hybrid端口的放行vlan中,丢弃该帧。
2、hybrid端口发送帧时:
hybrid端口只能发送放行vlan中的帧,可以通过命令来控制发送时是否携带vlan tag。
例子:
[Huawei-GigabitEthernet0/0/6]port hybrid pvid vlan 10
[Huawei-GigabitEthernet0/0/6]port hybrid tagged vlan 10 20 30
[Huawei-GigabitEthernet0/0/6]port hybrid untagged vlan 100 200 300
此端口为hybrid端口,PVID为10,放行的vlan有10、20、30、100、200、300。
端口接收帧时同trunk是一样。
端口发送帧时,vlan ID为10、20、30的帧是有vlan tag的;vlan ID为100、200、300的帧是没有vlan tag的。
关注「开源Linux」加星标,提升IT技能
超全!华为交换机端口vlan详解~的更多相关文章
- 交换机之vlan详解
一.为什么需要VLAN 1.1.什么是VLAN? VLAN(Virtual LAN),翻译成中文是"虚拟局域网".LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算 ...
- 图文并茂VLAN详解,让你看一遍就理解VLAN
一.为什么需要VLAN 1.1.什么是VLAN? VLAN(Virtual LAN),翻译成中文是“虚拟局域网”.LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成的企业网络.V ...
- CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-总目录
CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-总目录: 0.Windows 10本机下载Xshell,以方便往Linux主机上上传大文件 1.CentOS7+CDH5.14.0安 ...
- SSH远程登录和端口转发详解
SSH远程登录和端口转发详解 介绍 SSH 是创建在应用层和传输层基础上的安全协议,为计算机上的 Shell(壳层)提供安全的传输和使用环境. SSH 只是协议,有多种实现方式,本文基于其开源实 ...
- 史上最全web.xml配置文件元素详解
一.web.xml配置文件常用元素及其意义预览 <web-app> <!--定义了WEB应用的名字--> <display-name></display-na ...
- 完成端口(CompletionPort)详解
手把手叫你玩转网络编程系列之三 完成端口(Completion Port)详解 ...
- EtherChannel Cisco 端口聚合详解
冗余连接及其实现 无论什么设备都无法保障运行的绝对稳定性,即使再优秀的产品也无法保证24×7不间断的工作.除去设备或模块损坏.传输线路中断等硬件故障原因以外,还可能由于网络流量过载.任务负荷过大而导致 ...
- 完成端口IOCP详解
修改自: http://blog.csdn.net/piggyxp/article/details/6922277 ps: 原作者很厉害了, 把一个iocp模型讲解的这么形象,不过在实践过程中发现一些 ...
- CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-8CDH5安装和集群配置
Cloudera Manager Server和Agent都启动以后,就可以进行CDH5的安装配置了. 准备文件 从 http://archive.cloudera.com/cdh5/par ...
随机推荐
- JavaScript ajax返回状态
该内容转自CSDN:http://blog.csdn.net/u013381651/article/details/51261956 xmlhttp.readyState的值及解释: 0:请求未初始化 ...
- 静态嵌套类(Static Nested Class)和内部类(Inner Class) 的不同?
Static Nested Class 是被声明为静态(static)的内部类,它可以不依赖于外部类 实例被实例化.而通常的内部类需要在外部类实例化后才能实例化,其语法看起 来挺诡异的,如下所示. / ...
- Java 中你怎样唤醒一个阻塞的线程?
在 Java 发展史上曾经使用 suspend().resume()方法对于线程进行阻塞唤醒,但 随之出现很多问题,比较典型的还是死锁问题. 解决方案可以使用以对象为目标的阻塞,即利用 Object ...
- 什么是不可变对象(immutable object)?Java 中怎么 创建一个不可变对象?
不可变对象指对象一旦被创建,状态就不能再改变.任何修改都会创建一个新的对象,如 String.Integer 及其它包装类. 详情参见答案,一步一步指导你在 Java中创建一个不可变的类.
- 什么是通知(Advice)?
特定 JoinPoint 处的 Aspect 所采取的动作称为 Advice.Spring AOP 使用一 个 Advice 作为拦截器,在 JoinPoint "周围"维护一系列 ...
- Spring系列28:@Transactional事务源码分析
本文内容 @Transactional事务使用 @EnableTransactionManagement 详解 @Transactional事务属性的解析 TransactionInterceptor ...
- 原来 flexbox 是这么工作的
Flexbox 是一种 CSS 布局机制,可以说是目前浏览器原生支持的最好.使用最广泛的布局机制了.本文通过一些例子来说明 Flexbox 布局的工作原理,可以让我们更好的使用 Flexbox. 与 ...
- 一个用于学习的react项目
React-element 根据开源项目 vue-sell进行的开发,将其改造成了react的项目.在开始学习vue的时候就是用的这个项目,发现效果不错,所以在学习React也使用了此项目. 目的:将 ...
- JavaScript 工作原理之六-WebAssembly 对比 JavaScript 及其使用场景
原文请查阅这里,略有改动,本文采用知识共享署名 4.0 国际许可协议共享,BY Troland. 本系列持续更新中,Github 地址请查阅这里. 这是 JavaScript 工作原理的第六章. 现在 ...
- 假期任务一:安装好JAVA开发环境并且在Eclipse上面成功运行HelloWorld程序
(本周主要做了java环境的安装,安装完jdk后又安装了eclipse,平均每天两小时Java吧,这周敲代码的时间比较少,大多是在b站看java入门视频和菜鸟教程的基础语法,也就打开eclipse验证 ...