Trunk 口  思科称为:native VLAN  华为称为:PVID   说白了就是Trunk端口本身所属的VLAN,因为,Trunk端口要"透传"多个VLAN的流量,其本身不属于任何一个VLAN。但是Trunk端口在交换机内部要与一个VLAN ID关联,此VLAN ID就是 思科的:native VLAN  华为的:PVID。

Trunk口的native VLAN 是不带标签通过的。到对端后会打上对端端口响应的native VLAN标签。如果两端native VLAN不一致就会发生VLAN跳跃问题(VLAN hopping)!
思科有CDP 思科发现协议(Cisco Discovery Protocol)若两端的trunk端口native VLAN 配置不一致会发出相关告警。
 
 
由于802.1Q规范并没有禁止多个连贯的标记(tag)串连起来。事实上QinQ技术也正是利用这一点缓解了单层VLAN4096个的限制。提供了4096*4096中可能的组合较好扩展了分配给每个VLAN ID的12比特的限制。   但是这一特性也成为了一下攻击的基础。
 
    双嵌套(double-nested)VLAN攻击
          注意:仅当Trunk口的native VLAN 与攻击者所在端口的VLAN ID 一致且分别属于用Trunk口互联的两台交换机下时,攻击才会生效。
 
                攻击者<--->交换机1<--->交换机2<--->受害者
 
         利用的就是Trunk口的native VLAN 是不带标签通过的。到对端后会打上对端端口响应的native VLAN标签。的特性。
         1、在攻击者发出以太网帧时就带上2个tag。外层tag与攻击者接入端口的tag一致。内层tag与受害者所在VLAN一致。
         2、当该攻击帧进入交换机1后通过交换机1~2之间的Trunk 口时由于与Trunk口nativeVLAN一致所以剥离外层的tag标签 此时攻击帧还剩下一层与受害者VLAN相同的内层标签。
         3、当交换机2Trunk端口收到攻击帧后发现攻击帧VLAN与受害者VLAN相同 按照该VLAN转发。  至此完成了跨越VLAN的攻击。
 
         在协议立场上看,并没有违规事件——讲802.1Q的帧头部串接起来并不违法。
          有三种方法可以来组织该攻击:
         1、确保不将native VLAN分配给任何访问端口。
 
         2、从Trunk中清除native VLAN(不建议使用)。
 
         3、强制Trunk上的所有流量都携带一个tag(首选的方法)。 警告:当与不支持该方法的交换机互相通信时native VLAN上的通信会中断!
              配置:不同版本可以在全局或端口下配置
                  全局 CiscoSwitch(config)#vlan dot1q tag native
                  端口 CiscoSwitch(config)#interface GigabitEthernet2/1
                         CiscoSwitch(config-if)#switchport trunk native vlan tag
 
       此外就是一些针对VLAN透传相关协议的攻击
 
       动态中继协议DTP,是 VLAN 组中思科的私有协议,主要用于协商两台设备间链路上的中继过程及中继封装 802.1Q 类型。DTP的用途是取代动态ISL(Dynamic ISL,DISL)。
        针对性的在连接普通用户的LAN口配置成access端口并将它们植入一个static(静态)VLAN.这样该端口会静默的丢弃DTP帧。
 
 
 
 
 

另外 阅读华为的文档时  基于MAC 基于子网 基于策略等VLAN划分都有如下描述:

  • 当收到的报文为untagged报文时,会以报文的源MAC地址为根据去匹配MAC-VLAN表项。如果匹配成功,则按照匹配到的VLAN ID和优先级进行转发;如果匹配失败,则按其它匹配原则进行匹配。

  • 当收到的报文为tagged报文时,处理方式和基于接口的VLAN一样:如果接口允许携带该VLAN标记的报文通过,则正常转发;如果不允许,则丢弃该报文。
     
    若使用软件自行打上tag则可以不需要基于MAC 基于子网 基于策略匹配 可骗过交换机。(我推测的)所以....还是老老实实的做基于端口的VLAN划分吧
     

交换机安全学习笔记 第四章 VLAN的更多相关文章

  1. [Python学习笔记][第四章Python字符串]

    2016/1/28学习内容 第四章 Python字符串与正则表达式之字符串 编码规则 UTF-8 以1个字节表示英语字符(兼容ASCII),以3个字节表示中文及其他语言,UTF-8对全世界所有国家需要 ...

  2. o'Reill的SVG精髓(第二版)学习笔记——第四章

    第四章:基本形状 4.1线段 SVG可以使用<line>元素画出一条直线段.使用时只需要指定线段起止点的x和y坐标即可.指定坐标时可以不带单位,此时会使用用户坐标,也可以带上单位,如em. ...

  3. 交换机安全学习笔记 第五章 DHCP缺陷攻击

    关于DHCP攻击有如下几类攻击方式:   一.耗尽DHCP地址池    通过随机生成源MAC地址,然后伪造DHCPDISCOVER数据包.耗尽DHCP服务器地址池.   免费的攻击工具:  Yersi ...

  4. Java 学习笔记 ------第四章 认识对象

    本章学习目标: 区分基本类型与类类型 了解对象与参考的关系 从打包器认识对象 以对象观点看待数组 认识字符串的特性 一."=" 和 "==" 当=用于基本类型时 ...

  5. 《metasploit渗透测试魔鬼训练营》学习笔记第四章—web应用渗透

    继续来学习metasploit...记好笔记是很重要的,下面开始正文: 二.WEB应用渗透技术     1.WEB应用渗透基础知识        先介绍WEB应用攻击的主要类型(大致介绍,具体请自行查 ...

  6. 交换机安全学习笔记 第六章 IPV4 ARP攻击

    ARP欺骗攻击 常用工具:  dsniff(Linux/windows).ettercap(Linux/windows).cain(仅windows). ARP欺骗攻击的目的是嗅探发往某主机的所有IP ...

  7. c语言学习笔记第四章——字符串和格式化输入、输出

    B站有视频演示 本章学习printf函数的输入输出,字符串的定义与实用. 字符串 字符串(character string)是一个或多个字符的序列,如下所示: "Zing went the ...

  8. [core java学习笔记][第四章对象与类]

    4.3 用户自定义类 4.3.1 类数组的声明 需要两次new Employee[]=staff=new Employedd[3]; staff[0]=new Employedd(参数列表); sta ...

  9. The Road to learn React书籍学习笔记(第四章)

    高级React组件 本章将重点介绍高级 React 组件的实现.我们将了解什么是高阶组件以及如何实现它们.此外,我们还将深入探讨 React 中更高级的主题,并用它实现复杂的交互功能. 引用 DOM ...

随机推荐

  1. PHP大文件上传断点续传解决方案

    1.使用PHP的创始人 Rasmus Lerdorf 写的APC扩展模块来实现(http://pecl.php.net/package/apc) APC实现方法: 安装APC,参照官方文档安装,可以使 ...

  2. CF 354 D 迷宫与门的旋转 BFS +状态压缩 一定要回头看看

    D. Theseus and labyrinth time limit per test 3 seconds memory limit per test 256 megabytes input sta ...

  3. Misha and Permutations Summation

    A - Misha and Permutations Summation 首先这个 mod n! 因为数量级上的差别最多只会对康拓展开的第一项起作用所以这个题并不需要把 ord (p) 和 ord ( ...

  4. sqli-labs(45)

    基于报错的password处的')闭合注入 就是没有报错信息 payload和43关一样的构造

  5. “fatal error: hdf5.h: 没有那个文件或目录”解决方法

    問題一: Installing Caffe without CUDA: fatal error: cublas_v2.h No such file: 在Makefile.config中修改,將CPU_ ...

  6. javaInt占几个字节

    javaInt占几个字节 一个字节等于8位:1 byte = 8 bit. 在java中的中文和英文字母都是采用Unicode编码来表示的,一个Unicode编码为16位,1个字节是8位,所以1个Un ...

  7. [论文理解] CBAM: Convolutional Block Attention Module

    CBAM: Convolutional Block Attention Module 简介 本文利用attention机制,使得针对网络有了更好的特征表示,这种结构通过支路学习到通道间关系的权重和像素 ...

  8. DAY 3模拟赛

    DAY3 钟皓曦来了! T1 网址压缩 [问题描述] 你是能看到第一题的 friends 呢.           ——hja 众所周知,小葱同学擅长计算,尤其擅长计算组合数,但这个题和组合数没什么关 ...

  9. IDEA全局配置

    进入全局设置界面: 取消每次启动IDEA就默认打开上一次最后关闭的项目 编译器代码字体设置: 控制台字体大小和颜色设置 同一个文件代码里面的各个不同方法之间显示分割线 代码自动提示不区分大小写 格式化 ...

  10. linux_Ubuntu相对路径和绝对路径

    绝对路径 从/目录开始描述的路径为绝对路径,如: cd /home ls /usr 相对路径 从当前位置开始描述的路径为相对路径,如: cd ../../ ls abc/def .和.. 每个目录下都 ...