BeagleBone Black使用无线网卡经过WIFI联网

按照惯例,仍是先将要感谢的兄弟姐妹感谢完了再写正文。感谢CSDN论坛、EEWorld论坛上的兄弟姐妹,请原谅我在过后记录的时候忘了大家的大名,若是对你们有用,是大家的功力深厚,若是是对你们无用,原谅个人才疏学浅!微笑 linux

BBB上有USB Host,于是使用无线网卡是能够经过WIFI上网的。WIFI的加密方式有多种,无线网卡自己的控制芯片也有多种,所以,BBB经过无线上网也有要注意的地方。 ubuntu

如下操做的前提是:你已经能够控制你的BBB,不管是经过以太网或USB OTG的SSH,仍是串口。个人无线路由采用WPA2-PSK加密方式,这是如今最经常使用也是较安全的一个模式,其它的加密方式不详说,用的少。须要的话请自行度娘。 安全

1、无线网卡 网络

无线网卡的控制芯片主流的就那么几种,但不论是BBB的angstrom仍是网上的已编译好的debian、ubuntu的img,内核主要是linux 3.8.13(最多见),所以支持的无线网卡种类有限,具体可参考BBB的官方WIKI(http://eewiki.net/display/linuxonarm/BeagleBone+Black)。 less

须要提的是你们经常使用的USB无线网卡中,TPLink,水星、能达等,水星的芯片比较特殊,3.8的内核不可以原生支持,若想使用,请自行编译其驱动,并加入内核。从初学者来讲,不建议使用,固然能够用,可能须要至少两篇blog才能说清楚,这个问题咱们之后再说。 工具

我使用的是一款之前老机上用的一个能达的USB无线网卡,控制芯片是RT5370系列,3.8内核自己就带它的驱动。 oop

2、查询是否支持USB无线网卡 测试

上电之后,插入无线网卡,稍等片刻(像我这样的懒人是直接插上之后,再通电,这个就没有拔下来过,吐舌头)输入如下命令,查询USB设备,能够看到已经挂载的USB设备。 ui

1: debian@arm:~$ sudo lsusb
2: Bus 001 Device 002: ID 148f:5370 Ralink Technology, Corp. RT5370 Wireless Adapter
3: Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
4: Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

若是你看到以上相似的信息,wireless Adapter,恭喜你,你的网卡是支持的,而且已挂载。
3、配置无线网卡
加密

1、安装无线上网工具

1: debian@arm:~$ sudo aptitude install wireless-tools
2: No packages will be installed, upgraded, or removed.
3: 0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
4: Need to get 0 B of archives. After unpacking 0 B will be used.

 

固然,我已安装,故而显示不需再安装。

2、查询无线网卡是否正常

若是无线网卡正常,会生成相应的节点,wlan0。查询便知:

 1: debian@arm:~$ sudo ifconfig -a
 2: eth0 Link encap:Ethernet HWaddr c8:a0:30:b0:16:72
 3: UP BROADCAST MULTICAST MTU:1500  Metric:1
 4: RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 5: TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
 6: collisions:0 txqueuelen:1000
 7:            RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
 8: Interrupt:56
 9:  
10:           lo Link encap:Local Loopback 
11:  inet addr:127.0.0.1  Mask:255.0.0.0
12:           inet6 addr: ::1/128 Scope:Host
13:  UP LOOPBACK RUNNING MTU:65536  Metric:1
14:           RX packets:0 errors:0 dropped:0 overruns:0 frame:0
15:           TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
16: collisions:0 txqueuelen:0
17:            RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
18:  
19:            usb0 Link encap:Ethernet HWaddr 62:91:b6:06:4e:51
20:            inet addr:192.168.7.2  Bcast:192.168.7.3  Mask:255.255.255.252
21:            UP BROADCAST MULTICAST MTU:1500  Metric:1
22:            RX packets:0 errors:0 dropped:0 overruns:0 frame:0
23:            TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
24: collisions:0 txqueuelen:1000
25:            RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
26:  
27:            wlan0 Link encap:Ethernet HWaddr c8:3a:35:c4:04:8e
28:            inet addr:192.168.100.102  Bcast:192.168.100.255  Mask:255.255.255.0
29:            inet6 addr: fe80::ca3a:35ff:fec4:48e/64 Scope:Link
30:  UP BROADCAST RUNNING MULTICAST MTU:1500  Metric:1
31:            RX packets:3711 errors:0 dropped:0 overruns:0 frame:0
32:            TX packets:2784 errors:0 dropped:0 overruns:0 carrier:0
33: collisions:0 txqueuelen:1000
34:            RX bytes:1648932 (1.5 MiB)  TX bytes:440600 (430.2 KiB)

 

个人已配置好,故有IP,若是无线网卡正常,是能够看到wlan0的!先无论有没有IP。

3、启用你的wlan0节点

 1: debian@arm:~$ sudo ifconfig wlan0 up
 2: [sudo] password for debian:
 3: [ 9228.336381] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
 4: debian@arm:~$ [ 9235.758646] wlan0: authenticate with a8:57:4e:c8:f8:22
 5: [ 9235.795149] wlan0: send auth to a8:57:4e:c8:f8:22 (try 1/3)
 6: [ 9235.803004] wlan0: authenticated
 7: [ 9235.812066] wlan0: associate with a8:57:4e:c8:f8:22 (try 1/3)
 8: [ 9235.823099] wlan0: RX AssocResp from a8:57:4e:c8:f8:22 (capab=0x431 status=0 aid=4)
 9: [ 9235.839171] wlan0: associated
10: [ 9235.842480] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready

 

若是看到ready,你成功的启用了你的无线网卡。

4、扫描你的无线网络

1: debian@arm:~$ sudo iwlist wlan0 scan
2: wlan0 Scan completed : Cell 01 - Address: 9C:21:6A:DA:A2:8A Channel:1 Frequency:2.412 GHz (Channel 1) Quality=31/70 Signal level=-79 dBm Encryption key:on ESSID:"TP-LINK_DAA28A" 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=0000002cf8ad5180 Extra: Last beacon: 1580ms ago IE: Unknown: 000E54502D4C494E4B5F444141323841 IE: Unknown: 010882848B960C121824 IE: Unknown: 030101 IE: Unknown: 2A0100 IE: Unknown: 32043048606C IE: Unknown: 2D1A6E1003FFFF000000000000000000000000000000000000000000 IE: Unknown: 3D1601051100000000000000000000000000000000000000 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 IE: Unknown: DD180050F2020101000003A4000027A4000042435E0062322F00 IE: Unknown: DD05000AEB0100 IE: Unknown: DD8E0050F204104A0001101044000102103B00010310470010000000000000100000009C216ADAA28A1021000754502D4C494E4B10230009544C2D57523834324E10240003342E3010420007312E312E312E331054000800060050F204000110110018576972656C657373204E20526F757465722057523834324E100800022288103C0001011049000600372A000120 Cell 02 - Address: A8:57:4E:C8:F8:22 Channel:1 Frequency:2.412 GHz (Channel 1) Quality=70/70 Signal level=-25 dBm Encryption key:on ESSID:"Sys_TP_Net" 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=0000002d0d14c180 Extra: Last beacon: 357ms ago IE: Unknown: 000A5379735F54505F4E6574 IE: Unknown: 010882848B960C121824 IE: Unknown: 030101 IE: Unknown: 2A0100 IE: Unknown: 32043048606C IE: Unknown: 2D1A6E1003FFFF000000000000000000000000000000000000000000 IE: Unknown: 3D1601050000000000000000000000000000000000000000 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 IE: Unknown: DD180050F2020101000003A4000027A4000042435E0062322F00 IE: Unknown: DD05000AEB0100 IE: Unknown: DD8E0050F204104A0001101044000102103B0001031047001000000000000010000000A8574EC8F8221021000754502D4C494E4B10230009544C2D57523834324E10240003342E3010420007312E312E312E331054000800060050F204000110110018576972656C657373204E20526F757465722057523834324E100800022288103C0001011049000600372A000120
3: 

 

你应该看到你的无线网络了吧?

5、生成密钥文件
生成密匙文件/etc/wpa_supplicant.conf 链接的无线路由ESSID为TEST,密码是12345678,使用以下命令行生成文件。

1: debian@arm:~$ sudo wpa_passphrase TEST 12345678  > /etc/wpa_supplicant.conf 

 

6、链接你的无线路由器
注意:有使用ifup以前,请先检查你的配置文件。不然会报错的,这个是特别须要注意的。也就是要更改/etc/network/interfaces文件。(命令偷懒了,用了*)
1: debian@arm:/etc/network$ sudo nano /etc/network/in*ces
2: 

 

加入如下内容(或修改原有内容)为:

1: # WiFi Example
2: auto wlan0
3: iface wlan0 inet dhcp
4: wpa-ssid "你?的?无?线?网?络?ssid"
5: wpa-psk "你?的?无?线?网?络?密?码?"

 


ctrl-O保存,ctrl-X退出。
激动人心的时刻到来了,让咱们启动咱们可爱的wlan0吧。
 1: debian@arm:/etc/network$ sudo ifup wlan0
 2: [10257.062541] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
 3: Internet Systems Consortium DHCP Client 4.2.2
 4: Copyright 2004-2011 Internet Systems Consortium.
 5: All rights reserved.
 6: For info, please visit https://www.isc.org/software/dhcp/
 7: 
 8: Listening on LPF/wlan0/c8:3a:35:c4:04:8e
 9: Sending on LPF/wlan0/c8:3a:35:c4:04:8e
10: Sending on Socket/fallback
11: DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 5
12: [10259.727874] wlan0: authenticate with a8:57:4e:c8:f8:22
13: [10259.760947] wlan0: send auth to a8:57:4e:c8:f8:22 (try 1/3)
14: [10259.769460] wlan0: authenticated
15: [10259.776952] wlan0: associate with a8:57:4e:c8:f8:22 (try 1/3)
16: [10259.787700] wlan0: RX AssocResp from a8:57:4e:c8:f8:22 (capab=0x431 status=0 aid=4)
17: [10259.803861] wlan0: associated
18: [10259.807175] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
19: DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 9
20: DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 15
21: DHCPREQUEST on wlan0 to 255.255.255.255 port 67
22: DHCPOFFER from 192.168.100.253
23: DHCPACK from 192.168.100.253
24: bound to 192.168.100.102 -- renewal in 754144638 seconds.

 


看到没有,咱们有IP了!恭喜你,你成功的落网了!
若是不成功sudo ifdown wlan0,而后再sudo ifup wlan0,多试两次,再不行,查找缘由吧。ssid,password对不对?
7、测试你的网络
咱们仍是来ping 或ifconfig一下吧。
 1: debian@arm:/etc/network$ sudo ping www.163.com.cn
 2: PING www.163.com.cn (219.137.167.157) 56(84) bytes of data.
 3: 64 bytes from 219.137.167.157: icmp_req=1 ttl=54 time=57.0 ms
 4: 64 bytes from 219.137.167.157: icmp_req=2 ttl=54 time=55.5 ms
 5: 64 bytes from 219.137.167.157: icmp_req=3 ttl=54 time=56.9 ms
 6: 64 bytes from 219.137.167.157: icmp_req=4 ttl=54 time=59.0 ms
 7: 64 bytes from 219.137.167.157: icmp_req=5 ttl=54 time=57.5 ms
 8: 
 9: --- www.163.com.cn ping statistics ---
10: 5 packets transmitted, 5 received, 0% packet loss, time 22715ms
11:  

 

速度不快啊。,记得用ctrl-c退出ping状态哈,不然。。。。。


以上均是我的在玩中间的一点记录,固然但愿与你们多多交流!啰嗦了这么多,若是有疑问请直接在评论中留言或站内交流。我水平有限,刚接触嵌入式linux,之前在51和cortexM3上用的多,上位机的软件编的多,用C和汇编多,也画一些双面板、四层板。

下次咱们说点什么呢,我想仍是说点开发环境相关的东东吧,好比交叉编译,hello world什么的吧。

相关文章
相关标签/搜索