1. 程式人生 > >在Linux上配置無線網路

在Linux上配置無線網路

wpa_cli status


導讀 iwconfig是Linux Wireless Extensions(LWE)的使用者層配置工具之一。LWE是Linux下對無線網路配置的工具,包括核心的支援、使用者層配置工具和驅動介面的支援三部分。目前很多無線網絡卡都支援LWE,而且主流的Linux釋出版本,比如Redhat Linux、Ubuntu Linux都已經帶了這個配置工具。
1. 安裝 wireless_tools 和 madwifi
pacman -S wireless_tools madwifi
2. 檢視網絡卡狀態
lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
Bus 001 Device 003: ID 0cf3:7015 Atheros Communications, Inc. 

在USB介面001/003上檢測到網絡卡。

iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wlan0     IEEE 802.11bgn  ESSID:off/any  
          Mode:Managed  Access Point: Not-Associated   Tx-Power=0 dBm   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off

無線網絡卡為 wlan0

3. 啟用網絡卡
ifconfig wlan0 up

因為我的網絡卡必需要先啟用才能掃描,否則下一步scan會出現錯誤:wlan0 Interface doesn't support scanning.

4. 掃描網路
iwlist wlan0 scan
wlan0     Scan completed :
          Cell 01 - Address: 54:E6:FC:22:E1:D2
                    Channel:1
                    Frequency:2.412 GHz (Channel 1)
                    Quality=53/70  Signal level=-57 dBm  
                    Encryption key:on
                    ESSID:"TP-LINK_22E1D2"
                    Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
                              9 Mb/s; 12 Mb/s; 18 Mb/s
                    Bit Rates:24 Mb/s; 36 Mb/s; 48 Mb/s; 54 Mb/s
                    Mode:Master
                    Extra:tsf=000000292a41bd80
                    Extra: Last beacon: 960ms ago
                    IE: Unknown: 000E54502D4C494E4B5F323245314432
                    IE: Unknown: 010882848B960C121824
                    IE: Unknown: 030101
                    IE: IEEE 802.11i/WPA2 Version 1
                        Group Cipher : CCMP
                        Pairwise Ciphers (1) : CCMP
                        Authentication Suites (1) : PSK
                    IE: WPA Version 1
                        Group Cipher : CCMP
                        Pairwise Ciphers (1) : CCMP
                        Authentication Suites (1) : PSK

發現WPA2-PSK/WPA-PSK 加密網路 TP-LINK_22E1D2,因為加密方式為 WPA-PSK 所以得用 wpa_supplicant 而不能使用 iwconfig wlan0 key xxx 形式,iwconfig key方式適用於WEP。

5. 配置 wpa_supplicant

新建檔案 /etc/my_wpa_supplicant.conf

ctrl_interface=/var/run/wpa_supplicant
network={
	ssid="TP-LINK_22E1D2"
	psk="密碼"
}

因為全部使用預設配置,所以配置檔案非常簡單。

6. 連線wlan0到網路,並以daemon方式執行
wpa_supplicant -B -i wlan0 -c /etc/my_wpa_supplicant.conf

-B Background 在後臺以daemon 執行
-i interface
-c 配置檔案
7. 設定IP地址
ifconfig wlan0 192.168.1.131

ifconfig 檢視狀態

wlan0     Link encap:Ethernet  HWaddr 54:E6:FC:03:0D:6B  
          inet addr:192.168.1.131  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:95 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:32434 (31.6 Kb)  TX bytes:576 (576.0 b)
8. 加入閘道器到路由

我的閘道器的是192.168.1.1,新增通過wlan0訪問的閘道器

route add default gw 192.168.1.1 dev wlan0

檢視狀態

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     *               255.255.255.0   U     0      0        0 wlan0
default         192.168.1.1     0.0.0.0         UG    0      0        0 wlan0
9. 設定完畢。

以後上線只需執行以下命令即可

wpa_supplicant -B -i wlan0 -c /etc/my_wpa_supplicant.conf
ifconfig wlan0 192.168.1.131
route add default gw 192.168.1.1 dev wlan0
10. 相關命令

關閉連線

wpa_cli terminate

連線狀態

wpa_cli status