日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

wpa_supplicant使用

發布時間:2024/8/1 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 wpa_supplicant使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.wpa_supplicant簡介

wpa_supplicant是一個連接、配置WIFI的工具,它主要包含wpa_supplicant與wpa_cli兩個程序。wpa_supplicant是服務端,wap_cli是客戶端,一般情況下使用wpa_cli就可以操作WiFi。但是它不支持所有的驅動,可以瀏覽wpa_supplicant網站獲得它所支持的驅動列表。另外,wpa_supplicant目前只能連接到那些你已經配置好SSID的無線網絡,也就是使用前需要配置好wpa_supplicant的配置文件wpa_supplicant.conf
看下wpa_supplicant的help信息

[root@eufy /oem]$ wpa_supplicant -help wpa_supplicant v2.6 usage:wpa_supplicant [-BddhKLqqtvW] [-P<pid file>] [-g<global ctrl>] \[-G<group>] \-i<ifname> -c<config file> [-C<ctrl>] [-D<driver>] [-p<driver_param>] \[-b<br_ifname>] [-e<entropy file>] [-f<debug file>] \[-o<override driver>] [-O<override ctrl>] \[-N -i<ifname> -c<conf> [-C<ctrl>] [-D<driver>] \[-p<driver_param>] [-b<br_ifname>] [-I<config file>] ...]drivers:nl80211 = Linux nl80211/cfg80211wext = Linux wireless extensions (generic)wired = Wired Ethernet driver options:-b = optional bridge interface name-B = run daemon in the background-c = Configuration file-C = ctrl_interface parameter (only used if -c is not)-d = increase debugging verbosity (-dd even more)-D = driver name (can be multiple drivers: nl80211,wext)-e = entropy file-f = log output to debug file instead of stdout-g = global ctrl_interface-G = global ctrl_interface group-h = show this help text-i = interface name-I = additional configuration file-K = include keys (passwords, etc.) in debug output-L = show license (BSD)-M = start describing new matching interface-N = start describing new interface-o = override driver parameter for new interfaces-O = override ctrl_interface parameter for new interfaces-p = driver parameters-P = PID file-q = decrease debugging verbosity (-qq even less)-t = include timestamp in debug messages-v = show version-W = wait for a control interface monitor before starting example:wpa_supplicant -Dnl80211 -iwlan0 -c/etc/wpa_supplicant.conf

選項詳解

選項說明
-boptional bridge interface name 增加網橋名稱
-Brun daemon in the background后臺執行
-cConfiguration file 附加配置文件,即根據配置文件執行操作
-Cctrl_interface parameter (only used if -c is not) 控制網口參數
-iinterface name 設定操作的網口
-dincrease debugging verbosity (-dd even more)增加調試信息輸出
-Ddriver name (can be multiple drivers: nl80211,wext) 驅動名稱
-gglobal ctrl_interface 全局網口配置
-Kinclude keys (passwords, etc.) in debug output 在debug輸出中包含keys
-tinclude timestamp in debug messages 將各個debug信息前輸出時間標簽
-hshow this help text顯示幫助信息
-Lshow license (GPL and BSD) 顯示license
-ooverride driver parameter for new interfaces 覆蓋driver參數
-Ooverride ctrl_interface parameter for new interfaces 覆蓋ctrl_interface參數
-pdriver parameters 攜帶驅動參數
-PPID file進程文件
-qdecrease debugging verbosity (-qq even less)在debug 中不輸出指定參數
-vshow version 顯示版本信息
-Wwait for a control interface monitor before starting 啟動前等待控制接口
-Nstart describing new interface 啟動對新接口的描述
-flog output to debug file instead of stdout log的輸出文件

wpa_supplicant配置文件編寫

wpa_supplicant配置文件wpa_supplicant.conf的可配置選項太多,先了解下常用的配置項。看個例子:

cat wpa_supplicant.conf ctrl_interface=/var/run/wpa_supplicant ap_scan=1 network={scan_ssid=1ssid="mr112"psk="123456789"key_mgmt=WPA-PSK } 配置項說明
ctrl_interface默認的也是推薦使用的存放套接字的目錄,wpa_cli將會在嘗試和wpa_supplicant連接時使用它
ap_scan接入點的掃描和選擇
scan_ssid=0不掃描這個通過特定的探測請求幀得到的SSID(默認)=1掃描通過特定探測請求幀得到的SSID(這個可以用于尋找不接受廣播的APs或者使用多SSIDs ;這個將會增加掃描延時時間,所以在有必要時才激活此選項)
ssid無線名稱
psk無線密碼
key_mgmt公認的認證密鑰管理協議列表,WPA-PSK 預共享密匙 (這需要‘psk’字段)

另外,如果需要休眠喚醒功能,則加wowlan_triggers=any配置

wpa_suppcliant舉例

wpa_supplicant -B -i wlan0 -c /data/cfg/wpa_supplicant.confg -f /tmp/wap.log

2.wpa_cli使用

選項說明
scan打開后掃描AP
scan_results或scan_r顯示掃描結果
status列出目前的聯網狀態。
list_networks列出所有備選網絡。目前正連接到的網絡會標[CURRENT],禁用的網絡會標[DISABLE]。
add_network增加一個備選網絡,輸出新網絡的號碼(這個號碼替代下文的[network_id])。注意新網絡此時是禁用狀態。
set_network [network_id] ssid “Your SSID”設置無線網的名稱(SSID)
set_network [network_id] key_mgmt WPA-PSK設置無線網的加密方式為WPA-PSK/WPA2-PSK
set_network [network_id] psk “Your Password”設置無線網的PSK密碼
enable_network [network_id]啟用網絡。啟用后如果系統搜索到了這個網絡,就會嘗試連接。
disable_network [network_id]禁用網絡。
save_config保存配置。

舉例

1.搜索網絡

[root@eufy /oem]$ wpa_cli scan Selected interface 'wlan0' OK [root@eufy /oem]$ wpa_cli scan_result Selected interface 'wlan0' bssid / frequency / signal level / flags / ssid 2a:47:3d:62:21:fb 2462 -16 [WPA2-PSK-CCMP][ESS] mr112 64:6e:97:0c:c9:68 2462 -51 [WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][ESS] LdRobotAp-2.4 f8:8c:21:67:6b:67 2462 -28 [WPA-PSK-CCMP][WPA2-PSK-CCMP][ESS] app\xe7\xbb\x84 80:ea:07:81:24:85 2462 -75 [WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][ESS] YAKO_2.4G f8:8c:21:67:6b:69 5785 -32 [WPA-PSK-CCMP][WPA2-PSK-CCMP][ESS] app\xe7\xbb\x84-5G 74:22:bb:89:0c:34 5180 -38 [WPA2-PSK-CCMP][ESS] WFW_5G 2c:15:e1:3d:ba:0d 5745 -37 [WPA2-PSK-CCMP][ESS] ASUS_0B_5G 48:0e:ec:8d:4f:7f 5805 -40 [WPA-PSK-CCMP][WPA2-PSK-CCMP][ESS] TP-LINK_4F7D

2.查看狀態

[root@eufy /oem]$ wpa_cli status Selected interface 'wlan0' bssid=2a:47:3d:62:21:fb freq=2462 ssid=mr112 id=0 mode=station pairwise_cipher=CCMP group_cipher=CCMP key_mgmt=WPA2-PSK wpa_state=COMPLETED ip_address=192.168.191.5 address=20:32:33:38:32:72

源碼分析

總結

以上是生活随笔為你收集整理的wpa_supplicant使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。