Raspberry pi的闆子由于成本原因是沒有加無線子產品的,不想被網線束縛的我們,需要自備USB無線子產品。在購買闆子時,看見官方推薦EDUP無線網卡,價格還算合适,就直接入手了。
采用REALTEK8188晶片,802.11n,傳輸速度150Mbps,适用範圍130平方米。
将其插到任一U口即可,如下圖:
由于外殼阻礙了電源插孔,是以隻好先裸着了,圖中已經加電,HDMI的另一頭是電視機。
接下來的任務就是如何讓這個無線網卡工作,連接配接到我已經開啟的無線路由器。
一、wpa_gui
在進入Raspbian後,桌面上我們就可以看到一個Wifi Config的圖示,輕按兩下啟動它,進入到wpa_gui界面。
Adapter已經認出wlan0,說明系統已經有此無線網卡的驅動了,當然我們可以用lsusb指令來看一下:
最後一項Realtek就是此無線網卡。
再來說說這個wpa_gui,它是大名鼎鼎的wpa_supplicant(一個開源的無線網絡配置工具,Android同樣用它來管理wifi)的圖形界面,使用QT開發。但是我們覺得預設的版本很低,如下圖:
現在,我們先掃描一下附件的wifi熱點,點選scan按鈕。
從SSID清單中找到你的目标,輕按兩下它,打開配置頁面,如下圖:
SSID是熱點名稱,Authentication是無線路由使用的認證方式,這裡是WPA2-PSK,緊接着Encryption是WPA2-PSK的加密算法,圖中顯示的CCMP.
打開下拉清單,還有一個加密算法是TKIP。問題就出現在這裡了,因為這是兩個過時的加密算法。現在的WPA2-PSK推薦AES加密,因為這樣更安全,傳輸速度更快。是以,這裡就有一個沖突,我的無線路由是AES加密,而wpa_gui中沒有這個選項,那麼連接配接肯定是不能了。為了解決這個問題,我把無線路由的AES加密改成了TKIP。
接着是PSK,就是你輸入wifi密碼的地方。點選Add,主界面中Network就會出現你剛剛添加的熱點。然後點選Connect,如果一切順利就會連接配接成功,如下圖:
用自帶的浏覽器嘗試上網,成功!如下圖:
二、終端下配置
1.wpa_gui沒有AES加密的不足,我們可以通過直接使用自己配置wpa_supplicant方式來解決。
1.編輯/etc/network/interfaces檔案
[email protected] ~ $ sudo vim /etc/network/interfaces
做如下修改,請注意參考:
#allow-hotplug wlan0
#iface wlan0 inet manual
auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa.conf
#wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp
2.建立檔案:/etc/wpa.conf
[email protected] ~ $ sudo vim /etc/wpa.conf
加入如下内容:
network={
ssid="linc"
key_mgmt=WPA-PSK
psk="xxx!@#$"
}
重新開機樹莓派,檢視網絡狀态,确認已經連接配接成功。
另外,還可以使用wpa_cli這個指令行用戶端來配置,請參考樹莓派實驗室的這篇文章。
重要的指令如下:
$ sudo wpa_cli -i wlan0
>scan
OK
>scan_results
bssid / frequency / signal level / flags / ssid
add_network
set_network 0 ssid "linc"
set_network 0 key_mgmt WPA-PSK
set_network 0 psk '"xxxxxxxxxx"'
enable_network 0
quit
好了,現在我們的樹莓派已經可以上網了,那麼更加有意思的玩法等着我們呢。繼續探索吧!
參考:
http://blog.lixin.me/archives/29694/
http://blog.alexchi.me/archives/751
http://www.douban.com/note/449341604/
http://www.eeboard.com/bbs/thread-5191-1-1.html
http://shumeipai.nxez.com/2013/09/30/use-wpa-cli-command-line-to-configure-wi-fi-wireless-lan.html
http://wireless.kernel.org/en/users/Documentation/wpa_supplicant
http://www.raspbian.org/