http://lsoft.daraba.ru/blogs/nelex
Тут такая хорошая статья - ни убавить, ни прибавить :) И вообще этот блог заслуживает того, чтобы в нем побольше покопаться.
Копирую как есть :) Спасибо автору. У меня network-manager и wicd подключались с десятого раза, а тут всё работает...
По итогам статьи создал скрипт
#!/bin/bash
service wicd stop
wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf -Dnl80211
dhclient wlan0
route add default gw 192.168.5.1
echo nameserver 8.8.8.8 > /etc/resolv.conf
Но еще его не обкатывал. Итак:
Привет уважаемый читатель!
Надоели в последнее время мне проблемы с wicd и wifi-radar для
подключения к Wi-Fi в Linux, и я решил что пора бы подключаться через
консоль, минуя все эти надстройки в виде программ для подключения. На
самом деле все оказалось еще проще чем я предполагал. И сейчас я покажу
как это делается. А тем кому пока не надоело подключатся через программы
стоит добавить эту заметку в Избранное, в дальнейшем пригодиться.
Подключаемся к роутеру/точке доступа
Итак, предполагаем что подключение происходит с шифрованием WPA2, так
как сейчас это самое популярное и наиболее безопасное решение, чем к
примеру устаревший WPA.
Для начала посмотрим все ли в порядке с нашими устройствами:
# ifconfig
eth0 Link encap:Ethernet HWaddr e4:11:5b:f2:cc:4a
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
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:1131 errors:0 dropped:0 overruns:0 frame:0
TX packets:1131 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:299033 (292.0 KiB) TX bytes:299033 (292.0 KiB)
Никакого wlan не видим, смотрим, может он отключен:
# ifconfig -a
eth0 Link encap:Ethernet HWaddr e4:11:5b:f2:cc:4a
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
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:816 errors:0 dropped:0 overruns:0 frame:0
TX packets:816 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:209884 (204.9 KiB) TX bytes:209884 (204.9 KiB)
wlan0 Link encap:Ethernet HWaddr e4:d5:3d:9e:97:bb
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:26410
TX packets:0 errors:882 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:23
Ага, вот и он, наш wlan0, в некоторых исключительных случаях система
его может обозначить как eth2, но не в нашем случае. Если ifconfig -a не
вывел вам информации о беспроводном интерфейсе, значит система не видит
устройство, либо оно отключено хардварно(на панели ноутбука), либо нет
драйвера и устройство не определилось. В таком случае либо включите ваше
устройство и повторите команду, либо переходите к установке драйвера.
Установку я описывал в статьях:
Debian GNU\Linux: Broadcom Wi-Fi drivers в Compaq Presario CQ57
Broadcom драйвера wifi в Linux ядрах версий 3.4 и 3.5
Итак, зная наш интерфейс мы находим наш роутер или точку подключения:
#iwlist wlan0 scanning | grep -i essid
ESSID:"TP-LINK_985188"
ESSID:"Beryozka"
ESSID:"Tenda_18B2F8"
Видим наш "TP-LINK_985188".
Дальше, для WPA2 нам нужно создать запись соответствующую ESSID и
Пароль доступа, для этого используем пакет программ wpasupplicant, если у
вас не установлен, нужно установить:
# apt-get install wpasupplicant
Используем ее для генерации записи подключения:
# wpa_passphrase TP-LINK_985188 наш_пароль_установленный_на_роутере
Получаем сгенерированную запись:
network={
ssid="TP-LINK_985188"
psk=b8530ddba3a3625b9336be805da8cfb5f2d67d0e776d5ffd2f38b3f11b18a404
}
Открываем файл где храняться такие записи и добавляем нашу сгенерированную в него:
nano /etc/wpa_supplicant/wpa_supplicant.conf
Сохраняем и закрываем.
Осталось только подключиться, что мы и делаем:
wpa_supplicant -D wext -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf -B
В дальнейшем нам нужно только использовать последнюю команду для подключения к этому роутеру.
Настройки сети
Подключиться по Wi-Fi не сложно, но это еще не все, нужно
получить/указать свои клиентские настройки для использования сети. Если
ваш роутер раздает настройки автоматически то просто введите команду:
#dhclient wlan0
Если же не раздает, пропишем их вручную, введите команды:
ifconfig wlan0 ip-адресс netmask сетевая_маска
И добавляем шлюз:
route add default gw 192.168.1.1
последний IP адрес стоит по умолчанию для большинства роутеров, если у вас другой то введите его.
Все, как видите ничего сложного =)