wifi数据包解析_解析WiFi数据包(libpcap)

wifi数据包解析_解析WiFi数据包(libpcap)我一直在努力使OpenWRT路由器将WiFi探测器请求发送到MySQL数据库(它存储每个探测请求数据包的MAC地址和RSSI信息以及其他路由器特定的数据).在对libpcap进行了大量的研究之后,我已经能够拼凑一个基本的小程序,只需使用过滤器表达式(‘wlansubtypeprobe-req’)在监视器界面(mon0)上嗅探数据包,然后打印出原始数据包在十六进制.使用libpcap上可以在线获…

大家好,又见面了,我是你们的朋友全栈君。

我一直在努力使OpenWRT路由器将WiFi探测器请求发送到

MySQL数据库(它存储每个探测请求数据包的MAC地址和RSSI信息以及其他路由器特定的数据).

在对libpcap进行了大量的研究之后,我已经能够拼凑一个基本的小程序,只需使用过滤器表达式(‘wlan subtype probe-req’)在监视器界面(mon0)上嗅探数据包,然后打印出原始数据包在十六进制.使用libpcap上可以在线获得的信息,这部分是相当简单的.

现在这里是我被困:我如何解析WiFi包来检索我正在寻找的信息(RSSI和源MAC地址)?

要清楚,我不是要求代码来做(尽管我不会抱怨,如果你想提供一些:D).我只是在寻找一些指导,了解哪个字节是哪一个 – WiFi包路线图,如果你愿意的话.

有一些很好的教程,用于解析来自以太网的数据包,但是我无法找到任何帮助解析与WiFi有关的标题的东西.我认为这将是一个非常简单的过程 – 只需抓取RSSI和源MAC的相关字节 – 但是,再次,我还没有找到任何关于哪个字节的文档.

我知道这已经完成了,但我会说实话:在查看tcpdump的源代码时,我完全迷失了.

那么,有没有人知道如何解析WiFi数据包的好资源?

干杯

编辑:更具体答案

RSSI在RadioTap头文件中(在Linux上).将RSSI从数据包中拉出是非常简单的,使用radiotap-parser.c及其所依赖的文件(在与我链接的文件相同的目录中找到).如果任何人在使用radiootap-parser.c功能时遇到问题,请随时联系.

由于radiootap标头结构包含无线电标头(it_len)的长度,它是可变的,因此通过无线电功能放大器取出源MAC地址变得非常容易.由于我只解析具有固定长度的检测请求(检出17-17001),只是指向指向数据包的指针it_len 10(源MAC地址在MAC帧开始后的10个字节开始,其开始于无线电波头的末端).从该指针开始的6个字节是802.11帧中的addr2(再次参见第17页here).

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/162470.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月21日 下午8:36
下一篇 2022年7月21日 下午8:36


相关推荐

  • python二维列表转置

    python二维列表转置python 二维列表转置 deftranspose self matrix new matrix foriinrange len matrix 0 matrix1 forjinrange len matrix matrix1 a

    2025年10月8日
    7
  • 报错415怎么解决_服务器请求415

    报错415怎么解决_服务器请求415415错误

    2025年6月19日
    4
  • 【编译原理】LL(1)语法分析器

    【编译原理】LL(1)语法分析器1 项目要求文法要求 1 从文件读入 每条产生式占用一行 2 文法为 LL 1 文法从文件中读入文法 从键盘上输入待分析的符号串 采用 LL 1 分析算法判断该符号串是否为该文法的句子 2 实验思路 首先实现集合 FIRST X 构造算法和集合 FOLLOW A 构造算法 再根据 FIRST 和 FOLLOW 集合构造出预测分析表 并对指定的句子打印出分析栈的分析过程 判断是否为该文法的句子 3 实验原理 1

    2026年3月19日
    2
  • MQTT再学习 — 搭建MQTT服务器及测试「建议收藏」

    MQTT再学习 — 搭建MQTT服务器及测试「建议收藏」如需转载请注明出处:https://blog.csdn.net/qq_29350001/article/details/76680646最近在搞PM2.5采集,需要用到MQTT传输协议。协议部分看了几天的,讲的七七八八。本身在intel上有写好的MQTT的源码,现在的工作其实也就是移植到单片机上或者DM368板卡上。不过,对于之前没有接触过的我来说,还是从头开始,搭建服务器及测…

    2022年6月9日
    49
  • Python 列表和元组的区别是什么?

    Python 列表和元组的区别是什么?列表 VS 元组一个 Python 初学者的普遍疑问 列表与元组的区别是什么 答案是 它们之间有两点不同 并且二者之间有着复杂的相互作用 它们分别是 技术上 的差异和 文化上 的差异 首先 有一点是相同的 列表与元组都是容器 是一系列的对象 Python nbsp 1 2 3 4 5 6 gt gt gt

    2026年3月18日
    2
  • 黑盒测试 因果图_黑盒测试的六种方法

    黑盒测试 因果图_黑盒测试的六种方法在一个功能模块中往往含有许多的功能模块,如果单独去测试每一个模块则会显得事倍功半,并且逻辑也会比较混乱,容易遗漏一些数据。因果图法是一个比较有用的方法,其考虑到了输入数据之间以及输入与输出之间的各种关系。一、下面首先介绍因果图中的基本符号 1、恒等含义:若原因出现则结果也出现,原因不出现,结果也不出现。即:如a=1.则b=1; a=0,则b=0。2、非(~)含

    2026年4月17日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号