雖然現代 Linux 發行版皆內建 NetworkManager 等圖形化網路管理工具,但在無桌面環境的伺服器、嵌入式裝置、容器或救援模式下,掌握命令列手動配置無線網卡仍是核心技能。本文詳細說明使用 iwconfig、ifconfig/ip、dhclient/dhcpcd 完成無線網路連線的完整流程,含 WPA/WPA2 加密、驗證與疑難排解。
lsmod | grep -i wifi 或 dmesg | grep -i wlan)wlan0(實際請用 ip link 或 iw dev 確認)iwconfig wlan0 txpower on
# 或
ip link set wlan0 up
指示燈應亮起。
iwlist wlan0 scan
# 或更詳細的新版工具
iw dev wlan0 scan | grep -E 'SSID|signal|primary channel|Authentication|Cipher'
輸出關鍵資訊:ESSID(網路名稱)、Encryption key(是否加密)、Authentication suites(WPA/WPA2)、Signal level(訊號強度)。
iwconfig wlan0 essid "MyHome"
iwconfig wlan0 essid "MyHome" key 0123-4567-89
# 或十六進位
iwconfig wlan0 essid "MyHome" key s:password
iwconfig 無法直接處理 WPA/WPA2,必須使用 wpa_supplicant:
# 1. 建立設定檔
cat > /etc/wpa_supplicant/wpa_supplicant.conf <
ifconfig wlan0 up
# 或新版 ip 指令
ip link set wlan0 up
# 方法一:dhclient(廣泛支援)
dhclient wlan0
# 方法二:dhcpcd(輕量、Arch/Alpine 預設)
dhcpcd wlan0
# 方法三:systemd-networkd(現代系統)
networkctl up wlan0
ifconfig wlan0 192.168.1.100 netmask 255.255.255.0
route add default gw 192.168.1.1
echo "nameserver 8.8.8.8" > /etc/resolv.conf
# 檢查無線連線狀態
iwconfig wlan0
# 檢查 IP 設定
ifconfig wlan0
# 或
ip addr show wlan0
# 測試連通性
ping -c 3 8.8.8.8
ping -c 3 google.com
wlan0 IEEE 802.11abg ESSID:"MyHome"
Mode:Managed Frequency:2.437 GHz Access Point: 00:23:CD:22:1A:A8
Bit Rate=54 Mb/s Tx-Power=20 dBm
Link Quality=65/70 Signal level=-45 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
關鍵指標:ESSID 顯示正確名稱、Access Point 有 MAC 位址、Link Quality 正常、Signal level > -70 dBm 較佳。
| 現象 | 可能原因 | 解決方向 |
|---|---|---|
ESSID:off/any、Access Point: Not-Associated | 未關聯到 AP | 檢查 ESSID 拼寫、密碼、wpa_supplicant 狀態 |
Tx-Power=0 dBm 或 off | 無線電關閉 | iwconfig wlan0 txpower on、檢查 rfkill |
| 連線後無 IP | DHCP 失敗 | 檢查 dhclient 日誌、手動指定 IP、確認 DHCP 伺服器 |
| DNS 解析失敗 | /etc/resolv.conf 錯誤 | 手動指定 nameserver、檢查 systemd-resolved |
| 頻繁斷線 | 訊號弱、驅動問題、電源管理 | iwconfig wlan0 power off、更新驅動、調整天線 |
rfkill list
# 輸出範例:
# 0: phy0: Wireless LAN
# Soft blocked: no
# Hard blocked: no
# 若 Soft blocked: yes
rfkill unblock wifi
# 掃描
nmcli dev wifi list
# 連線(自動處理 WPA/WPA2)
nmcli dev wifi connect "MyHome" password "0123456789"
# 查看連線
nmcli con show
# 斷線
nmcli con down "MyHome"
ip link set wlan0 up
ip addr show wlan0
ip route show
命令列配置無線網卡的核心流程:啟用介面 → 掃描熱點 → 關聯認證 → 取得 IP → 驗證連通。關鍵點在於:WPA/WPA2 必須使用 wpa_supplicant,單純 iwconfig 僅支援開放/WEP 網路。現代系統建議優先使用 nmcli 或 systemd-networkd 管理網路,兼具自動化與彈性。掌握底層指令可在無高層工具環境下快速恢復網路連線,是系統管理員的必備硬功夫。