第一步:下载RT3070的无线网卡驱动;解压得到/opt/2011_0719_RT3070_RT3370_RT5370_RT5372_Linux_STA_V2.5.0.3_DPO
第二步:由于是在虚拟机里面安装,所以不存在驱动移植的问题,一般源码包里面就已经支持了,直接make,在/opt/2011_0719_RT3070_RT3370_RT5370_RT5372_Linux_STA_V2.5.0.3_DPO/os/linux 目录下会有RT3070.KO文件;再make install;
第三步:把/opt/2011_0719_RT3070_RT3370_RT5370_RT5372_Linux_STA_V2.5.0.3_DPO 下的RT2870STA.dat 复制到 /etc/Wireless/ (这个目录需要自己创建).
第四步:cd /opt/2011_0719_RT3070_RT3370_RT5370_RT5372_Linux_STA_V2.5.0.3_DPO/os/linux 这个目录下,insmod RT3070.ko,如果说这个驱动已存在,就remmod RT3070,再继续insmod.
第五步:使用命令,ifconfig -a ,此时会看到 ra0这个无线网卡了,启动无线,ifconfig ra0 up.
第六步:需要移植wireless tools进行联网和配置
1.下载wireless_tools.29.tar.gz
2.解压:#tar zxvf wireless_tools.29.tar.gz
3.修改makefile
PREFIX = /home/leo/wirelesstoolsout
CC = /usr/src/usr/local/arm/3.4.1/bin/arm-linux-gcc
AR = /usr/src/usr/local/arm/3.4.1/bin/arm-linux-ar
RANLIB = /usr/src/usr/local/arm/3.4.1/bin/arm-linux-ranlib
4. 交叉编译:
#cd wireless_tools.29
#make
#make install
5. 复制文件到ARM开发板
拷贝libiw.so.29文件到目标系统/lib/
拷贝用到的几个程序到目标系统的 /bin/ 目录下就可以了
iwpriv、iwconfig、iwlist, iwevent, iwspy
至此wireless_tools移植完成
6.设置ip地址及子网掩码:
# ifconfig ra0 172.31.13.229 netmask 255.255.254.0
7.扫描无线热点
# iwlist ra0 scan
===>rt_ioctl_giwscan. 14(14) BSS returned, data->length = 1526
ra0 Scan completed :
Cell 01 - Address: 00:23:89:08:02:10
Protocol:802.11b/g
ESSID:"IMUST"
Mode:Managed
Channel:1
Quality:42/100 Signal level:-73 dBm Noise level:-115 dBm
Encryption key:off
Bit Rates:18 Mb/s
Cell 02 - Address: 00:23:89:DC:35:B0
Protocol:802.11b/g
ESSID:"IMUST"
Mode:Managed
Channel:1
Quality:42/100 Signal level:-73 dBm Noise level:-115 dBm
Encryption key:off
Bit Rates:18 Mb/s
Cell 03 - Address: 00:23:89:DC:38:90
Protocol:802.11b/g
ESSID:"IMUST"
Mode:Managed
Ghannel:1
Quality:89/100 Signal level:-55 dBm Noise level:-115 dBm
Encryption key:off
Bit Rates:18 Mb/s
第七步:对网卡进行配置,命令行配置
在/etc/sysconfig/network-scripts目录下添加ifcfg-ra0文件,添加如下内容:
DEVICE=ra0
ONBOOT=yes
ROOTPROTO=dhcp
进行以上几步后,可以获得ip了。但后来又出现不能获取ip,并且重复以上也没作用使用
#dhclient ra0
备注:
Linux Force DHCP client (dhclient) to renew ip address
Linux renew ip command
$ sudo dhclient -r //release ip 释放IP
$ sudo dhclient //获取IP
Now obtain fresh IP:
$ sudo dhclient
There is no need to restart network service. Above command should work with any Linux distro such as RHEL, Fedora, CentOS, Ubuntu and others. On a related note you can also try out the following commands:
# ifdown eth0
# ifup eth0
# /etc/init.d/network restart
OR
# /etc/init.d/networking restart
通过以上步骤就可以连接外网了。
如果还是无法上网就做一下几步:
1、/etc/sysconfig/network-scripts目录下添加ifcfg-ra0文件,添加如下内容:
DEVICE=ra0
ONBOOT=yes
ROOTPROTO=dhcp
2、修改/etc/resolv.conf
nameserver 192.168.0.1
3、重新启动网络服务
/etc/init.d/network restart
4、ifconfig ra0 192.168.0.123
5、添加网关或者掩码
route add default gw 192.168.0.1
route add default gw 192.168.0.1 netmask 255.255.255.0