Linux下Wi-Fiwirelesstools和wpasupplicant.docx

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Linux下Wi-Fiwirelesstools和wpasupplicant

平台为hi35XX,在Liunx下借助wireless_tools和wpa_supplicant(因为现在的无线wifi网络大多是wpa加密。所以需要移植wpa_supplicant工具)等工具实现wifi的过程。 一、移植wireless_tools 1. 下载并编译wireless_tools     tar zxf  wireless_tools.29.tar.gz(网上下载)     cd wireless_tools.29     make     成功后会在当前目录生成iwspy,iwpriv,iwlist以及iwconfig等文件。 2. 拷贝文件     我们只需将这四个文件拷备到文件系统的sbin目录,然后将当前目录的libiw.so.29库文件拷到文件系统的lib目录,无线网络工具即安装完成。   二、加载无线网卡驱动模块     网上有很多无线驱动模块,可移植性很好。呵呵,我的是利用XX无线网卡公司提供的网卡驱动源码,修改下Makefile(1.网卡选择 2.平台  3.内核路径和工具链)以及os/linux下的config.mk(一般不需要修改),make得到的。     insmod rtutil5572sta.ko。     insmod rt5572sta.ko     insmod rtnet5572sta.ko 三、指令的使用 1.  扫描可用的无线网络     iwlistwifi-name scanning      其中wifi-name为无线网卡的名字,比如网卡eth0就是系统默认的网卡名字, wifi-name可以用ifconfig查看,一般为ra0(无线网卡),不过,需要ifconfig ra0 up。 2.  扫描网络信息     iwlistra0 scan ===>rt_ioctl_giwscan.11(11) BSS returned, data->length = 1427  ra0       Scan completed :            Cell 01 - Address:C4:CA:D9:1D:9E:A0                      Protocol:802.11b/g/n                      ESSID:""                      Mode:Managed                      Frequency:2.412 GHz(Channel 1)                      Quality=7/100  Signal level=-87 dBm  Noise level=-82 dBm                      Encryption key:off                      Bit Rates:54 Mb/s      如上:ESSID项的值即为无线网络的名字,如上的“TXJ”等。如果值为空,说明在无线路由勾选了隐藏ESSID的选项。ESSID是很关键的,如果被隐藏了,也不是不能连接,而是需要破解,用到其他的工具,非常麻烦。 3. 设置要连接的网络类型       iwprivra0 set NetworkType=Infra  4. 设置要连接的无线网络的安全模式       iwprivra0 set AuthMode=WPA2PSK  5. 设置网络加密方式:(CCMP即为AES)       iwprivra0 set EncrypType=TKIP   6. 设置连接时的密码       iwprivra0 set WPAPSK=*******  //********为加密网络的密码 7. 连接该网络:有两种方式: <1> 用iwpriv命令     iwpriv ra0 set SSID=TXJ <2> 用iwconfig命令     iwconfigra0 essid TXJ     至此,如果密码正确,就可以连接上网络TXJ了。 但这种方式不太稳定,时好时坏,最好使用下面的wpa_supplicant方式。 8. 查看状态     iwpriv ra0 connStatus      当然,你也可以用iwconfig命令查看状态。   四、wpa_supplicant    wpa_supplicant本是开源项目源码,被谷歌修改后加入android移动平台,它主要是用来支持WEP,WPA/WPA2和WAPI无线协议和加密认证的,而实际上的工作内容是通过socket(不管是wpa_supplicant与上层还是 wpa_supplicant与驱动都采用socket通讯)与驱动交互上报数据给用户,而用户可以通过socket

文档评论(0)

haihang2017 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档