WiFi на Raspberry PI

За окном было уже давно темно... Тоскливо падал тягучий противный мокрый снег заволакивая все небо и загораживая собой все спутники на орбите... Только спутники Eutelsat на позиции 36 градусов восточной долготы держались и не давали упасть всем федеральным каналам... В мониторинге листинг сбитых этим противным снегом каналов уже не помещался даже на две страницы скролла. Было печально и уныло...
За окном было уже давно темно... Тоскливо падал тягучий противный мокрый снег заволакивая все небо и загораживая собой все спутники на орбите... Только спутники Eutelsat на позиции 36 градусов восточной долготы держались и не давали упасть всем федеральным каналам... В мониторинге листинг сбитых этим противным снегом каналов уже не помещался даже на две страницы скролла. Было печально и уныло...
Взгляд мой упал на голубой продолговатый в виде флешки usb wifi "свисток" из китайского магазина, купленного "про запас". И вдруг захотелось мне странного. WiFi на моей raspberry. Ну вот просто так... чтоб на распберри и чтоб вайфай....
Ну что ж, занятие найдено, понеслася!!

Ну сами понимаете, это была лирика, а теперь к делу.

Во-первых. совершенно случайно выяснилась очень важная деталь. Для того чтобы заработал вайфай свисток - вы конечно не поверите, но! НУЖЕН ПРАВИЛЬНЫЙ, МОЩНЫЙ блок питания. Я когда втыкал зарядник от безымянного китафончика (ну ладно, не безымянного, есть у него имя - W7272 - но думаю стало не легче? :) ) с вполне приличными характеристиками 5v 1A - у меня малинка иногда даже не стартовала, тупо висла. А вот воткнул зарядник от Apple iPad... ну вы поняли.... :) В общем - завелась малинка, с полоборота. Кстати потребление ее выросло чуть-чуть... Вот фоточка

pi@raspberrypi ~ $ ifconfig
eth0      Link encap:Ethernet  HWaddr b8:27:eb:25:7d:57
          inet addr:192.168.10.52  Bcast:192.168.10.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:376 errors:0 dropped:0 overruns:0 frame:0
          TX packets:341 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:29028 (28.3 KiB)  TX bytes:37339 (36.4 KiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wlan0     Link encap:Ethernet  HWaddr 00:e0:4c:08:6d:60
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

Замечательно, китайщина китайщиной - а определился
pi@raspberrypi ~ $ iwconfig
lo        no wireless extensions.

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

eth0      no wireless extensions.

Ну поскольку, я если честно, вайфай в линуксах в первый раз настраиваю, тут я ушел чуток в чтение мануалов... Да-да, я уже такой старый, а вот не настраивал вайфаи... как-то привык на серверах-то, проводные соединения использовать :)
Начитался, ну и как зарядил
pi@raspberrypi ~ $ iwlist wlan0 scan
wlan0     No scan results

pi@raspberrypi ~ $ iwlist wlan0 scan
wlan0     No scan results

Оба-на.... Почесал репу, потом вспомнил - SUDO!!! Ну да, тут вы надо мной еще раз видимо посмеетесь - но привык я как то рутом то быть.... ;) ну чтож, попробуем еще раз, и про sudo стараемся не забывать
pi@raspberrypi ~ $ iwlist wlan0 scan
wlan0     No scan results

pi@raspberrypi ~ $ iwlist wlan0 scan
wlan0     No scan results

pi@raspberrypi ~ $ sudo iwlist wlan0 scan
wlan0     Scan completed :
          Cell 01 - Address: F8:D1:11:7D:B0:67
                    Channel:1
                    Frequency:2.412 GHz (Channel 1)
                    Quality=61/70  Signal level=-49 dBm
                    Encryption key:on
                    ESSID:"AP_IBZ"
                    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=0000000c9b00a805
                    Extra: Last beacon: 1300ms ago
                    IE: Unknown: 000641505F49425A
                    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: Unknown: 2A0100
                    IE: Unknown: 32043048606C
                    IE: Unknown: DD180050F2020101860003A4000027A4000042435E00623                   22F00
                    IE: Unknown: DD0900037F01010000FF7F
                    IE: Unknown: DD0A00037F04010000004000
                    IE: Unknown: DD7F0050F204104A0001101044000102103B00010310470                   01000000000000010000000F8D1117DB0671021000754502D4C494E4B10230009544C2D574138303                   14E10240003312E3010420003312E301054000800060050F204000110110017576972656C6573732                   04E20415020544C2D57413830314E100800020086103C000101
          Cell 02 - Address: 00:18:F8:B9:2D:19
                    Channel:11
                    Frequency:2.462 GHz (Channel 11)
                    Quality=25/70  Signal level=-85 dBm
                    Encryption key:on
                    ESSID:"Elena"
                    Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
                              12 Mb/s; 24 Mb/s; 36 Mb/s
                    Bit Rates:9 Mb/s; 18 Mb/s; 48 Mb/s; 54 Mb/s
                    Mode:Master
                    Extra:tsf=0000001375032e04
                    Extra: Last beacon: 510ms ago
                    IE: Unknown: 0005456C656E61
                    IE: Unknown: 010882848B960C183048
                    IE: Unknown: 03010B
                    IE: Unknown: 050400010000
                    IE: Unknown: 0706444520010D14
                    IE: Unknown: 2A0100
                    IE: Unknown: 32041224606C
                    IE: IEEE 802.11i/WPA2 Version 1
                        Group Cipher : CCMP
                        Pairwise Ciphers (1) : CCMP
                        Authentication Suites (1) : PSK
                       Preauthentication Supported
гораздо лучше! даже нашлась именно моя точка доступа! Я думаю понятно что это AP_IBZ а не ELENA :)
дальше оказалось, настолько все просто, что даже неинтересно :(
pi@raspberrypi ~ $ sudo bash
root@raspberrypi:/home/pi# wpa_passphrase
usage: wpa_passphrase  [passphrase]

If passphrase is left out, it will be read from stdin
root@raspberrypi:/home/pi# wpa_passphrase AP_IBZ password
network={
        ssid="AP_IBZ"
        #psk="password"
        psk=1aecab4d12ff513756a71244c0cec901cc6414aa6979199bbd7e5816f018222c
}
вместо "password" разумеется свой пароль, вместо AP_IBZ - свое название точки.
Затем добавляем вот этот сгенерированный блок (пароль в открытом виде я на всякий случай убрал)
network={
        ssid="AP_IBZ"
        psk=1aecab4d12ff513756a71244c0cec901cc6414aa6979199bbd7e5816f018222c
}
в файл /etc/wpa_supplicant/wpa_supplicant.conf
некоторые смелые и ЛЕНивые могут даже так
root@raspberrypi:/home/pi# wpa_passphrase AP_IBZ password >> /etc/wpa_supplicant/wpa_supplicant.conf
а дальше - ну вы опять не поверите - reboot! :)))
а самое смешное, после ребута
login as: pi
pi@192.168.10.52's password:
Linux raspberrypi 3.2.27+ #250 PREEMPT Thu Oct 18 19:03:02 BST 2012 armv6l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Thu Nov 15 17:13:17 2012 from 192.168.10.191
pi@raspberrypi ~ $ ifconfig
eth0      Link encap:Ethernet  HWaddr b8:27:eb:25:7d:57
          inet addr:192.168.10.52  Bcast:192.168.10.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:103 errors:0 dropped:0 overruns:0 frame:0
          TX packets:108 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:11925 (11.6 KiB)  TX bytes:14133 (13.8 KiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wlan0     Link encap:Ethernet  HWaddr 00:e0:4c:08:6d:60
          inet addr:192.168.10.55  Bcast:192.168.10.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:9 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1945 (1.8 KiB)  TX bytes:1374 (1.3 KiB)

Потом сходил выдернул эзернет. Зашел уже на вайфайный ип-шник
login as: pi
pi@192.168.10.55's password:
Linux raspberrypi 3.2.27+ #250 PREEMPT Thu Oct 18 19:03:02 BST 2012 armv6l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Thu Nov 15 18:09:11 2012 from 192.168.10.191
pi@raspberrypi ~ $
pi@raspberrypi ~ $ ifconfig
eth0      Link encap:Ethernet  HWaddr b8:27:eb:25:7d:57
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:1212 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1225 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:83963 (81.9 KiB)  TX bytes:156491 (152.8 KiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wlan0     Link encap:Ethernet  HWaddr 00:e0:4c:08:6d:60
          inet addr:192.168.10.55  Bcast:192.168.10.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:327 errors:0 dropped:0 overruns:0 frame:0
          TX packets:76 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:57410 (56.0 KiB)  TX bytes:11368 (11.1 KiB)

pi@raspberrypi ~ $ ping ya.ru
ping: unknown host ya.ru
pi@raspberrypi ~ $ ping ya.ru
ping: unknown host ya.ru
pi@raspberrypi ~ $ ping 194.87.0.50
connect: Network is unreachable
pi@raspberrypi ~ $ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.10.0    0.0.0.0         255.255.255.0   U     0      0        0 wlan0
pi@raspberrypi ~ $
пичалька... меня это чот не заводит, снова ребут
Using username "pi".
pi@192.168.10.55's password:
Linux raspberrypi 3.2.27+ #250 PREEMPT Thu Oct 18 19:03:02 BST 2012 armv6l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Thu Nov 15 18:20:45 2012 from 192.168.10.191
pi@raspberrypi ~ $ ifconfig
eth0      Link encap:Ethernet  HWaddr b8:27:eb:25:7d:57
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:1104 (1.0 KiB)  TX bytes:1104 (1.0 KiB)

wlan0     Link encap:Ethernet  HWaddr 00:e0:4c:08:6d:60
          inet addr:192.168.10.55  Bcast:192.168.10.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:122 errors:0 dropped:0 overruns:0 frame:0
          TX packets:123 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:15855 (15.4 KiB)  TX bytes:17395 (16.9 KiB)

pi@raspberrypi ~ $ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.10.1    0.0.0.0         UG    0      0        0 wlan0
192.168.10.0    0.0.0.0         255.255.255.0   U     0      0        0 wlan0
pi@raspberrypi ~ $ ping ya.ru
PING ya.ru (213.180.193.3) 56(84) bytes of data.
64 bytes from www.yandex.ru (213.180.193.3): icmp_req=1 ttl=52 time=14.5 ms
64 bytes from www.yandex.ru (213.180.193.3): icmp_req=2 ttl=52 time=18.0 ms
^C
--- ya.ru ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 14.504/16.270/18.037/1.771 ms
Ну вот это другое дело. Можно отнести в комнату где стоит (частенько без дела - не будешь же постоянно iДевайсы заряжать) док-станция. У нее есть audio-in, подключаем к ней и слушаем музыку по сети, например, с файлопомойки.

Погода тем временем за окном наладилась... Список сбойнувших каналов сократился всего до пары десятков... Пойду их чинить пожалуй.