博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用wpa_supplicant测试 WIFI 驱动模块——RTL8188CUS
阅读量:4160 次
发布时间:2019-05-26

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

Wpa_supplicant是linux系统下一个非常强大的无线网卡管理程序。

目前可以使用wireless-tools 或wpa_supplicant工具来配置无线网络。请记住重要的一点是,对无线网络的配置是全局性的,而非针对具体的接口。

    wpa_supplicant是一个较好的选择,但缺点是它不支持所有的驱动。请浏览wpa_supplicant网站获得它所支持的驱动列表。另外,wpa_supplicant目前只能连接到那些你已经配置好ESSID的无线网络,它可以让您连接到那些使用WPA的AP。wireless-tools支持几乎所有的无线网卡和驱动,但它不能连接到那些只支持WPA的AP。

关于WPA:

WPA是WiFi Protected Access的缩写,中文含义为“WiFi网络安全存取”。WPA是一种基于标准的可互操作的WLAN安全性增强解决方案,可大大增强现有以及未来无线局域网络的数据保护和访问控制水平。

wpa_supplicant是一个开源项目,已经被移植到Linux,Windows以及很多嵌入式系统上。它是WPA的应用层认证客户端,负责完成认证相关的登录、加密等工作。
wpa_supplicant是一个 独立运行的 守护进程,其核心是一个消息循环,在消息循环中处理WPA状态机、控制命令、驱动事件、配置信息等。

经过编译后 的 wpa_supplicant源程序可以看到两个主要的可执行工具:wpa_supplicant 和 wpa_cli。wpa_supplicant是核心程序,它和wpa_cli的关系就是服务和客户端的关系:后台运行wpa_supplicant,使用 wpa_cli来搜索、设置、和连接网络。

 

准备工作:移植wpa_supplicant测试程序至arm开发板

     根据源码,编译出驱动8192cu.ko.

 

配置文件/etc/wpa_supplicant.config分析:

复制代码

ctrl_interface=/var/run/wpa_supplicant#ap_scan=2network={       ssid="your_ssid"       proto=WPA2 WPA       key_mgmt=WPA-PSK       pairwise=CCMP TKIP       group=CCMP TKIP       psk=your_psk}

复制代码

ssid 即 无线网络名称,

psk 是 经过wps_passphrase运算后得到的string,

proto 和 pairwise 均可通过你连接的无线网络确定。

 

psk得到方式

#wpa_passphrase ssid名 密码 >> /etc/wpa_supplicant.conf

 

之后/etc/wpa_supplicant.conf就会多了这样的内容

network={      ssid="your_ssid"      #psk="1234567890"      psk=4b2bc7cbb3710e9ea43f09e8d57e8bdb3b2a2127af44960d73216c3612f6baba}

用这个psk替换掉上面的psk.

运行

#ifconfig wlan0 up#wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf -B

 

也可以加入 -dd 选项观察debug信息,加入 -D 指定driver,如 -Dwext.

我在调试过程出现了ioctl[SIOCSIWAP]: Operation not permitted,加入-dd选项并没有发现异常,先忽略该问题。

再运行

#udhcpc -i wlan0

 

即可获取ip.

 

成功后运行#iwconfig wlan0 截图如下:

 

测试:

  可通过nfs搭载文件系统,传送一些文件观察是否有断开和速度等等。

 

其他有用的命令:

Scaning AP and See Results#wpa_cli -p /var/run/wpa_supplicant scan#wpa_cli -p /var/run/wpa_supplicant scan_result

 

转载地址:http://bqdxi.baihongyu.com/

你可能感兴趣的文章
HTTP Live Streaming直播(iOS直播)技术分析与实现
查看>>
Ribbon界面图标可以直接用PNG做透明图标
查看>>
向其他软件窗口、控件发送消息的方法
查看>>
word或者pdf文件全部保存为图片的方法
查看>>
VS2010下SQLite3生成lib库文件
查看>>
sqlite3的helloworld
查看>>
MFC下支持中文的SQLite3封装类使用
查看>>
简单高效的多线程日志类
查看>>
研华USB4711A采集卡高速中断模式采集总结
查看>>
从零起步CMFCToolBar用法详解
查看>>
CMFCRibbonStatusBar用法
查看>>
CMFCControlRendererInfo类的参数
查看>>
史上最详细MFC调用mapX5.02.26步骤(附地图测试GST文件)
查看>>
CMFCShellListCtrl使用方法
查看>>
mapnik的demo运行
查看>>
python支持下的mapnik安装
查看>>
milvus手册
查看>>
查看pytorch基于cuda 的哪个版本
查看>>
多目标跟踪的简单理解
查看>>
Near-Online Multi-target Tracking with Aggregated Local Flow Descriptor
查看>>