关注「开源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详解~的更多相关文章

  1. 交换机之vlan详解

    一.为什么需要VLAN 1.1.什么是VLAN? VLAN(Virtual LAN),翻译成中文是"虚拟局域网".LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算 ...

  2. 图文并茂VLAN详解,让你看一遍就理解VLAN

    一.为什么需要VLAN 1.1.什么是VLAN? VLAN(Virtual LAN),翻译成中文是“虚拟局域网”.LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成的企业网络.V ...

  3. CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-总目录

    CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-总目录: 0.Windows 10本机下载Xshell,以方便往Linux主机上上传大文件 1.CentOS7+CDH5.14.0安 ...

  4. SSH远程登录和端口转发详解

     SSH远程登录和端口转发详解   介绍 SSH 是创建在应用层和传输层基础上的安全协议,为计算机上的 Shell(壳层)提供安全的传输和使用环境. SSH 只是协议,有多种实现方式,本文基于其开源实 ...

  5. 史上最全web.xml配置文件元素详解

    一.web.xml配置文件常用元素及其意义预览 <web-app> <!--定义了WEB应用的名字--> <display-name></display-na ...

  6. 完成端口(CompletionPort)详解

    手把手叫你玩转网络编程系列之三    完成端口(Completion Port)详解                                                           ...

  7. EtherChannel Cisco 端口聚合详解

    冗余连接及其实现 无论什么设备都无法保障运行的绝对稳定性,即使再优秀的产品也无法保证24×7不间断的工作.除去设备或模块损坏.传输线路中断等硬件故障原因以外,还可能由于网络流量过载.任务负荷过大而导致 ...

  8. 完成端口IOCP详解

    修改自: http://blog.csdn.net/piggyxp/article/details/6922277 ps: 原作者很厉害了, 把一个iocp模型讲解的这么形象,不过在实践过程中发现一些 ...

  9. CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-8CDH5安装和集群配置

    Cloudera Manager Server和Agent都启动以后,就可以进行CDH5的安装配置了.      准备文件 从 http://archive.cloudera.com/cdh5/par ...

随机推荐

  1. JavaScript ajax返回状态

    该内容转自CSDN:http://blog.csdn.net/u013381651/article/details/51261956 xmlhttp.readyState的值及解释: 0:请求未初始化 ...

  2. 静态嵌套类(Static Nested Class)和内部类(Inner Class) 的不同?

    Static Nested Class 是被声明为静态(static)的内部类,它可以不依赖于外部类 实例被实例化.而通常的内部类需要在外部类实例化后才能实例化,其语法看起 来挺诡异的,如下所示. / ...

  3. Java 中你怎样唤醒一个阻塞的线程?

    在 Java 发展史上曾经使用 suspend().resume()方法对于线程进行阻塞唤醒,但 随之出现很多问题,比较典型的还是死锁问题. 解决方案可以使用以对象为目标的阻塞,即利用 Object ...

  4. 什么是不可变对象(immutable object)?Java 中怎么 创建一个不可变对象?

    不可变对象指对象一旦被创建,状态就不能再改变.任何修改都会创建一个新的对象,如 String.Integer 及其它包装类. 详情参见答案,一步一步指导你在 Java中创建一个不可变的类.

  5. 什么是通知(Advice)?

    特定 JoinPoint 处的 Aspect 所采取的动作称为 Advice.Spring AOP 使用一 个 Advice 作为拦截器,在 JoinPoint "周围"维护一系列 ...

  6. Spring系列28:@Transactional事务源码分析

    本文内容 @Transactional事务使用 @EnableTransactionManagement 详解 @Transactional事务属性的解析 TransactionInterceptor ...

  7. 原来 flexbox 是这么工作的

    Flexbox 是一种 CSS 布局机制,可以说是目前浏览器原生支持的最好.使用最广泛的布局机制了.本文通过一些例子来说明 Flexbox 布局的工作原理,可以让我们更好的使用 Flexbox. 与 ...

  8. 一个用于学习的react项目

    React-element 根据开源项目 vue-sell进行的开发,将其改造成了react的项目.在开始学习vue的时候就是用的这个项目,发现效果不错,所以在学习React也使用了此项目. 目的:将 ...

  9. JavaScript 工作原理之六-WebAssembly 对比 JavaScript 及其使用场景

    原文请查阅这里,略有改动,本文采用知识共享署名 4.0 国际许可协议共享,BY Troland. 本系列持续更新中,Github 地址请查阅这里. 这是 JavaScript 工作原理的第六章. 现在 ...

  10. 假期任务一:安装好JAVA开发环境并且在Eclipse上面成功运行HelloWorld程序

    (本周主要做了java环境的安装,安装完jdk后又安装了eclipse,平均每天两小时Java吧,这周敲代码的时间比较少,大多是在b站看java入门视频和菜鸟教程的基础语法,也就打开eclipse验证 ...