The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Настройка беспроводного соединения в Debian GNU/Linux
Действия по настройке Wi-Fi проводились в стабильном дистрибутиве Debian GNU/Linux 6.0.4

Ранее длительное время я работал с модулем NDISwrapper, который удавалось
запускать с поддержкой WEP шифрования. После того как WEP шифрование было
принято считать небезопасным, под рукой оказалось решение под названием
wpasupplicant позволяющее работать с WPA и WPA2 методами шифрования в
беспроводных сетях, которое было взято на вооружение в совокупности с
драйверами b43 - в них на этот момент уже поддерживались Broadcom устройства.
Все прекрасно работало пока не было принято решение вернуться к стабильному
дистрибутиву после многолетних экспериментов работы в среде sid, что повлекло
за собой переустановку и необходимость перенастройки системы и написания данной инструкции.

Для начала необходимо убедиться в присутствии беспроводного адаптера - команда lspci

   lspci

В моем случае обнаружились ethernet и wifi сетевые карты:

   02:00.0 Ethernet controller: Broadcom Corporation NetLink BCM5787M Gigabit Ethernet PCI Express (rev 02)
   04:00.0 Network controller: Broadcom Corporation BCM4312 802.11b/g LP-PHY (rev 01)

Немного погуглив удалось найти информацию на английском языке
http://wiki.debian.org/bcm43xx - там есть список с описанием модулей, в каких
ядрах и версиях системы они работают а где нет. А также инструкция по установке.

Оказалось на сегодняшний день есть несколько разновидностей драйверов для
Linux: b43, b43legacy, brcm80211, rndis_wlan, wl, наряду с которыми все так же
остается возможность запускать WINDOWS-драйвер сетевых карт при помощи
NDISwrapper модуля.

Далее просто приведу шаги выполненные по вышеприведенной инструкции:

1. Необходимо добавить contrib non-free части в строку с источником установки,
отредактировав файл /etc/apt/sources.list

   #строка с источником установки пакетов системы
   deb http://ftp.us.debian.org/debian squeeze main contrib non-free

2. После добавления новых источников установки необходимо обновить список
доступных пакетов и установить утилиту wireless-tools

    aptitude update && aptitude install wireless-tools

3. Далее следует установка самих драйверов, в зависимости от типа вашей сетевой
карты необходимо выбрать правильный драйвер, в моем случае это устройство
BCM4312 802.11b/g LP-PHY - как показала команда lspci, поэтому я выполняю
команду устанавливающую firmware-b43-lpphy-installer. Для владельцев других
сетевых карт соответственно:

802.11b/g BCM4306 revision 3, BCM4311, BCM4318 - устанавливаем firmware-b43-installer;
802.11b BCM4301, 802.11b/g BCM4306 revision 2 chipset - устанавливаем firmware-b43legacy-installer;


   aptitude install firmware-b43-lpphy-installer
   aptitude install firmware-b43-lpphy-installer


4. Проверим что модуль загрузился:

   # lsmod | grep b43

   b43                   132415  0
   rng_core                2178  1 b43
   mac80211              122874  1 b43
   cfg80211               86965  2 b43,mac80211
   ssb                    33578  1 b43
   led_class               1757  3 b43,acer_wmi,sdhci
   mmc_core               38277  3 b43,sdhci,ssb
   pcmcia                 16194  2 b43,ssb
   pcmcia_core            20414  5  b43,yenta_socket,rsrc_nonstatic,ssb,pcmcia

Модуль b43 - загружен успешно, если у вас он окажется не загружен, можно
попробовать загрузить его командой modprobe b43, в случае если он загружен но
не отрабатывает корректно - можно попробовать сначала его выгрузить командой
modprobe -r b43 после чего загрузить заново.

5. Драйверы установлены и загружены теперь можно проверить наличие wifi карты в
списке сетевых устройств утилитой iwconfig:


   # iwconfig
   lo        no wireless extensions.
   eth0      no wireless extensions.
   irda0     no wireless extensions.
   wlan0     IEEE 802.11bg  ESSID:off/any
        Mode:Managed  Frequency:2.457 GHz  Access Point: Not Associated
         Tx-Power=27 dBm
         Retry  long limit:7   RTS thr:off   Fragment thr:off
         Encryption key:off
         Power Management:off

   pan0      no wireless extensions. 

Видно что в списке сетевых адаптеров присутствует wlan0 - устройство
распознанное как IEEE 802.11bg, это и есть ни что иное как наш wifi адаптер.

6. Далее необходимо сконфигурировать сетевые настройки в системе для нашего
wifi адаптера. Для этого редактируем файл настройки сетевых подключений
/etc/network/interfaces добавляя опции новой wifi сетевой карты:

   #my Wi-fi connection
   auto wlan0
   iface wlan0 inet dhcp

7. Стартуем новый сетевой интерфейс - ifup wlan0

   # ifup wlan0

   Internet Systems Consortium DHCP Client 4.1.1-P1
   Listening on LPF/wlan0/00:00:00:00:00:00
   Sending on   LPF/wlan0/00:00:00:00:00:00
   Sending on   Socket/fallback
   DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 7
   DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 10
   DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 7
   DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 12
   DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 8
   DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 15
   DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 2
   No DHCPOFFERS received.
   No working leases in persistent database - sleeping.

После выполнения данной команды система попытается получить адрес по dhcp, в
результате чего мы увидим что адрес ей получить не удалось так как не указана
точка доступа, но при этом wlan0 интерфейс появится в списке поднятых
интерфейсов отображаемых при просмотре ifconfig Затем уже можно будет выполнять
сканирование пространства на наличие точек доступа. Попытки просканировать
пространство с неподнятым интерфейсом выдадут сообщение:"wlan0     Interface
doesn't support scanning : Network is down"

8. Проверить поднялся ли wlan0 интерфейс можно командой ifconfig

   #ifconfig

   wlan0     Link encap:Ethernet  HWaddr 00:00:00:00:00:00
         UP BROADCAST MULTICAST  MTU:1500  Metric:1
         RX packets:408 errors:0 dropped:0 overruns:0 frame:0
         TX packets:62 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:1000
         RX bytes:26662 (26.0 KiB)  TX bytes:6305 (6.1 KiB)

9. Если интерфейс поднялся мы можем просканировать пространство на наличие WIFI
точек доступа командой - iwlist scanning

   # iwlist scanning

   lo        Interface doesn't support scanning.
   eth0      Interface doesn't support scanning.
   irda0     Interface doesn't support scanning.
   pan0      Interface doesn't support scanning.
   wlan0     Scan completed :
         Cell 01 - Address: 00:00:00:00:00:00
                   Channel:13
                   Frequency:2.457 GHz (Channel 13)
                   Quality=70/70  Signal level=-3 dBm
                   Encryption key:on
                   ESSID:"myhome"
                   Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 6 Mb/s; 9 Mb/s
                             11 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s
                             48 Mb/s; 54 Mb/s
                   Mode:Master
                   Extra:tsf=0000003f190b259c
                   Extra: Last beacon: 104ms ago
                   IE: Unknown: 00036E6574
                   IE: Unknown: 010C82848B8C12969824B048606C
                   IE: Unknown: 03010A
                   IE: Unknown: 0706555320010B1E
                   IE: Unknown: 2A0100
                   IE: Unknown: 2F0100
                   IE: IEEE 802.11i/WPA2 Version 1
                       Group Cipher : TKIP
                       Pairwise Ciphers (1) : TKIP
                       Authentication Suites (1) : PSK
                   IE: Unknown: DD090010180200F0000000

Результаты сканирования показали наличие точки доступа под названием -
ESSID:"myhome", работающей на канале - Channel:13, в режиме - Mode:Master, с
включенным шифрованием - Encryption key:on, тип шифрования - IE: IEEE
802.11i/WPA2 Version 1.

10. Устанавливаем поддержку WPA/WPA2 шифрования поскольку наша точка доступа использует WPA2

   apt-get install wpasupplicant

11. Конфигурируем wpasupplicant,  Редактируем файл /etc/network/wpa-psk-tkip.conf

   # WPA-PSK/TKIP

   ctrl_interface=/var/run/wpa_supplicant

   network={
       ssid="myhome"
       proto=WPA2 RSN
       key_mgmt=WPA-PSK
       pairwise=CCMP TKIP
       group=CCMP TKIP
       psk="пароль к точке доступа"
   }

В моем случае конфиг выглядит именно таким образом, возможно у вас он будет
отличаться если например будет отличаться метод шифрования, более подробно с
опциями конфиг файла для wpasuplicant можно ознакомиться при помощи команды -
man wpa_supplicant, гугла и админской интуиции.

12. Донастраиваем сетевое соединение, дописываем в конфиге /etc/network/interfaces новые строки:

   # The primary network interface
   #allow-hotplug eth0
   #auto eth0
   #iface eth0 inet dhcp
 
   #my Wi-fi connection
   auto wlan0
   iface wlan0 inet dhcp
   wireless-channel 10
   wireless-mode Master
   #WPA-TKIP
   wpa-conf /etc/network/wpa-psk-tkip.conf

Как видно, я специально закомментировал знаком # eth0 интерфейс через который
был подключен интернет, так как после рестарта сетевых соединений хочу чтобы
интернет соединялся только через wlan0 интерфейс. Затем можно отключить eth0
интерфес командой "ifconfig eth0 down".


13. Перезагружаем сетевые соединения командой /etc/init.d/networking restart


   # /etc/init.d/networking restart

   Running /etc/init.d/networking restart is deprecated because it may not enable again some interfaces ... (warning).
   Reconfiguring network interfaces...Ignoring unknown interface eth0=eth0.
   Internet Systems Consortium DHCP Client 4.1.1-P1

   Listening on LPF/wlan0/00:00:00:00:00:00
   Sending on   LPF/wlan0/00:00:00:00:00:00
   Sending on   Socket/fallback
   DHCPRELEASE on wlan0 to 192.168.13.1 port 67
   Error for wireless request "Set Mode" (8B06) :
      SET failed on device wlan0 ; Invalid argument.

   Internet Systems Consortium DHCP Client 4.1.1-P1
   Listening on LPF/wlan0/00:00:00:00:00:00
   Sending on   LPF/wlan0/00:00:00:00:00:00
   Sending on   Socket/fallback
   DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 4
   DHCPOFFER from 192.168.13.1
   DHCPREQUEST on wlan0 to 255.255.255.255 port 67
   DHCPACK from 192.168.13.1
   bound to 192.168.13.13 -- renewal in 37509 seconds.
   done.


14. Проверим что все работает

Посмотрим список поднятых интерфейсов:

   #ifconfig
   
   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:76 errors:0 dropped:0 overruns:0 frame:0
         TX packets:76 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:0
         RX bytes:5802 (5.6 KiB)  TX bytes:5802 (5.6 KiB)

   wlan0     Link encap:Ethernet  HWaddr 00:00:00:00:00:00
         inet addr:192.168.13.13  Bcast:192.168.13.255  Mask:255.255.255.0
         inet6 addr: fe80::21f:e1ff:fe25:4fd4/64 Scope:Link
         UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
         RX packets:5 errors:0 dropped:0 overruns:0 frame:0
         TX packets:11 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:1000
         RX bytes:1036 (1.0 KiB)  TX bytes:1640 (1.6 KiB)

Видим поднятые внутренний системный интерфейс Loopback, и наш wifi wlan0
интерфейс, теперь проверим работает ли интернет

   # ping 8.8.8.8
   PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
   64 bytes from 8.8.8.8: icmp_req=1 ttl=54 time=69.8 ms
   64 bytes from 8.8.8.8: icmp_req=2 ttl=54 time=69.6 ms
   64 bytes from 8.8.8.8: icmp_req=3 ttl=54 time=69.5 ms
   64 bytes from 8.8.8.8: icmp_req=4 ttl=54 time=69.5 ms
   64 bytes from 8.8.8.8: icmp_req=5 ttl=54 time=69.6 ms

Google пингуется отлично!

Посмотрим таблицу маршрутизации системы:

   # ip r
   192.168.13.0/24 dev wlan0 proto kernel scope link src 192.168.13.13
   default via 192.168.13.1 dev wlan0

Понимаем что все работает.

На этом я завершаю заметку о том как настраивать Wi-Fi в Linux. Надеюсь что
данная информация будет Вам полезна, а поднять шифрованное wifi соединение при
помощи родных драйверов Linux теперь не для кого не составит большого труда.

Присылайте Ваши вопросы, дополнения, исправления к данному руководству на мой
e-mail: alex.golovin@mail.ru, дополняйте комментариями к статье-совету ниже на сайте.
Автор: Александр Головин.

Полезные ссылки по теме:
   http://wiki.debian.org/Broadcom
   http://wiki.debian.org/bcm43xx
   http://wireless.kernel.org/en/users/Drivers/b43#Known_issues
 
11.05.2012 , Автор: screenn
Ключи: wifi, debian, linux, wep, wpa, wpa2, wpasupplicant / Лицензия: CC-BY
Раздел:    Корень / Администратору / Сетевая подсистема, маршрутизация / Wifi, настройка беспроводного доступа

Обсуждение [ Линейный режим | Показать все | RSS ]
  • 1.1, VecH (ok), 13:22, 13/05/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Результаты сканирования показали наличие точки доступа под названием -
    > ESSID:"myhome", работающей на канале - Channel:13, в режиме - Mode:Master

    тут канал № 13

    >   iface wlan0 inet dhcp
    >   wireless-channel 10
    >   wireless-mode Master

    А здесь вы уже используете канал № 10

    странно все это :)

     
     
  • 2.2, screenn (ok), 00:03, 14/05/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Все верно, номер канала был изменен по известной причине. Просто автору нравится число 13, это культовая статья, присмотритесь к цифрам и вы увидите что это число появляется не только как номер канала :).
     

  • 1.3, anonymous (??), 10:23, 16/05/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Wpa-supplicant можно вообще не конфигурировать, только поправить interfaces: http://wiki.debian.org/WiFi/HowToUse#Command_Line
     
     
  • 2.4, screenn (ok), 11:18, 16/05/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Ты хотел сказать скорее конфигурить, но только в interfaces? Потому как в обоих случаях будет использоватья все тот же wpasupplicant. Можно, так тоже будет работать.
     

  • 1.5, screenn (ok), 12:01, 16/05/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    В документации к Debian GNU/Linux есть пример с использованием wpasupplicant в конфиге /etc/network/interfaces. Просмотреть можно так - gzip -d -c /usr/share/doc/wpasupplicant/README.modes.gz |less
     
     
  • 2.6, Andrey Mitrofanov (?), 12:09, 16/05/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Просмотреть можно так - gzip -d -c /usr/share/doc/wpasupplicant/README.modes.gz |less

    ...или так zless /usr/share/doc/wpasupplicant/README.modes.gz

     

  • 1.7, Николай (??), 15:35, 17/05/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Если предположить, что карточка опозналась, то всё очень просто:

    apt-get install wpasupplicant

    /etc/network/interfaces
    auto wlan0
    iface wlan0 inet dhcp
    wpa-ssid wifiname
    wpa-psk superpassword

    /etc/init.d/networking restar

     
     
  • 2.8, screenn (ok), 16:05, 17/05/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Не совсем. Еще нужно предположить что тип шифрования соответствует указанному в конфиге.
     
     
  • 3.9, Николай (??), 01:14, 19/05/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Wpasupplicant самостоятельно его определяет. Приведенный конфиг взят с работающей конфигурации.
     
     
  • 4.10, screenn (ok), 00:20, 20/05/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Wpasupplicant самостоятельно его определяет. Приведенный конфиг взят с работающей конфигурации.

    Я не могу сказать точно, определяет ли он все существующие типы шифрования в беспроводных сетях. Было бы неплохо если перечислите какие конкретно удалось проверить и все ли он определил автоматом?


     
     
  • 5.12, anonymous (??), 10:46, 22/05/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Все, что пробовал, он определил.
     
  • 4.17, roltd (ok), 21:13, 24/12/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Николай, все верно, вышло проще по Вашей методике.
     

  • 1.11, Andrey Mitrofanov (?), 14:22, 20/05/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Действия по настройке Wi-Fi проводились в стабильном дистрибутиве Debian GNU/Linux 6.0.4
    > не безопасным, под рукой оказалось решение под названием wpasupplicant позволяющее работать
    > с WPA и WPA2 методами шифрования в беспроводных сетях, которое было

    Кстати, в соседней новости  про альфу D-I Debian 7.0 досужие анонимы http://www.opennet.ru/openforum/vsluhforumID3/84524.html#85 интересуются WPA2. В инсталяторе то есть. Никто не? ...

     
  • 1.13, enotbear (?), 17:18, 22/07/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    как можно обьяснить такое явление- соединение иногда устанавливается, иногда нет. После загрузки ОС может потребоваться от 3 до 10 попыток подключения (имеется в виду повторный запуск nework-managera), пока соединение установится. Есть ли еще какие-то настройки ?   на этой же машине стоит убунту, так соединяется после загрузки за 6 секунд. Когда нет соединения, состояние сети выглядит так:


    root@debian:/home/lm# iwconfig
    wlan0     IEEE 802.11bgn  ESSID:"onlime 151"  
              Mode:Managed  Frequency:2.447 GHz  Access Point: F8:C0:91:14:62:F7  
              Bit Rate=150 Mb/s   Tx-Power=20 dBm  
              Retry  long limit:7   RTS thr=2347 B   Fragment thr:off
              Encryption key:off
              Power Management:off
              Link Quality=50/70  Signal level=-60 dBm  
              Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
              Tx excessive retries:0  Invalid misc:370   Missed beacon:0




    настораживает только число неудавшихся попыток:370

    Что можно отрегулировать, так как очевидно что это неусточивость соединения виновата. пробовал iwconfig wlan0 txpower 25dBm но ничего не изменилось, интересно было бы узнать ваше мнение

     
  • 1.14, enotbear (?), 20:31, 22/07/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    как можно обьяснить такое явление- соединение иногда устанавливается, иногда нет. После загрузки ОС может потребоваться от 3 до 10 попыток подключения (имеется в виду повторный запуск nework-managera), пока соединение установится. Есть ли еще какие-то настройки ?   на этой же машине стоит убунту, так соединяется после загрузки за 6 секунд. Когда нет соединения, состояние сети выглядит так:


    root@debian:/home/lm# iwconfig
    wlan0     IEEE 802.11bgn  ESSID:"onlime 151"  
              Mode:Managed  Frequency:2.447 GHz  Access Point: F8:C0:91:14:62:F7  
              Bit Rate=150 Mb/s   Tx-Power=20 dBm  
              Retry  long limit:7   RTS thr=2347 B   Fragment thr:off
              Encryption key:off
              Power Management:off
              Link Quality=50/70  Signal level=-60 dBm  
              Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
              Tx excessive retries:0  Invalid misc:370   Missed beacon:0




    настораживает только число неудавшихся попыток:370

    Что можно отрегулировать, так как очевидно что это неусточивость соединения виновата. пробовал iwconfig wlan0 txpower 25dBm но ничего не изменилось, интересно было бы узнать ваше мнение

     
     
  • 2.15, screenn (ok), 14:08, 25/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Возможно проблемы с оборудованием, какая wifi карта / драйвер были выбраны?


    >[оверквотинг удален]
    >  Signal level=-60 dBm
    >           Rx invalid
    > nwid:0  Rx invalid crypt:0  Rx invalid frag:0
    >           Tx excessive
    > retries:0  Invalid misc:370   Missed beacon:0
    >


    > настораживает только число неудавшихся попыток:370
    > Что можно отрегулировать, так как очевидно что это неусточивость соединения виновата. пробовал
    > iwconfig wlan0 txpower 25dBm но ничего не изменилось, интересно было бы
    > узнать ваше мнение

     

  • 1.16, Артем (??), 01:54, 24/09/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Мегареспект! -Облазил пол инета Везде либо сложно, либо вообще не правильные руководства! По  вашей статье вайфай настроил НАКОНЕЦ ТО! на нетбуке Asus Eee PC с адаптером Atheros AR2427
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру