wpa_supplicant

软件集成
2065
linux
linux 举报
2020-06-18

官网: http://w1.fi/wpa_supplicant/

wpa_supplicant是一个连接、配置WIFI的工具,它主要包含wpa_supplicant与wpa_cli两个程序。通常情况下,可以通过wpa_cli来进行WIFI的配置与连接,如果有特殊的需要,可以编写应用程序直接调用wpa_supplicant的接口直接开发。

启动wpa_supplicant应用
$ wpa_supplicant -D nl80211 -i wlan0 -c /etc/wpa_supplicant.conf -B

/etc/wpa_supplicant.conf文件里,添加下面代码:

ctrl_interface=/var/run/wpa_supplicant
update_config=1
启动wpa_cli应用
$ wpa_cli -i wlan0 scan             // 搜索附近wifi网络
$ wpa_cli -i wlan0 scan_result      // 打印搜索wifi网络结果
$ wpa_cli -i wlan0 add_network      // 添加一个网络连接
$ wpa_cli -i wlan0 remove_network 1 // 删除一个网络连接

如果要连接加密方式是[WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][ESS] (wpa加密),wifi名称是name,wifi密码是:psk。

$ wpa_cli -i wlan0 set_network 0 ssid '"name"'
$ wpa_cli -i wlan0 set_network 0 psk '"psk"'
$ wpa_cli -i wlan0 enable_network 0

如果要连接加密方式是[WEP][ESS] (wep加密),wifi名称是name,wifi密码是psk。

$ wpa_cli -i wlan0 set_network 0 ssid '"name"'
$ wpa_cli -i wlan0 set_network 0 key_mgmt NONE
$ wpa_cli -i wlan0 set_network 0 wep_key0 '"psk"'
$ wpa_cli -i wlan0 enable_network 0

如果要连接加密方式是[ESS] (无加密),wifi名称是name。

$ wpa_cli -i wlan0 set_network 0 ssid '"name"'
$ wpa_cli -i wlan0 set_network 0 key_mgmt NONE
$ wpa_cli -i wlan0 enable_network 0
分配ip/netmask/gateway/dns
$ udhcpc -i wlan0 -s /etc/udhcpc.script -q

执行完毕,就可以连接网络了。

保存连接
$ wpa_cli -i wlan0 save_config
断开连接
$ wpa_cli -i wlan0 disable_network 0
连接已有的连接
$ wpa_cli -i wlan0 list_network             列举所有保存的连接
$ wpa_cli -i wlan0 select_network 0         连接第1个保存的连接
$ wpa_cli -i wlan0 enable_network 0         使能第1个保存的连接
断开wifi
$ ifconfig wlan0 down
$ killall udhcpc
$ killall wpa_supplicant
wpa_wifi_tool使用方法

wpa_wifi_tool是基于wpa_supplicant及wpa_cli的一个用于快速设置wifi的工具,方便调试时连接wifi使用。使用方法:1、运行wpa_wifi_tool;2、输入help进行命令查看;3、s进行SSID扫描;4、c[n]进行wifi连接,连接时若为新的SSID则需输入密码,若为已保存的SSID则可以使用保存过的密码或者重新输入密码;5、e退出工具。

参考链接:https://segmentfault.com/a/1190000011579147?utm_source=tag-newest


倒序看帖 只看楼主
热点关注
postfix中的main.cf 中的一些部分详细说明
在后台用进程名运行bash脚本
shell脚本每行后面多了一个^M的原因和解决办法
定时检测服务,检测down掉后重启。系统检测到DMSERVER运行正常
挂载磁盘的时候遇到一个问题,挂载完磁盘之后重启服务器挂载的盘丢失了.
中标麒麟系统Your trial is EXPIRED and no VALID licens
termux 开启ssh并用用户名和密码登陆
组成共享库的目标文件和一般的目标文件有所不同,在编译时要加-fPIC和-share选项,例如:
gcc指定链接库路径后还是找不到库文件
./configure -build,-host,-target设置
关于Linux系统中configure中build,target,host中的若干问题
不用单独编译gmp、mpfr和mpc三个包,放在gcc源码下面一起编译
shell参数判断
服务停止、启动、重启一体化脚本,万能语言启动脚本
postfix下过滤垃圾邮件的有效方法