前言
Linux目前有两种方法配置网络:
- wireless-tools
- wpa_supplicant
iw支持的驱动较多,但只支持WEP加密;wpa_supplicant有部分驱动支持不完善,但支持WEP、WPA、WPA2加密。
由于WEP在现在市面的路由器中已经几乎被淘汰,因此使用wpa_supplicant进行连接。wpa_supplicant初次配置较为复杂,但配置一次后,下次遇到该AP时就可以自动连接。
初次配置
1. 启动网卡和程序
编辑配置文件/etc/wpa_supplicant.conf
,写入如下内容(如没有该文件则新建):
1 | ctrl_interface=/var/run/wpa_supplicant |
update_config=1
表示允许更改配置。
启动无线网卡:
1 | ifconfig wlan0 192.168.15.11 up |
启动wpa_supplicant:
1 | wpa_supplicant -i wlan0 -c /etc/wpa_supplicant.conf & |
其中,-i
指定网卡,-c
指定配置文件。
进入wpa_cli界面:
1 | wpa_cli |
在CLI界面中,可以输入各种命令修改网卡配置。
注意,在CLI中回退字符时,需要按
Ctrl + Backspace
,直接按Backspace
会被当做一般的字符输入。
2. 扫描AP
使用scan
命令扫描网络,扫描完毕后使用scan_results
查看网络:
1 | > scan |
3. 增加网络
使用add_network
增加网络,会增加一个网络编号。然后使用list_network
查看网络信息:
1 | > add_network |
4. 设定SSID和密码
1 | > set_network 0 ssid "HONOR315" |
5. 使能网络连接
使用enable_network
命令使能网络连接,出现CTRL-EVENT-CONNECTED
表示已经连接完毕。
1 | > enable_network 0 |
6. 保存配置
使用status
命令查看网络状态。输入save
保存配置。
1 | > status |
最后输入quit
退出CLI,回到终端。
1 | > quit |
此时可以查看网卡状态:
1 | ifconfig wlan0 |
查看配置文件,已经发生变化:
1 | cat /etc/wpa_supplicant.conf |
7. 网卡连通测试
电脑ping开发板:
开发板ping电脑:
加入开机自启动
经过以上配置,只要wlan0
网卡启动,且AP在信号范围内,就会自动进行连接。
如果有多个AP,可以在wpa_supplicant.conf
中添加优先级:
1 | ctrl_interface=/var/run/wpa_supplicant |
不过,这样仍然需要手动启动网卡和wpa_supplicant,需要输入2条命令。因此,将命令加入开机加载的脚本,以便开机自启动。
编辑/etc/rc.local
,在文件末尾添加以下内容:
1 | # start wlan0 with static ip |
注意如果最后一行有exit 0
,要将命令添加在exit 0
之前。
之后重启开发板,将自动启动网卡并连接AP。
参考资料: