wpa_cli调试工具的使用
1: run wpa_supplicant first
use the following command:
wpa_supplicant -Dwext -iwlan0 -C/data/system/wpa_supplicant -c/data/misc/wifi/wpa_supplicant.conf
(use “ps”to make sure wpa_supplicant is running )
2: Run the command line tool wpa_cli to connect wifi
wpa_cli -p/data/system/wpa_supplicant -iwlan0
Then , it will let you set network interactively
some common command:
>scan = to scan the neighboring AP
>scan_results = show the scan results
>status = check out the current connection information
>terminate = terminate wpa_supplicant
>quit = exit wpa_cli
>add_network = it will return a network id to you
>set_network <network id> <variable> <value> = set network variables (shows
list of variables when run without arguments), success will return OK, or will return Fail
>select_network <network id> = select a network (disable others)
>disable_network <network id> = disable a network
>enable_network <network id> = enable a network
3: example
for AP that doesn`t have encryption
>add_network (It will display a network id for you, assume it returns 0)
>set_network 0 ssid “666”
>set_network 0 key_mgmt NONE
>enable_network 0
>quit
if normal, we have connectted to the AP “666”, now you need a IP to access internet, for example:
dhcpcd wlan0
if everything is ok, it will get an IP & can access internet
for AP that has WEP
>add_network (assume returns 1)
>set_network 1 ssid “666”
>set_network 1 key_mgmt NONE
>set_network 1 wep_key0 “your ap passwork”(if usting ASCII, it need double quotation marks, if using hex, then don`t need the double quotation marks)
>set_network 1 wep_tx_keyidx 0
>select_network 1 (optional, remember, if you are connecting with another AP, you should select it to disable the another)
>enable_network 1
and then ,get an IP to access internet
for AP that has WPA-PSK/WPA2-PSK
>add_network (assume returns 2)
>set_network 2 ssid “666”
>set_network 2 psk “your pre-shared key”
>select_network 2 (optional, remember, if you are connecting with another AP, you should select it to disable the another)
>enable_network 2
there is still some others options to be set, but wpa_supplicant will choose the default for you, the default will include all we need to set
and then ,get an IP to access internet
for Hidden AP(补充)
原则上应该只要在上面的基础上去set_network netid scan_ssid 1即可,测试过无加密的Hidden AP,WEP/WPA/WPA2应该道理一样
实例操作:
连接成功后的状态
root@Ultrasonic:/usr/local/bin# iwconfig wlan0
wlan0 IEEE 802.11bgn ESSID:"uslab_testing" Nickname:"<WIFI@REALTEK>"
Mode:Managed Frequency:2.432 GHz Access Point: 84:C9:B2:88:0C:F2
Bit Rate:300 Mb/s Sensitivity:0/0
Retry:off RTS thr:off Fragment thr:off
Encryption key:****-****-****-****-****-****-****-**** Security mode:open
Power Management:off
Link Quality=98/100 Signal level=98/100 Noise level=0/100
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
root@Ultrasonic:/usr/local/bin# wpa_cli
wpa_cli v0.7.3
Copyright (c) 2004-2010, Jouni Malinen <j@w1.fi> and contributors
This program is free software. You can distribute it and/or modify it
under the terms of the GNU General Public License version 2.
Alternatively, this software may be distributed under the terms of the
BSD license. See README and COPYING for more details.
Selected interface 'wlan0'
Interactive mode
> scan_results
bssid / frequency / signal level / flags / ssid
84:c9:b2:88:0c:f2 2432 94 [WPA-PSK-TKIP+CCMP][WPA2-PSK-TKIP+CCMP][ESS] uslab_testing
> status
bssid=84:c9:b2:88:0c:f2
ssid=uslab_testing
id=0
mode=station
pairwise_cipher=CCMP
group_cipher=TKIP
key_mgmt=WPA2-PSK
wpa_state=COMPLETED
ip_address=192.168.0.101
>
连接过程
root@Ultrasonic:/usr/local/bin# wpa_supplicant -B -iwlan0 -Dwext -c /usr/local/etc/wpa_supplicant.conf
+871x_drv - drv_open, bup=0
===> FirmwareDownload91C() fw:Rtl819XFwImageArray_TSMC
fw_ver=v75, fw_subver=0, sig=0x88c0
fw download ok!
Set RF Chip ID to RF_6052 and RF type to 2.
GPIO_IN=09
eRfPowerStateToSet=0
IQK:Start!!!
Path A IQK Success!!
Path B IQK Success!!
Path A IQK Success!!
Path B IQK Success!!
IQK: final_candidate is 0
IQK: RegE94=101 RegE9C=2 RegEA4=fa RegEAC=3 RegEB4=101 RegEBC=7 RegEC4=fd RegECC=7
Path A IQ Calibration Success !
Path B IQ Calibration Success !
pdmpriv->TxPowerTrackControl = 1
MAC Address from REG_MACID = 84:c9:b2:7d:64:2d
MAC Address = 84:c9:b2:7d:64:2d
-871x_drv - drv_open, bup=1
[rtw_wx_set_pmkid] IW_PMKSA_FLUSH!
set_mode = IW_MODE_INFRA
ioctl[SIOCSIWAP]: Operation not permitted
[rtw_wx_set_pmkid] IW_PMKSA_FLUSH!
root@Ultrasonic:/usr/local/bin# wpa_cli
wpa_cli v0.7.3
Copyright (c) 2004-2010, Jouni Malinen <j@w1.fi> and contributors
This program is free software. You can distribute it and/or modify it
under the terms of the GNU General Public License version 2.
Alternatively, this software may be distributed under the terms of the
BSD license. See README and COPYING for more details.
Selected interface 'wlan0'
Interactive mode
> scan
OK
> survey done event(19)
<2>CTRL-EVENT-BSS-ADDED 0 84:c9:b2:88:0c:f2
<2>CTRL-EVENT-BSS-ADDED 1 02:e0:42:cb:c7:79
<2>CTRL-EVENT-SCAN-RESULTS
> scan_results
bssid / frequency / signal level / flags / ssid
84:c9:b2:88:0c:f2 2432 88 [WPA-PSK-TKIP+CCMP][WPA2-PSK-TKIP+CCMP][ESS] uslab_testing
02:e0:42:cb:c7:79 2457 42 [WEP][IBSS] ____13__1
>
> add_network
0
>
> set_network 0 ssid "uslab_testing"
OK
>
> set_network 0 key_mgmt WPA-PSK
OK
>
> set_network 0 psk "12345678"
OK
>
> enable_network 0
OK
> survey done event(19)
wpa_set_auth_algs, AUTH_ALG_OPEN_SYSTEM
set_mode = IW_MODE_INFRA
wpa_ie(length:22):
0x30 0x14 0x01 0x00 0x00 0x0f 0xac 0x02
0x01 0x00 0x00 0x0f 0xac 0x04 0x01 0x00
0x00 0x0f 0xac 0x02 0x00 0x00 0x78 0xff
=>rtw_wx_set_essid
ssid=uslab_testing, len=13
new candidate: uslab_testing(84:c9:b2:88:0c:f2) rssi:-54
rtw_select_and_join_from_scanned_queue: candidate: uslab_testing(84:c9:b2:88:0c:f2)
#### Opt_Ant_(B) , cur_Ant(B)
rtw_restructure_ht_ie IEEE80211_HT_CAP_MAX_AMSDU is set
<=rtw_wx_set_essid
link to new AP
<2>CTRL-EVENT-SCAN-RESULTS
<2>Trying to associate with 84:c9:b2:88:0c:f2 (SSID='uslab_testing' freq=2432 MHz)
> link to Realtek 96B
OnAuthClient
OnAssocRsp
report_join_res(1)
HW_VAR_BASIC_RATE: BrateCfg(0x15d)
WMM(0): 0, a42b
WMM(1): 0, a44f
WMM(2): 0, 5e4322
WMM(3): 0, 2f3222
HTOnAssocRsp
~~~~stastakey:unicastkey
~~~~stastakey:groupkey
==> rtw_set_key algorithm(2),keyid(1),key_mask(2)
update raid entry, mask=0xfffffff, arg=0xa0
rtl8192c_set_FwJoinBssReport_cmd mstatus(1)
SetFwRsvdPagePkt
Set RSVD page location to Fw.
=>mlmeext_joinbss_event_callback
<2>Associated with 84:c9:b2:88:0c:f2
<2>WPA: Key negotiation completed with 84:c9:b2:88:0c:f2 [PTK=CCMP GTK=TKIP]
<2>CTRL-EVENT-CONNECTED - Connection to 84:c9:b2:88:0c:f2 completed (auth) [id=0 id_str=]
> save
OK
> status
bssid=84:c9:b2:88:0c:f2
ssid=uslab_testing
id=0
mode=station
pairwise_cipher=CCMP
group_cipher=TKIP
key_mgmt=WPA2-PSK
wpa_state=COMPLETED
ip_address=192.168.0.101
>
> quit
root@Ultrasonic:/usr/local/bin# udhcpc -i wlan0
udhcpc (v0.9.9-pre) started
Sending discover...
OnAction_back
OnAction_back, action=0
issue_action_BA, category=3, action=1, status=0
Sending select for 192.168.0.101...
Lease of 192.168.0.101 obtained, lease time 86400
adding dns 192.168.0.101
adding dns 192.168.0.102
root@Ultrasonic:/usr/local/bin#
root@Ultrasonic:/usr/local/bin# iwconfig wlan0
wlan0 IEEE 802.11bgn ESSID:"uslab_testing" Nickname:"<WIFI@REALTEK>"
Mode:Managed Frequency:2.432 GHz Access Point: 84:C9:B2:88:0C:F2
Bit Rate:300 Mb/s Sensitivity:0/0
Retry:off RTS thr:off Fragment thr:off
Encryption key:****-****-****-****-****-****-****-**** Security mode:open
Power Management:off
Link Quality=100/100 Signal level=100/100 Noise level=0/100
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
root@Ultrasonic:/usr/local/bin# ./wpa_cli
wpa_cli v0.7.3
Copyright (c) 2004-2010, Jouni Malinen <j@w1.fi> and contributors
This program is free software. You can distribute it and/or modify it
under the terms of the GNU General Public License version 2.
Alternatively, this software may be distributed under the terms of the
BSD license. See README and COPYING for more details.
Selected interface 'wlan0'
Interactive mode
> disable_network 0
OK
<2>CTRL-EVENT-DISCONNECTED bssid=00:00:00:00:00:00 reason=0
> rtl8192c_set_FwJoinBssReport_cmd mstatus(0)
<2>CTRL-EVENT-BSS-REMOVED 0 84:c9:b2:88:0c:f2
> status
wpa_state=DISCONNECTED
ip_address=192.168.0.101
> terminate
OK
> (2)871x_drv - drv_close, bup=1, hw_init_completed=1
-871x_drv - drv_close, bup=1
rtl8192c_set_FwJoinBssReport_cmd mstatus(0)
'PING' command failed.
Connection to wpa_supplicant lost - trying to reconnect
> quit
root@Ultrasonic:/usr/local/bin# ps
PID Uid VmSize Stat Command
1 root 528 S init [3]
2 root SW< [kthreadd]
3 root SW< [ksoftirqd/0]
4 root SW< [events/0]
5 root SW< [khelper]
57 root SW< [kblockd/0]
63 root SW< [ksuspend_usbd]
68 root SW< [khubd]
71 root SW< [kseriod]
77 root SW< [kmmcd]
104 root SW [pdflush]
105 root SW [pdflush]
106 root SW< [kswapd0]
107 root SW< [aio/0]
215 root SW< [kapmd]
262 root SW< [mtdblockd]
332 root SW< [w1_control]
346 root SW< [rpciod/0]
424 root 388 S < /sbin/udevd --daemon
445 root 584 S /sbin/syslogd -n -C 64 -m 20
447 root 564 S /sbin/klogd -n
470 root 928 S -sh
478 root SW [RTKTHREAD]
485 root 764 R ps
root@Ultrasonic:/usr/local/bin#
wpa_cli调试工具的使用的更多相关文章
- wifi详解(一)
1 WLAN技术 WLAN是英文WirelessLAN的缩写,就是无线局域网的意思.无线以太网技术是一种基于无线传输的局域网技术,与有线网络技术相比,具有灵活.建网迅速.个人化等特点.将 ...
- 发布:.NET开发人员必备的可视化调试工具(你值的拥有)
1:如何使用 1:点击下载:.NET可视化调试工具 (更新于2016-12-29 19:11:00) (终于彻底兼容了部分VS环境下无法使用的问题) 2:解压RAR后执行:CYQ.VisualierS ...
- 自定义可视化调试工具(Microsoft.VisualStudio.DebuggerVisualizers)
前言: 最近飞机失联的太多,明天要飞北京处理服务器双机热备的问题,航空保险已买,单号是:TF10122913. 至于我的银行卡密码,在我枕头下面的字条里,要是我之后没再更新文章,请通知我家人,哈哈哈哈 ...
- 微信小程序开发调试工具
为了帮助开发者简单和高效地开发微信小程序,我们推出了全新的 开发者工具 ,集成了开发调试.代码编辑及程序发布等功能. 扫码登录 启动工具时,开发者需要使用已在后台绑定成功的微信号扫描二维码登录,后续所 ...
- iOS 调试工具
仪表 xcode5 引入了调试仪表,通过仪表可以直观的看出应用的CPU和内存占用量.运行一个程序,点击仪表栏.可以发现当程序处于运行状态时,调试导航面板会以柱状图显示CPU和内存占用量,并随着应用实 ...
- 在php中使用strace、gdb、tcpdump调试工具
[转] http://www.syyong.com/php/Using-strace-GDB-and-tcpdump-debugging-tools-in-PHP.html 在php中我们最常使用调试 ...
- API调试工具推荐 - httpie
API调试工具推荐 - httpie <HelloGitHub>第07期上面看到这个python项目,好东西 文档地址 但是安装的时候报错,google之后发现是个已知的bug,直接使用p ...
- 排名前 8 的 PHP 调试工具
Web 开发并不是一项轻松的任务,有超级多服务端脚本语言提供给开发者,但是当前 PHP 因为具有额外的一些强大的功能而越来越流行.PHP 是最强大的服务端脚本语言之一,同时也是 web 开发者和设计者 ...
- (转).NET开发人员必备的可视化调试工具(你值的拥有)
1:如何使用 1:点击下载:.NET可视化调试工具 (更新于2016-11-05 20:55:00) 2:解压RAR后执行:CYQ.VisualierSetup.exe 成功后关掉提示窗口即可. PS ...
随机推荐
- abs(INT_MAX-(-1))
写一个程序,结果总是不对,check逻辑好几遍也没发现错误,无奈之下debug.发现一个有趣的现象abs(INT_MAX-(-1))返回值是-2147483648.于是看了下abs函数的代码实现. i ...
- Linux查看随机启动服务
Liunx操作系统跟Windos XP一样,有一批系统服务随机而启动:略懂电脑的Windows XP用户会禁止那些不必要的服务,以提高开机速度:如今安装了Ubuntu操作系统,咱们也有必要了解Ubun ...
- Android 程序运行之后,禁止休眠
在程序中添加 // 禁止休眠功能 getWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON, WindowManager. ...
- asp.net中runat="server"的含义
aspx运行时会被编译,其中没有runat server属性的html标签会被直接写入response,有runat server属性的html标签会转换成对应的HtmlControl子类加入 到页面 ...
- 【Apache运维基础(1)】Apache的安装与使用
安装 yum -y install httpd httpd-devel # 在Ubuntu里面叫做Apache2,输入localhost能打开就算成功了 额...当然专业的运维还是老老实实的去编译吧; ...
- window下安装composer and yii2
我的环境是集合包xampp 1,下载composer:下载地址https://getcomposer.org/download/, 点击蓝色字体“Composer-Setup.exe” 2,安装com ...
- sizeof 和strlen的区别
1. 编译时计算运算符sizeof,可用类型或变量做参数,计算占用内存的大小.sizeof后若是类型必须加括弧,若是变量名可不加括弧.sizeof(x)可用来定义数组维数.如:printf(" ...
- C# 使用ManualResetEvent 进行线程同步
上一篇我们介绍了AutoResetEvent,这一篇我们来看下ManualResetEvent ,顾名思义ManualResetEvent 为手动重置事件. AutoResetEvent和Manua ...
- POJ 水题若干
POJ 3176 Cow Bowling 链接: http://poj.org/problem?id=3176 这道题可以算是dp入门吧.可以用一个二维数组从下向上来搜索从而得到最大值. 优化之后可以 ...
- linux中proc文件系统 -- ldd3读书笔记
1./proc 文件系统概述 /proc 文件系统是由软件创建,被内核用来向外界报告信息的一个文件系统./proc 下面的每一个文件都和一个内核函数相关联,当文件的被读取时,与之对应的内核函数用于产生 ...