wi-fi на raspbian raspberry pi 2

команды, freebsd, настройка, установка, сервер, server, ubuntu, network, interfaces, сеть, raspberry

После того как raspbian на raspberry pi 2 установлена, сетевой интерфейс eth0 настроен и на raspberry pi можно попасть по ssh, возможно захочется избавиться от одного провода и заменить его wi-fi модулем. Использовал модуль, изображённый выше, обошёлся он всего в 5.26$
Смотрим настройки сетевых интерфейсом и usb устройства:
$ ifconfig
eth0 Link encap:Ethernet HWaddr b8:27:eb:90:e1:2e
inet addr:10.36.1.17 Bcast:10.36.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1689 errors:0 dropped:0 overruns:0 frame:0
TX packets:448 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:160817 (157.0 KiB) TX bytes:52316 (51.0 KiB)

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 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)

$ cat /proc/net/dev
Inter-| Receive | Transmit
face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
lo: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
eth0: 162719 1724 0 0 0 0 0 0 56628 476 0 0 0 0 0 0

$ lsusb
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 046d:c03d Logitech, Inc. M-BT96a Pilot Optical Mouse
Bus 001 Device 005: ID 04d9:1702 Holtek Semiconductor, Inc.

Я приобрёл маленький wi-fi адаптер (см изображение в начале статьи), подключил физически к малинке и он определился в системе так:
$ cat /proc/net/dev
Inter-| Receive | Transmit
face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
wlan0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
lo: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
eth0: 23863 239 0 0 0 0 0 0 17740 138 0 0 0 0 0 0

$ lsusb
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter
Bus 001 Device 005: ID 046d:c03d Logitech, Inc. M-BT96a Pilot Optical Mouse
Bus 001 Device 006: ID 04d9:1702 Holtek Semiconductor, Inc.

$ ifconfig
eth0 Link encap:Ethernet HWaddr b8:27:eb:90:e1:2e
inet addr:10.36.1.17 Bcast:10.36.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3186 errors:0 dropped:0 overruns:0 frame:0
TX packets:1086 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:261416 (255.2 KiB) TX bytes:131411 (128.3 KiB)

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 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 e8:4e:06:23:a3:c5
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)

10.36.1.* — домашняя сеть.
До начала настройки сетевого интерфейса wlan0 конфиг /etc/network/interfaces у меня выглядит так:
auto lo
iface lo inet loopback

auto eth0
allow-hotplug eth0
iface eth0 inet static
address 10.36.1.17
netmask 255.255.255.0
gateway 10.36.1.7
dns-nameservers 10.36.1.7 8.8.8.8 8.8.4.4

auto wlan0
allow-hotplug wlan0
iface wlan0 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

auto wlan1
allow-hotplug wlan1
iface wlan1 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

Теперь приступим к настройке.
Способ 1. Если в сети есть dhcp-сервер, раздающий сетевые настройки:
Просто подправить в файле /etc/network/interfaces раздел, связанный с wlan0 до следующего вида:
auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-ssid имя_ssid
wpa-psk пароль_для_подключения_к_wi-fi

Примечание: в способе 1 в кавычки брать имя_ssid и пароль_для_подключения_к_wi-fi не надо.

Способ 2. Если в сети есть dhcp-сервер, раздающий сетевые настройки. Более сложный, но он безопаснее. Мы просто настройки подключения к wi-fi убираем в другой файл, таким образом часть файла /etc/network/interfaces с конфигурацией wlan0 будет выглядеть так:
auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

А файл /etc/wpa_supplicant/wpa_supplicant.conf должен содержать всю техническую информацию, необходимую для подключения к wi-fi.
Чтобы получить информацию, необходимую для заполнения файла /etc/wpa_supplicant/wpa_supplicant.conf , можно выполнить некоторые манипуляции. Сначала посмотрим, какие вообще wi-fi точки видит наш адаптер с интерфейсом wlan0:
sudo iwlist wlan0 scan
Получим список всех сетей в округе. Информации довольно много выведено в консоль,

Сделаем список покороче:
sudo iwlist wlan0 scan | grep ESSID
получим ssid точек вокруг нас.
ESSID:"имя-ssid-1"
ESSID:"имя-ssid-2"
ESSID:"имя-ssid-3"
ESSID:"имя-ssid-4"

Среди них узнаём нашу.

Теперь в /etc/wpa_supplicant/wpa_supplicant.conf можем вписать:
network={
ssid="имя_ssid"
psk="пароль_для_подключения_к_wi-fi"
key_mgmt=WPA-PSK
}

Примечание: в способе 2 имя_ssid и пароль_для_подключения_к_wi-fi должны быть в кавычках.
Параметр key_mgmt указывает на тип аутентификации, который можно узнать, посмотрев настройки безопасности в настройках самой wi-fi точки.
Доступны следующие часто используемые варианты key_mgmt:
WPA-PSK = WPA pre-shared key (требуется поле psk, его мы так же указали в секции network файла wpa_supplicant.conf)
WPA-EAP = WPA с использованием EAP
NONE = WPA не используется, а используется, например, plaintext или static WEP
Этих 3-ёх параметров в секции network мне оказалось достаточно, чтобы raspberry pi 2 благополучно подключился к домашней wi-fi сети. Дополнительные настройки для файла /etc/wpa_supplicant/wpa_supplicant.conf можно глянуть в примерах, расположенных в /usr/share/doc/wpasupplicant/examples/
sudo gzip -d /usr/share/doc/wpasupplicant/examples/wpa_supplicant.conf.gz
cat /usr/share/doc/wpasupplicant/examples/wpa_supplicant.conf

Способ 3. Даже не способ, а дополнение к любому из двух выше. Указать IP адрес интерфейса можно вручную, для этого как обычно в /etc/network/interfaces добавим строки в настройках wlan0. Чтобы назначить статический ip адрес настройки должны выглядеть НЕ так как раньше:
auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

а, например, вот так:
auto wlan0
allow-hotplug wlan0
iface wlan0 inet static
address 10.36.1.18
netmask 255.255.255.0
gateway 10.36.1.7
dns-nameservers 10.36.1.7 8.8.8.8 8.8.4.4
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

Не забываем закомментировать настройки интерфейса eth0 в /etc/network/interfaces
Выполняем:
sudo shutdown -h now
Вытаскиваем сетевой кабель из raspberry pi 2, оставляем только wi-fi. Запускаем малинку и радуемся тому, что она подключилась wi-fi сети.

Добавить комментарий