linux查看wifi信号命令_linux – 获取WIFI信号强度 – 寻求最佳方式(IOCTL,iwlist(iw)等)...
发布日期:2021-06-24 11:25:52 浏览次数:3 分类:技术文章

本文共 1249 字,大约阅读时间需要 4 分钟。

我想扫描从3 AP收到的信号强度.

如果每300毫秒(最长500毫秒)发生这种情况,我会很高兴.我在路由器上刷了OpenWRT.

我正在寻找一个很好的工具来做到这一点.

首先,我发现iwconfig有效,但只有我连接的网络.所以我使用了iwlist(我没有工作 – 也许我需要更新它?).你知道它的输出有多准确吗?我能相信吗?

之后,我遇到了IOCTL.它看起来非常强大*和专业.但是获得来自WIFI的信号强度的输出是否比iwlist / iw这样的简单方法更可靠?

*甚至太强大,因为我没有编译我用它编写的任何程序

解决方法:

如果要确定未连接的WLAN接入点的信号强度,则扫描是正确的方法.

根据无线卡的设计,扫描由无线网卡执行,驱动程序有很多或很少的“帮助”.有些卡(芯片组,更具体)有自己的处理器,并独立于主机运行自己的固件代码.另一方面,有“愚蠢”的卡片,主机上的驱动程序完成大部分工作.

在驱动程序和操作系统的其余部分之间,存在用于向驱动程序发送命令并以标准化方式读回信息的接口(API).在Linux中,至少有两种不同的API.较旧的名称为Wireless Extensions,较新的名称为cfg80211.通常,驱动程序仅支持其中一个API.大多数当前的驱动程序使用cfg80211,但可能仍有较旧的驱动程序仍在使用无线扩展.

对于这两个API中的每一个,都有一个用户空间工具(或工具系列)来使用它.对于无线扩展,有iwconfig(和iwlist,iwpriv等).对于cfg80211,只有iw.

因此,有关正确工具的问题取决于无线驱动程序使用的API.为了增加混淆;-),cfg80211进行一些仿真,允许您对使用较新的cfg80211 API的驱动程序执行一些无线扩展调用.

关于ioctl()的问题:这是Unix操作系统中用户空间和内核空间之间通信的通用方法.旧的Wireless Extensions API使用ioctl().较新的cfg80211 API不使用基于ioctl()的接口,而是使用nl80211.

总结一下:是否使用iw / cfg80211 / nl80211或iwconfig / Wireless Extensions / ioctl取决于驱动程序或无线网卡.

关于你想要的扫描间隔,我会说300毫秒相当短.这是因为对于有用的扫描,客户端需要在短时间内离开其当前频道,切换到另一个频道并收听来自该频道上其他接入点的信号.由于离开其信道中断通信,因此这些非信道时间通常保持较短并且不经常进行.

打电话给我< dev> scan或iwlist< dev>扫描分别不一定会导致新的扫描,但可能会返回旧的(缓存的)访问点列表.根据您的无线卡/驱动程序,可能(im)可以强制执行新的扫描.

标签:ioctl,linux,wifi,ssid,iwconfig

来源: https://codeday.me/bug/20190722/1506307.html

转载地址:https://blog.csdn.net/weixin_32497403/article/details/112928189 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:npm 不重启 全局安装后_解决修复npm安装全局模块权限的问题
下一篇:千层浪软件下载_千层浪app聚合

发表评论

最新留言

不错!
[***.144.177.141]2024年04月14日 13时33分56秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

【亲测可用】用Electron和electron-builder打包Vue项目为exe可执行文件安装包(不推荐,个人觉得没有VNISEdit和NW好用,而且有些配置文件还挺脑残!) 2019-04-28
【敏捷开发】Node.js(nodejs)实现一个接口完成增删改查聚合接口4个功能,最大限度节省接口数量,正所谓“一口多用”(基础版、免登陆、无鉴权) 2019-04-28
【最简洁】一句CSS3代码实现不规则自定义背景图拼接样式,多用于异形弹窗背景图 2019-04-28
【全网之最】全网最短代码——给名字、电话、账号、昵称加星号*添加隐私保护、身份证号加密、信息脱敏 2019-04-28
【强势来袭!】Node.js(nodejs)实现“一口多用”(含用户创建、登录、鉴权token),一个文件搞定所有常态化需求! 2019-04-28
【亲测可用】经验分享,开发在线考试平台(类似问卷星、考试星、阿里巴巴在线考试、易考通、考试云、移动网大、移动网校、中石化网络学院、宝武微学院、iTEST等)如何用程序代码防止学生作弊? 2019-04-28
The Singular Secret of the Rockstar Programmer 2019-04-28
码流 / 码率 / 比特率 / 帧速率 / 分辨率 / 高清的区别 2019-04-28
Windows7下SVN下载安装 2019-04-28
视频数据处理:解压H.264视频成YUV源文件 2019-04-28
Node.js是新的黑魔法 2019-04-28
Docker新手入门 2019-04-28
Faster-RCNN代码+理论——1 2019-04-28
Faster-RCNN代码+理论——2 2019-04-28
Python Numpy Tutorial——CS231n 2019-04-28
视频编码基础之I帧 、P帧、B帧 2019-04-28
Wget (Linux File Downloader)使用详解 2019-04-28
基于C++实现带parser功能的计算器 2019-04-28
The Meltdown bug and the KPTI patch: How does it impact ML performance? 2019-04-28
关于Django中修改js css文件但浏览器无法及时与之改变的问题 2019-04-28