官網: http://w1.fi/wpa_supplicant/segmentfault
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
。code
$ 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
執行完畢,就能夠鏈接網絡了。dns
$ 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
使用。使用方法:一、運行wpa_wifi_tool
;二、輸入help
進行命令查看;三、s
進行SSID
掃描;四、c[n]
進行wifi
鏈接,鏈接時若爲新的SSID
則需輸入密碼,若爲已保存的SSID
則能夠使用保存過的密碼或者從新輸入密碼;五、e
退出工具。接口
參考連接:https://segmentfault.com/a/1190000011579147?utm_source=tag-newestip