抓包展示vlan报文(8021Q)

2023-05-16

VLAN数据帧格式

要使交换机能够分辨不同VLAN的报文,需要在报文中添加标识VLAN信息的字段。IEEE 802.1Q协议规定,在以太网数据帧的目的MAC地址和源MAC地址字段之后、协议类型字段之前加入4个字节的VLAN标签(又称VLAN Tag,简称Tag),用于标识数据帧所属的VLAN。VLAN标签在VLAN数据帧中的位置如下图1-1所示。

在一个VLAN交换网络中,以太网帧主要有以下两种形式:

  • 有标记帧(Tagged帧):加入了4字节VLAN标签的帧。

  • 无标记帧(Untagged帧):原始的、未加入4字节VLAN标签的帧。

以太网链路包括接入链路(Access Link)和干道链路(Trunk Link)。接入链路用于连接交换机和用户终端(如用户主机、服务器、傻瓜交换机等),只可以承载1个VLAN的数据帧。干道链路用于交换机间互连或连接交换机与路由器,可以承载多个不同VLAN的数据帧。在接入链路上传输的帧都是Untagged帧,在干道链路上传输的数据帧都是Tagged帧。

交换机内部处理的数据帧一律都是Tagged帧。从用户终端接收无标记帧后,交换机会为无标记帧添加VLAN标签,重新计算帧校验序列(FCS),然后通过干道链路发送帧;向用户终端发送帧前,交换机会去除VLAN标签,并通过接入链路向终端发送无标记帧。

字段

长度

含义

取值

TPID

2Byte

Tag Protocol Identifier(标签协议标识符),表示数据帧类型。

取值为0x8100时表示IEEE 802.1Q的VLAN数据帧。如果不支持802.1Q的设备收到这样的帧,会将其丢弃。

各设备厂商可以自定义该字段的值。当邻居设备将TPID值配置为非0x8100时, 为了能够识别这样的报文,实现互通,必须在本设备上修改TPID值,确保和邻居设备的TPID值配置一致。

PRI

3bit

Priority,表示数据帧的802.1p优先级。

取值范围为0~7,值越大优先级越高。当网络阻塞时,交换机优先发送优先级高的数据帧。

CFI

1bit

Canonical Format Indicator(标准格式指示位),表示MAC地址在不同的传输介质中是否以标准格式进行封装,用于兼容以太网和令牌环网。

CFI取值为0表示MAC地址以标准格式进行封装,为1表示以非标准格式封装。在以太网中,CFI的值为0。

VID

12bit

VLAN ID,表示该数据帧所属VLAN的编号。

VLAN ID取值范围是0~4095。由于0和4095为协议保留取值,所以VLAN ID的有效取值范围是1~4094。

在Linux上抓包展示

tcpdump直接查看

[secure@Michael ~]$ sudo tcpdump -i bond0 -e -v | grep vlan
tcpdump: listening on bond0, link-type EN10MB (Ethernet), capture size 262144 bytes
14:32:09.975521 e0:cc:7a:81:95:c4 (oui Unknown) > 00:50:56:ba:71:de (oui Unknown), ethertype 802.1Q (0x8100), length 214: vlan 150, p 0, ethertype IPv4, (tos 0x48, ttl 64, id 24489, offset 0, flags [DF], proto TCP (6), length 196)
14:32:09.975630 00:50:56:ba:71:de (oui Unknown) > e0:cc:7a:81:95:c5 (oui Unknown), ethertype 802.1Q (0x8100), length 70: vlan 150, p 0, ethertype IPv4, (tos 0x0, ttl 64, id 61228, offset 0, flags [DF], proto TCP (6), length 52)
...

WireShark查看

TPID

0x8100

PRI

CFI

上图往后数1位

VID

上图最后12位

注意

  • 交换机内部处理的数据帧一律都是Tagged帧

  • 服务器接口默认是无标记帧,但是接口可以配置为vlan口,接收和发送Tagged帧

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

抓包展示vlan报文(8021Q) 的相关文章

  • VLAN实验

    实验拓扑 实验配置 1 将接口划入vlan 2 配置路由器 xff0c 通过池塘下发地址 测试 pc2可以访问pc4 pc5 pc6 pc5不能访问pc6 pc1可以访问2 4 5 6
  • openwrt/lede配置单臂路由,centos7开启vlan支持,小记

    1 xff0c lede单臂路由配置 xff0c vi etc config network xff0c 添加如下内容 config switch vlan option device eth0 option vlan 0 option p
  • ovs测试vlan

    ovs端口默认是trunk模式 xff0c 且所有的VLAN tag都可以通过 单个网桥实现vlan隔离的场景 实验拓扑如下 xff1a 1 首先创建一个网桥ovs switch xff0c 在命名空间里创建两个接口p0和p1 分别分配地址
  • devstack安装OpenStack Pike版本 (OVN+VLAN)

    控制节点配置文件 Sample DevStack local conf This sample file is intended to be used for your typical DevStack environment that 3
  • ubuntu下配置vlan功能--官网vlan how to

    http ubuntuforums org showthread php t 61 703387 ubuntu官网介绍 802 1q VLAN HOWTO Doing 802 1q trunking to an Ethernet switc
  • Linux 网卡VLAN、BOND配置

    此篇是在转载博文上做修订 原文内容有些地方不妥当 Redhat Linux的网络配置 xff0c 基本上是通过修改几个配置文件来实现的 xff0c 虽然也可以用ifconfig来设置IP xff0c 用route来配置默认网关 xff0c
  • SONIC VLAN配置流程

    SONIC VLAN配置流程 sonic vlan配置通过订阅config db的键空间事件完成vlan配置信息从config db到内核和硬件 config db json格式如下 xff1a 34 VLAN 34 34 Vlan1000
  • 华为S5720-52X-PWR-LI/S5720-52X-LI交互机堆叠和VLAN配置

    主要配置流程为 xff1a 交换机设备上电通过console线或网线连接到交换机后 xff0c 进行参数和堆叠配置断电 xff0c 连接好光纤重新上电 1 首次登录交换机 使用Putty软件 xff0c 通过串口 xff0c 连接到交换机
  • Linux下如何配置Vlan

    VLAN是虚拟局域网的缩写 一个物理交换机上可以共存多个VLAN xff0c 这些交换机通过Linux软件配置 xff0c 而不是通过硬件接口 xff08 您仍然需要配置实际的硬件交换机 xff09 VLAN作为名称建议一次组合多个LAN
  • VLAN技术

    知识重点 认识VLAN VLAN简介 xff1a VLAN xff08 Virtual Local Area Network xff09 即虚拟局域网 xff0c 是将一个物理的LAN在逻辑上划分成多个广播域的通信技术 VLAN目的 xff
  • Linux虚拟化网络之vlan配置

    问题描述 Linux主机划分两个vlan 服务器server1的物理网卡的IP地址为1 1 1 1 24 服务器server2的物理网卡的IP地址为1 1 1 2 24 物理网卡下要虚拟化出来两个Vlan子接口 vlan10中主机的IP地址
  • 跨交换机的VLAN设置

    实现目标 xff1a 进行多台主机多个vlan接口进行互相通信 需要知识 xff1a 1 不同的vlan接口的是不能进行通信的 2 在要跨越多个交换机进行通信的时候要对进行交互的交换机进行共享vlan端口的设置 3 在设置网络号的时候应该注
  • VLAN是什么?划分VLAN的作用及方法

    http baijiahao baidu com s id 61 1585920106784824355 amp wfr 61 spider amp for 61 pc 有朋友提到了如何划分vlan xff0c 其实划分vlan是网络技术应
  • h3c vlan配置

    1 基于端口的VLAN配置命令 SWA vlan 10 创建VLAN SWA vlan10 port Ethernet1 0 1 向当前VLAN添加端口 SWA vlan 20 创建VLAN SWA vlan20 port Ethernet
  • h3c交换机端口加入vlan命令_h3c交换机划分vlan命令

    h3c交换机划分vlan命令 华三通信安全产品线专注于网络安全以及应用安全 xff0c 为用户提供融合网络和应用的产品与解决方案 yjbys小编收集了一些关于h3c交换机划分vlan命令 xff0c 希望大家认真阅读 一 基本设置 1 co
  • VLAN类型

    大家好呀 xff0c 我是请假君 xff0c 今天又来和大家一起学习数通了 xff0c 今天要分享的知识是VLAN类型 一 基于端口的VLAN xff1a 基于端口的VLAN是最简单 最有效的VLAN划分方法 xff0c 它按照设备端口来定
  • VLAN标签

    大家好呀 xff0c 我是请假君 xff0c 今天又来和大家一起学习数通了 xff0c 今天要分享的知识是VLAN标签 我们知道 xff0c 以太网交换机根据MAC地址表来转发数据帧 MAC地址表中包含了端口和端口所连接终端主机MAC地址的
  • 交换机VLAN的定义、意义以及划分方式

    什么是VLAN 虚拟网技术 xff08 VLAN xff0c Virtual Local Area Network xff09 的诞生主要源于广播 广播在网络中起着非常重要的作用 xff0c 如发现新设备 调整网络路径 IP地址租赁等等 x
  • 配置Dot1q终结子接口实现跨设备VLAN间通信示例

    示例图 一 实验目的 1 配置Dot1q终结子接口实现跨设备VLAN间通信示例 二 注意事项 1 Dot1q终结子接口和QinQ终结子接口不支持透传不带VLAN Tag的报文 收到不带VLAN Tag的报文会直接丢弃 2 由于三层以太网子接
  • ubuntu配置VLAN的方法

    目录 前言 一 VLAN是什么 二 Ubuntu如何配置VLAN IP 1 依赖安装 2 创建VLAN 总结 前言 在做someip相关开发的时候需要使用到VLAN 这里介绍如何在ubuntu上创建VLAN 一 VLAN是什么 VLAN V

随机推荐

  • fastjson byte[]转json字符串

    直接JSON toJSONString 会转为 base64字符串 可以使用JSON toJSON param toString 进行转换
  • SVN文件夹红色感叹号

    SVN文件夹红色感叹号 文件夹更新无最新文件 也没提交 解决方案 1右键 svn清理 2 提交 原因 有可能是svn上面有你之前提交的文件 而在你的本地目录里面删除了
  • jetson nano ubuntu 备份系统至u盘/移动硬盘

    jetson nano ubuntu备份系统至u盘 移动硬盘 1 df h 查看 信息2 挂载u盘2 1 fat322 2 ntfs2 3 挂载被占用 3 刷系统4 解除挂载 1 df h 查看 信息 一般都是 dev sda dev sd
  • 安装 cuda 从装系统开始

    勾选这个选项后就可以跳过安装驱动的环节了 设置root密码 sudo passwd root 安装openssh server 开xshell sudo apt get update sudo apt get install openssh
  • mac用完移动硬盘后 windows识别不出 解决方案

    cmd 运行 chkdsk F f
  • Cannot find reference ‘imread‘ in ‘__init__.py‘

    Cannot find reference imread in init py 前言 本人java开发 只是用python解决部分问题 可能解决方案不专业或者有问题 请自己判断 毕竟我只是简单处理下图片 解决方案 方案一 pip insta
  • RobotMaster资料汇总

    1 软件 xff1a 软件可以去网上下载 xff0c 或者去淘宝购买 xff0c 还包安装 不过基本上都是在虚拟机上操作 xff0c 只有在XP系统下可以直接安装 若是正版软件 xff0c 则会包含正确的安装教程 其中包括 xff1a MA
  • 代码改变生活-使用You-Get下载bilibili的视频【三】

    本文为博主原创 xff0c 未经许可严禁转载 本文链接 xff1a https blog csdn net zyooooxie article details 112167893 我自己都想不到 xff0c 这个分享做到了第三篇 xff0c
  • Python脚本之ZIP文件压缩、解压

    本文为博主原创 xff0c 未经许可严禁转载 本文链接 xff1a https blog csdn net zyooooxie article details 114632112 最近在翻看Python的官方文档 xff0c https d
  • 对文本和数据进行处理之awk编程

    转载地址 xff1a 点击打开链接 awk 是一种编程语言 xff0c 用于在Linux unix下对文本和数据进行处理 数据可以来自标准输入 stdin 一个或多个文件 xff0c 或其它命令的输出 它支持用户自定义函数和动态正则表达式等
  • Ubuntu20.04在vsCode配置opencv

    一 下载opencv xff1a https opencv org releases 我下载的为opencv4 5 4版本 xff0c 可以直接下载 zip文件 xff0c 可以选择其他版本 Sources版本即为 zip版本 xff1a
  • UISearchController使用中的几个坑和一个知识点

    坑1 点击搜索框后 xff0c 搜索框上移到屏幕之外了 不多说了 xff0c 都是坑 因为我之前设置了 UINavigationBar appearance 61 false 把这个去掉好了 坑2 搜索时搜索框和UITableview中间有
  • 深度学习环境搭建(四)之 CUDNN安装

    安装完CUDA Driver和CUDA后 xff0c 还需要安装CUDNN xff0c NVIDIA用于深度学习GPU加速的库 1 下载CUDNN 访问官网链接 xff0c 根据CUDA版本和Ubuntu版本选择CUDNN的版本 前面使用的
  • NMAP 六种端口状态解读

    NMAP 简介 nmap 是一款功能非常强大的扫描工具 xff0c 不仅能对端口扫描 xff0c 还可以在扫描中指定自定义的标志位 xff0c 对自己的 IP 地址进行隐藏伪装为别的 IP 地址 xff0c 还可以根据 nmap 数据库 x
  • IP ID idle 扫描

    IP ID idle 扫描简单介绍 在1998年的时候 xff0c 一个名叫 Antirez 的工程师 xff0c 发现了这种扫描技术 xff0c 攻击者可以通过不直接向目标主机发送报文的形式 xff0c 进行端口扫描 xff0c 而是通过
  • CentOS下编译Linux内核

    前言 编译内核是一项很简单的事情 xff0c 但却是进入Linux内核世界的第一步 xff0c 想要开发内核代码 xff0c 想要了解内核的运行机制 xff0c 第一步就是编译Linux内核 xff0c 以下是在centos7 5环境下编译
  • CentOS下快速升级gcc版本

    前言 很多时候由于gcc版本过低问题 xff0c 导致我们举步维艰 xff0c 从gcc官网下载源码编译又比较费时费力 xff0c 今天我就给大家分享一个快速升级gcc的方法 升级到gcc 6 3 xff1a devtoolset 6已经结
  • Linux带宽测试

    iperf是linux下一款非常实用的测带宽工具 xff0c 是C S模型的 xff0c 支持使用TCP和UDP测试 xff0c 可以测试带宽 xff0c 丢包 xff08 丢包指的是UDP的丢包 xff0c TCP丢包会重传 xff09
  • initramfs详解-----初识initramfs

    为什么需要initramfs 在Linux内核被加载到内存并运行后 xff0c 内核进程最终需要切换到用户太的进程来使用计算机 xff0c 而用户进程又存在于外存储设备上 xff0c 比如systemd进程 xff0c 通常systemd进
  • 抓包展示vlan报文(8021Q)

    VLAN数据帧格式 要使交换机能够分辨不同VLAN的报文 xff0c 需要在报文中添加标识VLAN信息的字段 IEEE 802 1Q协议规定 xff0c 在以太网数据帧的目的MAC地址和源MAC地址字段之后 协议类型字段之前加入4个字节的V