Здесь я уже писал о том, что на моём ноутбуке Asus M5200AE всё играет и поёт. А не так давно, в связи с приобретением Nokia N800, потребовалось настроить WiFi в Linux. Тут я вспомнил, настройка WiFi прошла как-то слишком просто - сейчас, думаю, с полпинка всё и настрою. Полпинка вылились в небольшое пешее эротическое путешествие со счастливым концом :-)
На всякий случай, в BIOS на Asus M5200AE можно попасть с помощью кнопки <F2> при загрузке. Если же мы хотим увидеть меню выбора загрузочных устройств (Boot Menu), нужно нажать кнопку <ESC> при появлении экрана BIOS. Доступны варианты загрузки с USB drive, CD-ROM и жёсткого диска.
Настройка WiFi в Linux на примере Intel PRO/Wireless 2200Адаптер от Интел, так что проблем быть по определению не должно. Их, собственно, и нет: качаем firmware отсюда, распаковываем и кидаем её в /usr/share/firmware
Как говорят здесь, WLAN works with the driver ipw2200 from IPW2200's homepage. To use it with 2.6.13, you need these patches:
ieee80211-for-2.6.13
ipw2200-for-2.6.13
ipw2200-suspend2-fix
But still, there is a problem with the RF-Kill switch. According to /sys/bus/pci/drivers/ipw2200/0000:01:05.0/rf_kill, it is hardware-controlled, but Fn+F2 does not do anything. The driver from the project RFSwitch does not work either.
Кроме того, следует поставить пакеты для работы с беспроводными сетями:
aptitude install wireless-tools, kwifimanager, kwirelessmonitor-net kwirelessmonitor kwrapperА так же ставим пакеты для работы с ACPI, если они ещё не установлены:
aptitude install acpi-support acpid laptop-mode-toolsПосле этого у вас будет запущен демон acpid и в /etc/acpi добавится много полезных и нужных скриптов.
И если всё правильно сделано, то при загрузке в логах будет видно вот что:
ieee80211_crypt: registered algorithm 'NULL'Всё здорово, и вроде как работает, но смущают строчки, которые я выделил красным. Что за Kill Switch и почему нельзя подключиться к сети, если он включён?
ieee80211: 802.11 data/management/control stack, 1.1.14
ieee80211: Copyright (C) 2004-2005 Intel Corporation
ipw2200: Intel(R) PRO/Wireless 2200/2915 Network Driver, 1.1.3dmprq
ipw2200: Copyright(c) 2003-2006 Intel Corporation
ACPI: PCI Interrupt 0000:01:05.0[A] -> GSI 18 (level, low) -> IRQ 17
ipw2200: Detected Intel PRO/Wireless 2200BG Network Connection
ipw2200: Radio Frequency Kill Switch is On:
Kill switch must be turned off for wireless networking to work.ipw2200: Detected geography ZZM (11 802.11bg channels, 0 802.11a channels)
Аппаратный убийца радиопередатчика
Есть такая комбинация клавиш на ноутбуке, которая включает и выключает радиопередатчик wifi-чипа. Эта комбинация называется "Kill Switch" - если вы не нажали эти клавиши и не включили передатчик, никакие ваши шаманства не помогут.
Проверяется это так: в /proc должен быть файлик с названием rf_kill. Лежать он может в директории, в которой находятся сведения о беспроводной карте. Для того, чтобы проверить положение Kill Switch, выводим его содержимое:
# cat /sys/bus/pci/drivers/ipw2200/0000\:01\:05.0/rf_killСогласно документации, имеем:
2
rf_kill
read -
0 = RF kill not enabled (radio on)
1 = SW based RF kill active (radio off)
2 = HW based RF kill active (radio off)
3 = Both HW and SW RF kill active (radio off)
Всё, аппаратный переключатель включён, радио выключено. Это видно и в выводе iwconfig:
eth3 radio off ESSID:"virens"
Mode:Ad-Hoc Frequency:2.412 GHz Cell: Not-Associated
Bit Rate:0 kb/s Tx-Power=off Sensitivity=8/0
Retry limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
Link Quality:0 Signal level:0 Noise level:0
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
Как правило, комбинация для включения\отключения Kill Switch - Fn+F2 но у вас она может быть другой.
Для того, чтобы она работала, нужно, чтобы в ядре была включена поддержка ACPI, причём само ACPI монолитно, а драйверы для событий - модульно. При этом должна быть выключена поддержка Asus Extras (если у вас ноутбук Asus, конечно).
Странно, но именно так - поддержка дополнительных возможностей должна быть отключена, чтобы заработала единственная кнопка Fn+F2. Необычно, но медицинский факт - с ней не работает...Если у вас ядро дистрибутивное и там всё включено - я очень за вас рад, можете это пропустить. Тем, кто собирает ядра под свои машины - шпаргалка.
Итак, в ядре должно быть:
Power management options (ACPI, APM) --->
[*] Power Management support ---->Теперь идём дальше и включаем поддержку Radio Frequency Kill Switch
[*] ACPI Support:<М> AC Adapter <М><М> Battery <М> Button <М> Video <М> Fan <М> Processor <--- в положении ВЫКЛЮЧЕНО! Thermal Zone
< > ASUS/Medion Laptop Extras
Networking --->
[*] Networking support -->Improved wireless configuration API <М>
--- Wireless extensions<М> Generic IEEE 802.11 Networking Stack (mac80211)
[ ] Enable debugging output<М> Generic IEEE 802.11 Networking Stack
[ ] Enable full debugging output
--- IEEE 802.11 WEP encryption (802.1x)
<М> IEEE 802.11i CCMP support
<М> IEEE 802.11i TKIP encryption
Software MAC add-on to the IEEE 802.11 networking stack
[ ] Enable full debugging output
Там же, в Networking, включаем:
<*> RF switch subsystem support --->Наверняка потребуется NAT для того, чтобы беспроводные устройства могли выходить в Интернет по проводному \ модемному соединению. Поэтому включаем всё, что относится к NAT и Masquerading:
<*> Input layer to RF switch connector
Networking --->
[*] Networking support -->Приведённые настройки - не догма, а руководство к действию. Но всё, что касается NAT и Masquerade включать обязательно.
Networking options --->
[*] Network packet filtering framework (Netfilter) --->
Core Netfilter Configuration --->
<*> Netfilter netlink interface
...
<*> Netfilter connection tracking support
IP: Netfilter Configuration --->
<*> IPv4 connection tracking support (required for NAT)
[*] proc/sysctl compatibility with old connection tracking
<*> IP tables support (required for filtering/masq/NAT)
<*> IP range match support
<*> TOS match support
<*> recent match support
<*> ECN match support
<*> AH match support
<*> TTL match support
<*> Owner match support
<*> address type match support
<*> Packet filtering
<*> REJECT target support
<*> LOG target support
<*> ULOG target support
<*> Full NAT
<*> MASQUERADE target support
<*> REDIRECT target support
<*> NETMAP target support
<*> SAME target support
...
<*> Packet mangling
<*> TOS target support
<*> ECN target support
<*> TTL target support
Идём дальше, нам нужно включить поддержку нашей интеловской карты. Нужен раздел в корне под названием Device Drivers, оттуда мы продолжим успешное наступление на беспроводные сети.
Device Drivers ---->
Network device support --->
[*] Network device support
.................
Wireless LAN --->
[*] Wireless LAN (IEEE 802.11)
<М> Intel PRO/Wireless 2200BG and 2915ABG Network Connection <------- это наш драйвер, его делаем модулем.
[*] Enable promiscuous mode
--- Enable radiotap format 802.11 raw packet support
[*] Enable creation of a RF radiotap promiscuous interface
[*] Enable QoS support
[*] Enable full debugging output in IPW2200 module.
Включаем поддержку загрузки firmware:
Device Drivers ---->
Generic Driver Options ---->
Hotplug firmware loading support
Должно уже быть либо отмечено, либо поставлен прочерк - значит, всё в порядке, загрузка firmware обеспечивается.
Для шифрования соединения нужна поддержка алгоритмов шифрования:
Cryptographic options ->
<*>ARC4 cipher algorithm
<*>Michael MIC keyed digest algorithm
<*>AES cipher algorithms (i586)
И ещё вот это:
Library routines ->
<*>CRC32 functions
Ну и наконец включаем поддержку LED-ов, чтобы лампочками можно было мигать при включении WiFi. Там же, в Device Drivers, ищем внизу:
Device Drivers ---->
LED devices --->Поздравляем себя, ещё раз проверяем, не пропустили ли от счастья какие-нибудь подлые грабли, собираем ядро, ставим его в загрузку, перезагружаемся.
[*] LED Support
<*> LED Class Support
--- LED drivers
--- LED Triggers
Ключ на старт!Всё готово для нашего беспроводного счастья. Собственно, оно должно наступить ещё при загрузке: ядро обнаружит ACPI-возможности ноутбука и включит лампочку беспроводного соединения. Подгрузится модуль ipw2200, ieee80211 и ieee80211_crypt.
Теперь нажимаем Fn+F2 и смотрим, загорается \ потухает ли лампочка. Если да - мои поздравления, аппаратный переключатель в наших руках. Снова проверяем состояние Kill Switch, выводим его содержимое:
# cat /sys/bus/pci/drivers/ipw2200/0000\:01\:05.0/rf_killВсё, радио включено. Теперь смотрим вывод:
0
# iwconfigЗаработало! Остался сущий пустяк - настроить сеть. Для начала лучше настроить простую Ad-Hoc сеть (то есть точка-точка). Лучше назначить сетевые адреса, и, если сеть маленькая - статические.
lo no wireless extensions.
eth1 no wireless extensions.
Warning: Driver for device eth3 has been compiled with version 22
of Wireless Extension, while this program supports up to version 20.
Some things may be broken...
eth3 unassociated ESSID:"virens"
Mode:Ad-Hoc Frequency=2.412 GHz Cell: Not-Associated
Bit Rate:0 kb/s Tx-Power=20 dBm Sensitivity=8/0
Retry limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
Link Quality:0 Signal level:0 Noise level:0
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
В /etc/network/interfaces пишем что-то вроде:
auto eth3
iface eth3 inet static
address 10.106.146.1
netmask 255.255.255.0
wireless-mode ad-hoc
wireless-channel 1
wireless-rate auto
wireless-essid virens
Теперь настраиваем саму карту:
iwconfig eth3 mode Ad-Hoc channel 1 essid virensВсё, теперь у вас есть простая одноранговая беспроводная сеть с идентификатором virens (настройка сети приведена, естественно, на моём рабочем примере). Прочитать о том, что такое essid и прочие заумные тонкости беспроводной связи можно в этой изумительной статье.
17 комментариев: |высказаться!| RSS-лента дискуссии.|
Скажите, на вашем ноутбуке hibernate заработал ? SwSusp2 ставили, или через bios засыпает
Спасибо за статью. Все не решался попробовать настроить сеть между Nokia N80 и HP Compaq nx6325, правда там карта Broadcom. Посмотрим, что получится.
Конечно чуток оффтоп... но раз тема по Ви-Фи, то спрошу...
Некороторые дистрибутивы без встренной поддержки Ви-Фи (например Gentoo или ещё какой-нить) вырубают аппаратно мой Wi-Fi встроенный адаптер Intel Wireless 3945abg, т.е. когда запускаешь Live-CD, а потом перезагружаешься, то ни Linux, ни Windows по переключателю на теле ноута не могут включить адаптер.
Использую: Acer 4202WLMi, Ubuntu Linux и ХРень.
Где капать проблему?
дистрибутив OpenSuSE, Acer5024, IbmT40, Asus A8V+Ralink на машине + Asus wl550ge (на олеговой прошивке с Broadcom-ом) в качестве роутера. как-то всё тихо-мирно без эксцессов на дефолтном ядре...
Некороторые дистрибутивы без встренной поддержки Ви-Фи (например Gentoo или ещё какой-нить) вырубают аппаратно мой Wi-Fi встроенный адаптер
Звучит как что-то из области фантастики. Я достаточно много имел дело с wireless, но про такое не слыхал.
2 Анонимный пишет...
Скажите, на вашем ноутбуке hibernate заработал ?
Мне это не нужно, поэтому не проверял.
2 gio пишет...
Все не решался попробовать настроить сеть между Nokia N80 и HP Compaq nx6325
У меня получилось, правда, между ноутом и N800. Всё работает. Скоро будет пост.
2 Last~Exile пишет...
Некороторые дистрибутивы без встренной поддержки Ви-Фи (например Gentoo или ещё какой-нить) вырубают аппаратно мой Wi-Fi встроенный адаптер
Это смахивает на фантастику, как ниже говорят. Только если вы вырубите одновременно и программный ключ, и аппаратный.
2 sda пишет...
как-то всё тихо-мирно без эксцессов на дефолтном ядре...
Мне вайфай не был нужен, и я его поотрубал. И ядро у меня самосборное.
2 Ilya Brik пишет...
Некороторые дистрибутивы без встренной поддержки Ви-Фи (например Gentoo или ещё какой-нить) вырубают аппаратно мой Wi-Fi встроенный адаптер
Звучит как что-то из области фантастики.
Мне тоже это кажется сомнительным. Либо прошивка кривая, либо у ноута неправильный BIOS с кривой поддрежкой ACPI.
Так вот именно, что ни тыкай этот аппаратный ключ, всё равно карточка не запускается. Хотя огонёчек загорается.
В Windows это звучит как "No Wireless Device", когда запускаешь аппаратным ключём карточку.
2 Last~Exile пишет...
Так вот именно, что ни тыкай этот аппаратный ключ, всё равно карточка не запускается. Хотя огонёчек загорается.
А в /proc меняется значение rf_kill или нет? acpid установлен? В ядре поддержка acpi в каком состоянии?
В Windows это звучит как "No Wireless Device", когда запускаешь аппаратным ключём карточку.
Это мне ни о чём не говорит. Нужны логи системы. Но это лучше в личку или (ещё лушче,т.к. я сейчас загружен) на forum.ubuntu.ru
virens
спасибо, попробую покопаться в данных направлениях
Спасибо за статью. Сделал всё, как здесь написано... но есть некоторые проблемы.
По dmesg появилось следующее:
net eth2: device_rename: sysfs_create_symlink filed (-17)
А при нажатии кнопки wi-fi на передней панели ноута:
ipw2200: Filed to send CARD_DISABLE: Command timed out.
Ноут Acer TravelMate 4151LCi. Дистр Debian Etch r0, ядро 2.6.23, собранное самостоятельно в соответствии с рекомендациями в этом блоге.
Спасибо за заметку, помогла - по аналогии настроил i3945ABG в буке FS Amilo Pro V3205 и дистре Slackware 12.
2 Last~Exile комментирует...
спасибо, попробую покопаться в данных направлениях
Главное, чтобы у вас не было проблем с ACPI.
2 kEVG комментирует...
По dmesg появилось следующее:
net eth2: device_rename: sysfs_create_symlink filed (-17)
А при нажатии кнопки wi-fi на передней панели ноута:
ipw2200: Filed to send CARD_DISABLE: Command timed out.
Ноут Acer TravelMate 4151LCi.
Скорее всего, вам нужно обновить драйвера для поддержки дополнительных возможностей ноутбука. Что-то похожее на acpi4asus.
2 Саша комментирует...
Спасибо за заметку, помогла - по аналогии настроил i3945ABG в буке FS Amilo Pro V3205 и дистре Slackware 12.
Документация по Линукс тем и хороша, что советы портируемы: что получилось в одном дистрибутиве, то получится в другом :-)
Вопрос на засыпку,
asus F3Jc, ubuntu 8.04, ядро дефолтное
Карта определилась нормально, коннектится к роутеру ADSL без проблем да и к любому WiFi роутеру (проверял специально), проблемы начинаются при попытке связаться с виндовой машиной. Безопасную сеть просто игнорит, к защищенной запрашивает пароль, а потом игнорит. Где грабли? в никсах новичек, так что если можно то в ответах указывайте в какой файл править и где он лежит
А что делать неудачникам, у которых на просторах /proc нету ничего похожего на rf_kill (при том модуль rfkill успешно загружен)
как быть, если устройство перечислено в списке по команде lspci, но не работает?
У меня это вай-фай, звуковая карта, инфракрасный порт, модем, и все адаптеры, которые ставятся в слоты PCMCIA.
попробовал вставить программы но вот что получил:
T7200:/home/lm# aptitude install wireless-tools, kwifimanager, kwirelessmonitor-net kwirelessmonitor kwrapper
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
Reading task descriptions... Done
Couldn't find any package whose name or description matched "wireless-tools,"
Couldn't find any package whose name or description matched "kwifimanager,"
Couldn't find any package whose name or description matched "kwirelessmonitor-net"
Couldn't find any package whose name or description matched "kwrapper"
Couldn't find any package whose name or description matched "wireless-tools,"
Couldn't find any package whose name or description matched "kwifimanager,"
Couldn't find any package whose name or description matched "kwirelessmonitor-net"
Couldn't find any package whose name or description matched "kwrapper"
The following NEW packages will be installed:
kwirelessmonitor
наверное, надо ещё узнать список репозиториев, которыми вы пользуетесь, кроме тех, что были в ЕТН 4.0 по умолчанию?
2 Саша
у меня такойже ноутбук (FS Amilo Pro V3205), никак не получается настроить.. не моги бы Вы мне с этим помоч?
(icq: 250-991-201, jabber: mrded@gromozeka.org)
Отправить комментарий