在ARM上用wpa_cli连接wifi无线网络

普通wep加密方式可以使用

使用iwconfig命令:
搜索无线网 iwlist wlan0 scan
记下essid
连接无密码的无线网 iwconfig wlan0 essid ChinaNet 其中ChinaNet是搜索到的无线网essid
连接有密码的无线网 iwconfig wlan0 essid ChinaNet key xxxx 其中xxxx是密码
启用无线网卡 ifconfig wlan0 up
通过dhcp获取IP dhclient wlan0 或 dhcpcd wlan0

如果是WPA则需要用wpa_cli 连接无线网络

wpa_supplicant软件包中包含客户端程序 wpa_cli,通过它可以直接连接无线网络,不需要通常的无线网络配置文件的方式,这在某些特殊情况下是有用的。

下面通过一个例子来说明wpa_cli 的使用:
1、启动wpa_supplicant
以daemon方式启动wpa_supplicat:
wpa_supplicant -B -i wlan0 -D wext -c /etc/wpa_supplicant.conf
其中的wlan0为系统内的无线网卡的设备名。配置文件是/etc/wpa_supplicant.conf,其中不包含要连接的无线网络的配置信息。最简单的配置文件只包含一句配置语句即可:
ctrl_interface=/var/run/wpa_supplicant

2、启动wpa_cli
wpa_cli -i wlan0
如果系统内只有一个无线网卡,则-i wlan0参数可省略。程序启动后,进入交户操作状态,可接受用户的命令输入。下面的命令都是在这个交互操作模式下输入的。

3、增加网络,并设置网络参数
可以先用status命令查讯网络连接状态,应该返回
wpa_state=DISCONNECTED
用下面的命令增加网络,并设置相应的参数
add_network
该命令会返回新增加的网络的ID,一般是0 。下面的命令的第一个参数就是网络的ID。
set_network 0 ssid “wyk”
wyk是无线网络名称,要用引号围起来。
set_network 0 psk “password”
password代表网络的密码,也要用引号围起来。

有这两个网络参数一般就够了。

4、启用网络
enable_network 0
命令执行后,wpa_cli 会输出连接的过程信息。如果一切正确,则最后后输出:
<2>CTRL-EVENT-CONNECTED – Connection to xx:xx:xx:xx:xx:xx completed (reauth) [id=0 id_str=]

5、获取IP地址

quit
命令退出wpa_cli 。然后用
dhclient wlan0
命令获取IP地址。

Print Friendly, PDF & Email

发表评论