wifi tool工具的使用(iw与wpa |
您所在的位置:网站首页 › 什么wifi连接工具最好用 › wifi tool工具的使用(iw与wpa |
wifi 驱动还有app tool移植可参考如下链接,写得非常好,韦东山老师写的东西就是牛逼。 http://www.100ask.org/bbs/forum.php?mod=viewthread&tid=14626&extra=page%3D1 WIFI tool主要有:wpa_supplicant(依赖于libnl、openssl库) 、hostapd 以及iw相关的tool 1.wpa_supplicant (无线网卡连接其它设备,工作于STA模式) 2.hostapd (无线网卡作为路由器,工作于AP模式)驱动程序的移植,如果是以模块的形式进行移植,关注点在于: (1)采用什么编译器,如果是x86,那么Makefile可以不用更改直接make,如果是ARM,则需要修改Makefile中的CC选项 CC=arm-linux-gcc (假设是arm-linux-gcc) (2)指定内核源码的路径 DEF_KERNEL_DIR := /BSP/yuanxin/Demo/Project/yocto2.1/kernel4.1.15-r0 (3)指定环境变量 这个最让人头痛了,笔者曾经为这个问题绞尽脑汁好几天,最好才知道,要定制一些FLAG在里面,这些FLAG就是环境变量相关的东西,通常指定一些库,一些编译参数进行编译等等,这个可以通过echo $CC进行查看,前提是你当前的交叉编译环境以及配置成功。 应用程序的移植,关注点在于: (1)采用什么平台进行编译,那么在Makefile中需要修改为xxx-gcc,比如CC=arm-linux-gcc,和驱动移植第一点是一样的。 (2)指定环境变量,和驱动移植的第三点是一样的。 关于wifi的加密/认证,以手机为例主要有四种模式: (1)OPEN模式 (2)WEP模式 (3)WPA(TKIP) (4)WPA2(AES) 1、iw工具的使用: iw工具:是iwconfig的替代者 (1)可用于 open, WEP两种"认证/加密"的模式的使用 // 列出WIFI网卡的性能 iw list //启动wifi模块 ifconfig wlan0 up // 扫描WIFI AP iw dev wlan0 scan // 连接到WIFI AP:xxx (open模式) (没有密码的,开放式wifi的连接) iw wlan0 connect xxx // 连接到WIFI AP:xxx (WEP模式) 后面的xxxxx表示密码 iw wlan0 connect xxx keys d:0:xxxxxx d: default, 0: 第0个密码 手动配置wifi热点的ip ifconfig wlan0 192.168.1.22 ping 一下百度,看是否可以连通网络(前提,已经设置了支持外网) ping www.baidu.com 断开热点的连接:iw wlan0 disconnect 2、wpa_supplicant(正在学习中) 功能比iw更为强大,可以用于OPEN模式、WEP模式、WPA(TKIP)、WPA2(AES)四种模式 一般情况下,现在很多都是用WPA2(AES)这种模式进行配置,所以我们来看看如何使用。 wpa_supplicant连接热点的方法如下: 连接命令:wpa_supplicant -B -i interface -c filename 字段含义如下: wpa_supplicant -B -i interface -c filename-B: Fork into background-i: interface,表示对应的wifi节点(通常是wlan,当然有可能是其它的名字) -Interface to listen on. -c: filename,表示使用哪个路径下的配置文件 例如:使用手动连接的方式去测试是否能够连接热点 wpa_supplicant -B -c /etc/wpa_wpa2.conf -imlan0 解析:使用mlan0这个节点,创建一个进程,并且使用/etc/wpa_wpa2这个作为wifi的配置文件。 配置文件:/etc/wpa_wpa2.conf 如果没有,需要touch /etc/wpa_wpa2.conf ctrl_interface=/var/run/wpa_supplicant network={ ssid="test" psk="123456" }如果需要添加多个配置,也可以继续添加以上network的字段,wpa这个工具会自动去匹配能够连接的ssid 连接成功: root@imx6qrsb4411a1:/# wpa_cli -imlan0 statusbssid=9c:1c:12:28:dd:53freq=2462ssid=testid=0mode=stationpairwise_cipher=CCMPgroup_cipher=CCMPkey_mgmt=WPA2-PSKwpa_state=COMPLETEDaddress=28:c2:dd:95:57:db uuid=78dae99a-9f04-5c99-9080-8287e3f24ae5 但现在ping百度是ping不通的,那么如何连接外网呢?需要配置ip,添加域名,设置网关,添加DNS,但有一个工具已经将这些步骤通通自动完成,只要: 动态获取IP:udhcpc ‐b ‐i mlan0 (mlan0是我的wifi节点)例如:(对域名,IP,DNS保密,故以xx,xxx形式进行缩写)root@imx6qrsb4411a1:/# udhcpc -b -i mlan0udhcpc (v1.23.1) startedSending discover...Sending select for xxx.xx.xxx.xx...Lease of xxx.xx.xxx.xx obtained, lease time 3600/etc/udhcpc.d/50default: Adding DNS xxx.xx.xxx.xx/etc/udhcpc.d/50default: Adding DNS xxx.xx.xxx.xx执行这个命令后,会在/etc/resolv.conf 自动生成对应的信息root@imx6qrsb4411a1:/# cat /etc/resolv.conf domain XXXXXXnameserver xxx.xx.xx.xxnameserver xxx.xx.xx.xx |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |