Chinaunix首页 | 论坛 | 博客
  • 博客访问: 336669
  • 博文数量: 64
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 589
  • 用 户 组: 普通用户
  • 注册时间: 2012-11-08 15:50
文章分类

全部博文(64)

文章存档

2015年(52)

2014年(3)

2013年(9)

我的朋友

分类: LINUX

2013-12-12 10:18:01

wpa_supplicant软件包中包含客户端程序 wpa_cli,通过它可以直接连接无线网络,不需要通常的无线网络配置文件的方式,这在某些特殊情况下是有用的。
1、启动wpa_supplicant
以daemon方式启动wpa_supplicat:
wpa_supplicant -B -i wlan0 -D wext -c /etc/wpa_supplicant.conf
-B daemon模式
-i 无线网卡名
-D 驱动类型
-c    配置文件目录

其中的wlan0为系统内的无线网卡的设备名。配置文件是/etc/wpa_supplicant.conf,其中不包含要连接的无线网络的配置信息。最简单的配置文件只包含一句配置语句即可:
ctrl_interface=/var/run/wpa_supplicant

也可以在/etc/wpa_supplican.conf中直接添加连接网络所需要的信息,如果/etc/下没有配置文件可以在/usr/share/doc/wpa_supplicant-x.x.x-x/下将wpa_supplicant.conf.bz2拷贝到/etc下解压
2、启动wpa_cli
wpa_cli -i wlan0
如果系统内只有一个无线网卡,则-i wlan0参数可省略。程序启动后,进入交户操作状态,可接受用户的命令输入。下面的命令都是在这个交互操作模式下输入的。

3、增加网络,并设置网络参数
可以先用status命令查讯网络连接状态,应该返回
wpa_state=DISCONNECTED
可以先扫描网络来查看当前所有的wifi名称
scan        搜索无线网络

scan_result    显示搜索结果

用下面的命令增加网络,并设置相应的参数
add_network
该命令会返回新增加的网络的ID,一般是0 。下面的命令的第一个参数就是网络的ID。
set_network 0 ssid "wyk"     
wyk是无线网络名称,要用引号围起来。
set_network 0 psk "password"     
password代表网络的密码,也要用引号围起来。

有这两个网络参数一般就够了。
断开网络连接:
disconnect 网络号
删除网线:
remove_network 网络号
更多命令可参考wpa_cli --help

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 。然后用
dhcpcd wlan0
命令获取IP地址。

也可以使用如下方式,而不用交互模式:
wpa_cli -ieth1 add_network
wpa_cli -ieth1 set_network 1 ssid "TEST_IP"
wpa_cli -ieth1 set_network 1 key_mgmt NONE
wpa_cli -ieth1 set_network 1 wep_key0 "2223344"
wpa_cli -ieth1 set_network 1 wep_tx_keyidx 0
wpa_cli -ieth1 select_network 1
wpa_cli -ieth1 enable_network 1

dhcpcd wlan0

阅读(5484) | 评论(0) | 转发(2) |
给主人留下些什么吧!~~