当前位置:网站首页>WiFi wpa_ Detailed description of supplicant hostpad interface
WiFi wpa_ Detailed description of supplicant hostpad interface
2022-07-05 08:00:00 【Drink more hot water-】
wpa_supplicant/hostapd yes Linux Next use as sta/ap Interface for network card operation , The project is basically completed , Organize here .
One 、wpa_supplicant part
wpa_supplicant It's a connection 、 To configure WIFI Tools for . It mainly includes two programs :wpa_supplicant And wpa_cli. The relationship between the two is server And client The relationship between . Usually , We can go through wpa_cli To carry out WIFI Configuration and connection of , If there is a special need , You can write an application to call directly wpa_supplicant Direct development of interfaces .
This article mainly talks about how to pass wpa_cli Conduct WIFI Configuration and connection of .
2. Usage method
2.1 start-up wpa_supplicant application
wpa_supplicant -D nl80211 -i wlan0 -c /etc/wpa_supplicant.conf -B
Be careful :/etc/wpa_supplicant.conf In the document , Add the following code .
ctrl_interface=/var/run/wpa_supplicant
update_config=1
2.2 start-up wpa_cli application
wpa_cli -i wlan0 scan Search the neighborhood wifi The Internet
wpa_cli -i wlan0 scan_result Print search wifi Network results
wpa_cli -i wlan0 add_network Add a network connection
2.21 Such as If you want to connect, the encryption method is :[WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][ESS] (wpa encryption ) wifi The name is :wifi_name wifi The password is :wifi_psk
wpa_cli -i wlan0 set_network 0 ssid '"wifi_name"'
wpa_cli -i wlan0 set_network 0 psk '"wifi_psk"'
wpa_cli -i wlan0 enable_network 0
2.22 If you want to connect, the encryption method is :[WEP][ESS] (wep encryption )
wifi The name is :wifi_name
wifi The password is :wifi_psk
wpa_cli -i wlan0 set_network 0 ssid '"wpa_name"'
wpa_cli -i wlan0 set_network 0 key_mgmt NONE
wpa_cli -i wlan0 set_network 0 wep_key0 '"wap_psk"'
wpa_cli -i wlan0 enable_network 0
2.23 If you want to connect, the encryption method is :[ESS] ( No encryption )
wifi The name is :wifi_name
wpa_cli -i wlan0 set_network 0 ssid '"wifi_name"'
wpa_cli -i wlan0 set_network 0 key_mgmt NONE
wpa_cli -i wlan0 enable_network 0
2.3 Distribute ip,netmask,gateway,dns
udhcpc -i wlan0 -s /etc/udhcpc.script -q
completion of enforcement , You can connect to the network .
2.4 Save connection
wpa_cli -i wlan0 save_config
2.5 disconnect
wpa_cli -i wlan0 disable_network 0
2.6 Connect to an existing connection
$ wpa_cli -i wlan0 list_network List all saved connections
$ wpa_cli -i wlan0 select_network 0 Connect the 1 A saved connection
$ wpa_cli -i wlan0 enable_network 0 Enabling section 1 A saved connection
2.7 To break off wifi
$ ifconfig wlan0 down
$ killall udhcpc
$ killall wpa_supplicant
Two 、 hostapd part
hostapd yes Host Access Point Daemon , Provide information on Linux The strength of wireless access points WPA2 Encryption and authentication .
To configure hostapd It's simple , It supports WPA2-Personal and Enterprise, Provide for the right to WPA2-Personal Unique modification of , It can make managing it more complex or simpler .
udhcpd -f /etc/wificfg/udhcpd.conf &
hostapd -t /etc/wificfg/hostapd.conf &
/*************************************************************************************************************************/
3、 ... and 、 Actual operation script :
The above is a memo written according to your usual work , Query usage ; Remember the following sta/ap The operation of , And several configuration files under embedded :
1. wpa-supplicant Common operation :
wpa_supplicant -D nl80211 -i wlan0 -c/home/ky/wpa_supplicant.conf -B
wpa_cli -i wlan0 scan
wpa_cli -i wlan0 scan_result
wpa_cli -i wlan0 add_network
wpa_cli -i wlan0 set_network 0 ssid '"ky"'
wpa_cli -i wlan0 set_network 0 psk '"12345678"'
wpa_cli -i wlan0 enable_network 0
udhcpc -i wlan0
wpa_cli -i wlan0 disable_network 0
wpa_cli -i wlan0 disable_network 1
wpa_cli -i wlan3 remove_network 0
wpa_cli -i wlan0 save_config
wpa_cli -i wlan0 list_network
wpa_cli -i wlan0 select_network 2
wpa_cli -i wlan0 enable_network 2
udhcpc -i wlan0
wpa_supplicant.conf Profile contents :
ctrl_interface=/var/run/wpa_supplicant
update_config=1
network={
ssid="hky"
psk="12345678"
}
2.hostapd Shoushun :
ap The model is relatively simple
udhcpd -f /etc/wificfg/udhcpd.conf &
hostapd -t /etc/wificfg/hostapd.conf &
udhcpd.conf Profile contents : It is similar to the router configuration interface
It is worth noting that Lease documents (lease_file ) This configuration file , Usually based on /var/tmp/ In the catalog ,WiFi AP The mode cannot be assigned IP Maybe this file was not created , use touch Just build one
start 192.168.219.2
end 192.168.219.254
interface wlan1
lease_file /etc/wificfg/udhcpd.lease
opt dns 168.95.1.1 192.168.10.2 192.168.10.10
option subnet 192.168.0.0 netmask 255.255.255.0
opt router 192.168.10.2
opt wins 192.168.10.10
option dns 129.219.13.81
option domain local
option lease 864000
hostapd.conf Profile contents : Formulated the AP Of ssid password encryption a/b/g/n Etc , Of course, the working mode can also be WiFi Module commands to change
#
# This will give you a minimal, insecure wireless network.
#
# DO NOT BE SATISFIED WITH THAT!!!
#
# A complete, well commented example configuration file is
# available here:
#
# /usr/share/doc/hostapd/hostapd.conf
#
# For more information, look here:
#
# http://wireless.kernel.org/en/users/Documentation/hostapd
# ctrl_interface=/var/run/hostapd
ctrl_interface_group=root
# Some usable default settings...
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
# Uncomment these for base WPA & WPA2 support with a pre-shared key
wpa=2
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
# DO NOT FORGET TO SET A WPA PASSPHRASE!!
wpa_passphrase=12345678
# Most modern wireless drivers in the kernel need driver=nl80211
driver=nl80211
# Customize these for your local configuration...
interface=wlan1
hw_mode=g
channel=11
ssid=ssidtest
over 了
边栏推荐
- Altium designer learning (I)
- Pointnet++ classification practice
- Record the visual shock of the Winter Olympics and the introduction of the screen 2
- Threads and processes
- Basic embedded concepts
- [professional literacy] core conferences and periodicals in the field of integrated circuits
- Distinction between heap and stack
- Query the table name used by kettle in Oracle
- Class of color image processing based on Halcon learning_ ndim_ norm. hdev
- Train your dataset with yolov4
猜你喜欢
1-stm32 operation environment construction
Shell script basic syntax
Acwing - the collection of pet elves - (multidimensional 01 Backpack + positive and reverse order + two forms of DP for the answer)
C WinForm [help interface - send email] - practice five
Altium designer 19.1.18 - clear information generated by measuring distance
Application of ultra pure water particle counter in electronic semiconductors
Win10 shortcut key
How to migrate the device data accessed by the RTSP of the easycvr platform to easynvr?
Consul installation
如何进行导电滑环选型
随机推荐
1089 insert or merge, including test point 5
.NET服务治理之限流中间件-FireflySoft.RateLimit
Shell script basic syntax
Gradle composite construction
Shape template matching based on Halcon learning [VII] reuse_ model. Hdev routine
Altium Designer 19.1.18 - 隐藏某一个网络的飞线
Baiwen 7-day smart home learning experience of Internet of things
Factors affecting the quality of slip rings in production
GPIO circuit principle of stm32
Function and usage of function pointer
Global and Chinese markets for medical oxygen machines 2022-2028: Research Report on technology, participants, trends, market size and share
Interview catalogue
LED display equipment records of the opening ceremony of the Beijing Winter Olympics
Detailed explanation of pragma usage
Extern keyword function
UEFI development learning 3 - create UEFI program
TCP and UDP
UEFI development learning series
Global and Chinese markets for flexible endoscopic lithotripsy devices 2022-2028: Research Report on technology, participants, trends, market size and share
A simple method to prove 1/t Fourier transform