本文最后更新于153 天前,其中的信息可能已经过时,如有错误请发送邮件到big_fw@foxmail.com
下载 iw 和 wpasupplicant 及依赖
- iw:iw是管理无线设备的工具,使用iw命令连接WiFi需要结合其他工具,如wpa_supplicant或NetworkManager,因为iw主要用于管理无线接口,不直接处理认证。
- wpasupplicant:用于处理无线网络的认证和加密,支持多种安全协议(如 WPA、WPA2),能够自动获取 IP 地址。
在线安装 iw:(wpasupplicant同理)
1. 更新源
apt update
apt upgrade
2. 下载 iw 工具,执行后自动安装 iw 及相应依赖;
apt install iw
离线安装 iw:
需要在同系统版本的其他设备上连接外网下载 iw工具包和依赖,然后用 scp、ftp 或 U盘 传输到离线的系统中,再使用 dpkg 工具进行安装。
1. 更新源:
apt update
apt upgrade
2. 下载 iw 包和依赖到本地:
mkdir ~/iw-packages
cd iw-packages
sudo apt-get install apt-rdepends
apt-rdepends iw | grep "^\ " | xargs apt-get download
3. 打包下载好的 iw 和依赖
zip ~/iw-packages.zip iw-packages -r
4. 拷贝到U盘
mount /dev/sdb1 /mnt/usb
cp ~/iw-packages.zip /mnt/usb
5. 插入U盘到离线设备,并安装到离线设备系统中:
mount /dev/sdb1 /mnt/usb
cp /mnt/sdb1/iw-packages.zip .
6. 使用 dpkg 安装离线包和依赖:
unzip -r iw-packages
cd iw-packages
dpkg -i *.deb
7. 测试是否安装成功:
iw -v
8. 安装过程中,如果有依赖关系,则进行完整安装:
sudo apt-get -f install
iw工具
- 显示所有无线设备:iw dev;
- 显示指定无线设备的信息:iw dev wlan0 info;
- 扫描附近无线网络:iw dev wlan0 scan;
- 显示扫描结果:iw dev wlan0 scan | grep SSID;
- 连接无线网络:iw dev wlan0 connect “401”;
- 连接无线加密网络:iw dev wlan0 connect “401” key “13417755555”;
- 断开当前连接:iw dev wlan0 disconnect;
- 监听无线事件:iw enevt;
- 显示支持的无线标准:iw phy <phyname> info;
- 显示可用通道:iw phy <phyname> channels;
- 显示传输功率:iw dev <interface> info | grep txpower;
- 查看版本信息:iw -v或iw –version;
- 查看连接状态:iw dev wlan0 link;
安装wpasupplicant连接WiFi,但需手动连接wifi,自动需要额外配置
wpa_cli工作的前提就是wpa_supplicant要在后台正常运行——可以通过ps、pgrep等Linux命令行工具查看后台进程是否有wpa_supplicant。
终端执行命令,进入交互模式
wpa_cli

- 输入status——显示当前wlan0的连接状态,连接成功会看到Wifi密码、名称等系列信息;连接不成功会显示。
- 输入scan——扫描WiFi。等待返回OK;
- 再执行scan_results,查看WiFi扫描结果。
- 输入list_networks——列出/etc/wpa_supplicant.conf文件里的配置保存网络,并可以看到配置文件里的WiFi网络当前状态(有没有处于当前连接)、所分配的网络ID数字。
wifi连接步骤
- 输入:add_network——会返回一个ID数字,下面会用到
- 输入:set_network ssid “WiFi名称”
- 输入:set_network psk “WiFi密码”
- 输入:enable_network ——尝试连接使能为ID配置的网络
- 输入:save_config——保存当前配置到/etc/wpa_supplicant.conf文件里
- 输入wpa_supplicat -B -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf
- 推出wpa_cli,输入dhclient wlan0,获取ip地址,此时可以上网。
断开WiFi:
- #输入:disable_network ——禁用指定的网络
- #输入:disconnect——断开当前连接的网络
重连WiFi:
- #输入:reassociate——尝试重新连接当前配置的网络。
- #输入:reconfigure——让 wpa_supplicant 重新加载配置文件并尝试连接。
输入quit——退出wpa_cli交互模式

