Linux 系统中的 iw 命令是用于配置和管理无线网络接口的强大工具,它替代了旧的 iwconfig 命令,提供了更现代化、更丰富的功能。iw 命令主要用于与 Linux 内核的无线扩展(Wireless Extensions)和网桥接口进行交互,支持 802.11 设备的配置,包括扫描网络、连接 Wi-Fi、查看网络信息、设置无线模式等操作,与 ifconfig 或 ip 命令不同,iw 专注于无线局域网(WLAN)的底层配置,适合需要精细控制无线网络参数的高级用户和系统管理员。

要使用 iw 命令,首先需要确保系统已安装该工具,在基于 Debian 的系统(如 Ubuntu)中,可以通过 sudo apt install iw 安装;在基于 Red Hat 的系统(如 CentOS)中,可以使用 sudo yum install iw 或 sudo dnf install iw 安装,安装完成后,通过 iw dev 命令可以查看系统当前可用的无线网络接口,输出中可能会显示类似 wlp3s0 的接口名称,这表示无线网卡已成功识别。
iw 命令的基本功能包括网络扫描、连接管理、信息查看和参数配置。iw dev <interface> scan 是最常用的命令之一,用于扫描当前环境中可用的无线网络,该命令会返回详细的网络信息,包括 SSID(网络名称)、BSSID(接入点 MAC 地址)、频率、信号强度(RSSI)、加密类型(如 WPA2、WEP)等,执行 sudo iw dev wlp3s0 scan | grep SSID 可以快速列出所有可用网络的 SSID,扫描结果中的 signal 字段以 dBm 为单位,数值越大表示信号越强(如 -30 dBm 优于 -70 dBm)。
连接到指定的无线网络时,iw 命令通常需要与 wpa_supplicant 配合使用。iw 负责建立基础的网络连接,而 wpa_supplicant 处理认证(如 WPA2-PSK),先通过 iw dev wlp3s0 connect <SSID> 尝试连接,但实际应用中更推荐使用 nmcli 或 NetworkManager 图形工具,因为它们能更稳定地管理认证流程。iw dev <interface> link 命令可以查看当前无线链路的状态,包括连接的 SSID、BSSID、信号强度和传输速率等信息。
对于高级配置,iw 命令支持调整无线模式、信道、传输功率等参数。iw dev <interface> set type managed 可以将接口设置为 managed 模式(客户端模式),而 iw dev <interface> set type monitor 则可切换到监听模式,用于抓取无线数据包,通过 iw dev <interface> set channel <channel> [20/40/80] 可以手动指定无线信道和带宽,这在多信道环境中优化网络性能时非常有用。iw reg get 和 iw reg set <country_code> 命令用于管理无线区域设置,影响合法的可用信道和最大传输功率。

以下是 iw 命令常用功能的简要总结:
| 功能分类 | 命令示例 | 说明 |
|---|---|---|
| 查看接口 | iw dev |
列出所有无线网络接口 |
| 扫描网络 | iw dev <interface> scan |
扫描可用无线网络,显示详细信息 |
| 查看链路状态 | iw dev <interface> link |
显示当前连接的网络信息(SSID、BSSID、信号强度等) |
| 连接网络 | iw dev <interface> connect <SSID> |
尝试连接到指定 SSID(通常需配合 wpa_supplicant) |
| 设置接口模式 | iw dev <interface> set type managed/monitor |
切换接口模式(managed 为客户端,monitor 为监听模式) |
| 设置信道 | iw dev <interface> set channel 6 20MHz |
手动设置无线信道和带宽 |
| 查看区域设置 | iw reg get |
获取当前无线区域法规设置 |
| 设置区域 | iw reg set CN |
设置无线区域为国家代码(如 CN 为中国) |
尽管 iw 命令功能强大,但在日常使用中,NetworkManager、nmcli 或 wpa_cli 等工具可能更易于管理无线网络,因为它们提供了更友好的交互和自动连接功能。iw 命令的优势在于其灵活性和对底层参数的直接控制,适合网络调试、安全测试或特殊场景下的无线配置需求。
相关问答 FAQs
-
问:
iw命令和iwconfig有什么区别?
答:iw是iwconfig的替代品,提供了更现代的接口和更丰富的功能。iwconfig是旧版工具,主要用于基本的无线配置,而iw支持更高级的特性,如监听模式、精细的信道控制等,且语法更简洁,在大多数现代 Linux 发行版中,iwconfig已被iw取代。
(图片来源网络,侵删) -
问:如何使用
iw命令查看无线网卡的信号强度?
答:可以通过iw dev <interface> link命令查看当前连接的信号强度,signal字段以 dBm 为单位显示,如果未连接网络,可以使用iw dev <interface> scan | grep signal扫描网络并查看各 AP 的信号强度。
