嵌入式linux無線網卡的使用

from:http://blog.csdn.net/sparksalmon/article/details/8445287php

 

嵌入式linux無線網卡的使用

最近一直在開發機頂盒上的無線功能,把這一段的經驗記錄下來,之後還有須要的時候。linux

硬件、驅動和系統

  • USB無線網卡:ralink3070
  • 驅動:ralink3070的驅動源代碼
  • 操做系統:linux

內核模塊和工具

  • 內核模塊:源碼編譯的內核模塊rt5370sta.ko
  • 工具:iwconfig,iwpriv,iwlist

使用時首先加載內核模塊less

insmod /root/modules/rt5370sta.ko工具

激活無線網卡(會加載無線的默認配置文件 /etc/Wireless/RT2870STA/RT2870STA.dat,相關設置可參考資料1)ui

ifconfig ra0 up加密

 

無線掃描結果與無線設置

無線熱點掃描spa

iwlist ra0 scan操作系統

無線熱點信息查看與設置.net

iwpriv ra0 setblog

iwpriv ra0 show

查看無線鏈接狀態

iwpriv ra0 connStatus

使用iwpriv設置好無線參數,若是能鏈接上無線,使用iwconfig就能看到剛纔所鏈接無線的essid。



下面主要說明一下無線掃描結果與無線鏈接設置之間的關係

1. 認證方式:開放或者共享,密碼:無

Cell 03 - Address: 00:21:27:80:88:00
Protocol:802.11b/g
ESSID:"wlan_test"
Mode:Managed
Frequency:2.437 GHz (Channel 6)
Quality=94/100  Signal level=-53 dBm  Noise level=-92 dBm
Encryption key: off
Bit Rates:54 Mb/s
iwpriv ra0 set NetworkType=Infra
iwpriv ra0 set AuthMode=WEPAUTO
iwpriv ra0 set EncrypType=NONE
iwpriv ra0 set SSID="wlan_test"

2. 認證方式:開放或者共享,密碼:有,加密方式:WEP

Cell 03 - Address: 00:21:27:80:88:00
Protocol:802.11b/g
ESSID:"wlan_test"
Mode:Managed
Frequency:2.437 GHz (Channel 6)
Quality=94/100  Signal level=-53 dBm  Noise level=-92 dBm
Encryption key: on
Bit Rates:54 Mb/s
iwpriv ra0 set NetworkType=Infra
iwpriv ra0 set AuthMode=WEPAUTO
iwpriv ra0 set EncrypType=WEP
iwpriv ra0 set SSID="wlan_test"

3. 認證方式:WPAPSK,加密方式:TKIP

Cell 03 - Address: 00:21:27:80:88:00
Protocol:802.11b/g
ESSID:"wlan_test"
Mode:Managed
Frequency:2.437 GHz (Channel 6)
Quality=100/100  Signal level=-17 dBm  Noise level=-92 dBm
Encryption key: on
Bit Rates:54 Mb/s
IE: WPA Version 1
Group Cipher : TKIP
Pairwise Ciphers (1) : TKIP
Authentication Suites (1) : PSK
iwpriv ra0 set NetworkType=Infra
iwpriv ra0 set AuthMode=WPAPSK
iwpriv ra0 set EncrypType=TKIP
iwpriv ra0 set SSID="wlan_test"
iwpriv ra0 set WPAPSK="12345678"

4. 認證方式:WPAPSK,加密方式:AES

Cell 03 - Address: 00:21:27:80:88:00
Protocol:802.11b/g
ESSID:"wlan_test"
Mode:Managed
Frequency:2.437 GHz (Channel 6)
Quality=100/100  Signal level=-15 dBm  Noise level=-92 dBm
Encryption key: on
Bit Rates:54 Mb/s
IE: WPA Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
iwpriv ra0 set NetworkType=Infra
iwpriv ra0 set AuthMode=WPAPSK
iwpriv ra0 set EncrypType=AES
iwpriv ra0 set SSID="wlan_test"
iwpriv ra0 set WPAPSK="12345678"

5. 認證方式:WPA2PSK,加密方式:TKIP

Cell 03 - Address: 00:21:27:80:88:00
Protocol:802.11b/g
ESSID:"wlan_test"
Mode:Managed
Frequency:2.437 GHz (Channel 6)
Quality=100/100  Signal level=-17 dBm  Noise level=-92 dBm
Encryption key: on
Bit Rates:54 Mb/s
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : TKIP
Pairwise Ciphers (1) : TKIP
Authentication Suites (1) : PSK
Preauthentication Supported
iwpriv ra0 set NetworkType=Infra
iwpriv ra0 set AuthMode=WPA2PSK
iwpriv ra0 set EncrypType=TKIP
iwpriv ra0 set SSID="wlan_test"
iwpriv ra0 set WPAPSK="12345678"

6. 認證方式:WPA2PSK,加密方式:AES

Cell 03 - Address: 00:21:27:80:88:00
Protocol:802.11b/g
ESSID:"wlan_test"
Mode:Managed
Frequency:2.437 GHz (Channel 6)
Quality=100/100  Signal level=-17 dBm  Noise level=-92 dBm
Encryption key: on
Bit Rates:54 Mb/s
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
Preauthentication Supported
iwpriv ra0 set NetworkType=Infra
iwpriv ra0 set AuthMode=WPA2PSK
iwpriv ra0 set EncrypType=AES
iwpriv ra0 set SSID="wlan_test"
iwpriv ra0 set WPAPSK="12345678"

7. 認證方式:自動(WPAPSK/WPA2PSK),加密方式:自動(AES或TKIP)

Cell 04 - Address: 00:21:27:80:88:00
Protocol:802.11b/g
ESSID:"wlan_test"
Mode:Managed
Frequency:2.437 GHz (Channel 6)
Quality=100/100  Signal level=-47 dBm  Noise level=-92 dBm
Encryption key: on
Bit Rates:54 Mb/s
IE: WPA Version 1
Group Cipher : TKIP
Pairwise Ciphers (2) : TKIP CCMP
Authentication Suites (1) : PSK
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : TKIP
Pairwise Ciphers (2) : TKIP CCMP
Authentication Suites (1) : PSK
Preauthentication Supported
從掃描結果能夠看到,所謂自動模式,即包含全部的認證方式或者加密方式。
故在上面的掃描結果下,使用3,4,5,6中的任何iwpriv設置均可以鏈接到無線。

 

注意事項

1. 無線熱點之間切換的問題
若是已經鏈接上一個無線熱點,切換到另外一個時,直接經過iwpriv設置,新無線不會生效。
我經過調用iwconfig ra0 essid off解決了這個問題,不知道是否合適,有待進一步的查找資料和驗證。

2. 路由的問題
開機設置了有線鏈接的默認路由,當無線鏈接後,也設置了一個默認路由
兩個默認的路由網段同樣時,會致使不插網線,但連上無線時,ping不通無線路由器。
刪除以前的默認路由,或者關閉eth0能解決問題,但仍是要注意無線網卡和有線網卡共同工做時可能會出現問題。

參考資料

1. https://wiki.archlinux.org/index.php/Rt2870

相關文章
相關標籤/搜索