Wireless tools for Linux是一个Linux命令行工具包,用来设置支持Linux Wireless Extension的无线设备。Wireless tools for Linux 和 Linux Wireless Extension 由 Jean Tourrilhes在维护,由Hewlett-Packard(HP惠普)赞助。
大多数基于Linux内核的操作系统都包含Wireless tools。在许多GNU/Linux 发行版中,都缺省安装这个工具包,即使是没有自动安装,也能很容易地找到其二进制代码安装包。
Wireless Extension (WE)是一组通用的API,能在用户空间对通用Wireless LANs进行配置和统计。它的好处在于仅通过一组单一的工具就能对各种各样的Wireless LANs进行管理,不过它们是什么类型,只要其驱动支持Wireless Extension就行;另一个好处就是不用重启驱动或Linux就能改变这些参数。
Wireless Tools (WT)就是用来操作Wireless Extensions的工具集,它们使用字符界面,虽然粗糙,但支持所有Wireless Extension。虽然还有很多其他管理Wireless Extensions的工具,但Wireless Tools是参考实现,它包括以下工具:
iwconfig:设置基本无线参数
iwlist:扫描、列出频率,比特率,密钥等
iwspy:获取每个节点链接的质量
iwpriv:操作Wireless Extensions 特定驱动
ifrename: 基于各种静态标准命名接口
大多数 Linux 发行版本都在其网络初始化脚本中集成Wireless Extension,以便启动时配置无线接口。他们还将Wireless Tools作为其标准封装包。
无线配置也可以使用hotplug或uDev脚本来完成,需要发行版特定的支持,这样能支持任何可移动的无线接口(Pcmcia,CardBus,USB接口...)。
Wireless Tools(从版本19)开始完全支持IEEE 802.11标准参数和设备,支持旧风格的设备和最专有协议,并准备处理HiperLan。较新版本增加了更多802.11支持。但不幸的是,并非所有的驱动程序支持所有这些功能。
最新的稳定版本的Wireless Tools是版本29,大多数愚蠢的错误已被删除,并支持所有的Wireless Extension(从版本v11至v21)。可以从http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/wireless_tools.29.tar.gz下载最新的Wireless Tools。
命令行:(ap不需要验证密码)
iwlist mlan0 scan //搜索ap
iwconfig mlan0 essid “linksys” //连接ap
udhcpc –i mlan0 //获得动态IP
命令行:(ap需要验证密码)
iwlist mlan0 scan //搜索ap
iwconfig mlan0 key xxxxxxxxxx // 输入验证密码
iwconfig mlan0 key open //密码验证功能打开
iwconfig mlan0 essid “linksys” //连接ap
udhcpc –i mlan0 //获得动态IP
2.1 wireless-tools安装
wireless-tools是一组无线网络扫描器及监控工具,可以用于监控、分析、以及测试WiFi网络,支持几乎所有的无线网卡和驱动,它可以支持WEP的AP,但它不能连接到那些只支持WPA的AP。连接AP需要使用它所编译出来的工具。
1、资源下载
下载wireless_tools.29.tar.gz
2、解压
# tar zxvf wireless_tools.29.tar.gz
#cd wireless_tools.29
3、修改Makefile
## Compiler to use (modify this for cross compile).
CC = mipsel-linux-gcc
4、编译
#make
5、拷贝
将生成的工具:iwlist、iwconfig、iwpriv等拷贝到目标板上,路径为:/root/app/bin/wifitools/
2.3 wpa-supplicant安装
由于wireless tools只能支持连接WEP的AP,所以要支持WPA的AP就需要移植wpa_supplicant。
Rt73的原始驱动中采用的wpa_supplicant的版本比较旧,是0.5.8,我们采用版本。
1、下载资源
本文使用的是:
http://hostap.epitest.fi/releases/wpa_supplicant-0.5.11.tar.gz
最新 wpa-supplicant
http://hostap.epitest.fi/releases/wpa_supplicant-0.6.9.tar.gz
2、文件修改
对照2009_0206_RT73_Linux_STA_Drv.bz2中WPA_Supplicant-0.5.8的文件,修改0.5.11中的对应文件,
3、解压
# tar zxvf wpa_supplicant-0.5.11.tar.gz
# cd wpa_supplicant-0.5.11
4、编译
#cp defconfig .config #使用默认的config
#export CC=mipsel-linux-gcc
#make
5、安装
将生成的wpa_supplicant 拷贝到目标板上, 路径为:/root/app/bin/wifitools/下
6、编写wpa网络的配置文件wpa_supplicant.conf
在目标板上目录为/root/appb/conf/wifi/下,创建一个wpa_supplicant.conf,键入以下内容:
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
ap_scan=1
network={
ssid="a" #essid
psk="111" #密码
}
3. WIFI驱动安装
1、驱动下载
http://www.ralinktech.com.tw/data/drivers/2009_0206_RT73_Linux_STA_Drv1.1.0.2.tar.bz2
2、解压
# tar jxvf 2009_0206_RT73_Linux_STA_Drv1.1.0.2.tar.bz2
# cd 2009_2006_RT73_Linux_STA_Drv_1.1.0.2/Module
3、修改Makefile
5 #PLATFORM=PC
6 PLATFORM=CMPC
40 ifeq ($(PLATFORM),CMPC)
41 LINUX_SRC = /opt/smp86xx_kernel_source_2.8.4.1/linux-2.6.15
42 endif
4、编译
# cp Makefile.6 ./Makefile
# make
5、安装
在目标板上,先将生成的rt73.ko以及文件rt73sta.dat 与 rt73.bin 拷贝到目标板上。
# cp rt73.ko /root/app/lib/ modules/2.6.15/
# mkdir –p /etc/Wireless/RT73STA
# cp rt73.bin /etc/Wireless/RT73STA
# cp rt73sta.dat /etc/Wireless/RT73STA
# insmod rt73.ko
# lsmod
另:ifrename 的使用
touch /etc/iftab
ifrename -i ra0 -n wlan0
ifrename -i rausb0 -n wlan0
/etc/iftab wlan1 mac
http://linux.die.net/man/8/ifrename
---------------------------------------------------------------------------