Wireless Setup (Русский)
From ArchWiki
| i18n |
|---|
| English |
| Italiano |
| Nederlands |
| German |
| 简体中文 |
| Russian |
[edit] Введение
Настройка беспроводного соединения в Archlinux (или в любом другом Linux) состоит из 2-х частей. Первая часть это определение и установка правильного драйвера для вашего устройства. Вторая - выбор метода управления беспроводным соединением. Эта статья описывает обе части, и содержит необходимые ссылки на утилиты управления беспроводными соединениями.
[edit] Часть I: Драйверы для беспроводных устройств
[edit] Первый шаг
- Проверьте где-нибудь, что Linux поддерживает ваше устройство. Вы можете узнать, какая у вас карточка по выводу 'hwdetect --show-net' или lshwd.
- zd1201-основанные карты, например ZyXEL B-220
- wlan-ng поддерживается большинство карт; сначала проверьте там.
- madwifi для чипсетов Atheros (AR5210, AR5211, AR5212 и AR5213)
- rt2x00 project драйвер для Ralink's rt2400, rt2500, и rt2570 чипсетов (beta).
- Ralink Linux Support драйверы для чипсетов Ralink поддерживаемых с производства.
- rt2x00 project для лучшей поддержки драйверов для Ralink ("родные драйвера" на сайте).
- ipw2100 для Intel Pro/Wireless 2100 Mini PCI
- ipw2200 для Intel Pro/Wireless 2200 Mini PCI
- ipw3945 для Intel Pro/Wireless 3945 AB/G Mini PCI-E
- orinoco для некоторых Prism 2-основанных карт
- prism54 для Prism 54-основанных карт
- bcm43xx для Broadcom 43xx-основанных карт (старые)
- b43 для Broadcom 43xx-основанных карт
- Проверьте на Linux Wireless Support ваше устройство или на The Linux Questions hardware compatibility list (HCL), которое также содержит список поддерживаемого оборудования.
- Если оборудование поддерживается только в Windows
- ndiswrapper для оборудования, поддерживаемого только в Windows (некоторые Broadcom, 3com, др.)
- Вам нужны будут .inf и .sys файлы из ваших windows драйверов - смотрите здесь
- Если вы не нашли своего оборудования в списках
- Попробуйте поискать в интернете по названию своего оборудования со словом "linux" - и можете попросить помощи на форуме
- Есть шанс, если ваше оборудование не функционирует под Linux (возможно, это не так)
[edit] Установка
Сперва установите wireless-tools через pacman
pacman -S wireless_tools
Вы не сможете настроить ваше оборудование без этой утилиты.
[edit] Драйверы
Здесь описаны подобности о том, как можно получить драйверы для вашего устройства. Вы можете обнаружить, что для вас есть несколько вариантов, помните, что вы можете найти здесь HCL помощь в выборе лучшего драйвера.
[edit] wlan-ng
pacman -S wlan-ng26 wlan-ng26-utils
Для wlan-ng вам не нужна утилита wireless-tools как сказано выше. Вместо них вам нужны утилиты из пакета wlan-ng26-utils: wlancfg и wlanctl-ng.
[edit] rt2x00
Для чипсетов Ralink (как rt2500,rt61,rt73 др.). Совместимы с wpa_supplicant, используют wext как интерфейс драйвера. Этот драйвер сейчас (в 2.6.24) является частью ядра и может быть загружен вручную например так...
modprobe rt2500pci(замените при необходимости на rt2500pci например, т.е. rt2400pci, rt2500usb, rt61pci, rt73usb)
Для некоторых чипов необходимы прошивки (firmware). Смотри rt2x00 статью wiki.
[edit] RT2500
Для чипсетов Ralink PCI/PCMCIA основанных rt2500 сериях (первое поколение чипов Ralink с поддержкой 802.11g).
pacman -S rt2500
Поддержка стандартной утилиты iwconfig для шифрования WEP соединений, также могут быть использованы другие стандартные утилиты. wpa_supplicant не поддерживает стандартный wext интерфейс. Драйвер поддерживает WPA (использую встроенное шифрование), но не стандартными способами. Разрабатываемая версия wpa_supplicant (0.6.x) включает в себя поддержку специальных технологий и это может негативно сказаться на WPA соединениях, устанавливаемых вручную через iwpriv команды. Смотрите эти инструкции для подробностей. Некоторые применимые методы для RT61 и RT73 ниже.
[edit] RT61
Для PCI/PCMCIA карт, основанных на чипе Ralink следующего поколения 802.11g (включена поддержка проприетарных MIMO функций). Смотри RT61 статью wiki.
[edit] RT73
Для USB устройств, основанных на чипах Ralink следующих поколений 802.11g (включена поддержка проприетарных MIMO функций). Смотри RT73 статью wiki.
[edit] madwifi
pacman -S madwifi
Модуль называется ath_pci. Вам необходимо использовать код региона, когда загружается драйвер MadWifi для использования каналов и использования частот, легальных для вашей страны/региона. Для Нидерландов, например, вы должны загрузить этот модуль так:
modprobe ath_pci countrycode=528
Вы можете проверить настройки, использую команду iwlist. Смотрите man iwlist и CountryCode page on the MadWifi wiki. Для использования этих настроек при загрузке, добавьте следующую строку в /etc/modprobe.conf:
options ath_pci countrycode=528
ATTENTION: Возможно вам придётся удалить код страны/региона если устройство ath0 не будет создано (kernel 2.6.21)!
[edit] ipw2100 and ipw2200
Смотря какой чипсет у вас имеется, используйте следующее:
pacman -S ipw2100-fw
или:
pacman -S ipw2200-fw
Вам необходимо перезагрузиться, чтобы изменения были приняты.
[edit] ipw3945 and ipw4965
Новые драйверы Intel iwlwifi project работают с обоими чипсетами и включены в ядра v2.6.24 и выше. Просто установите прошивки:
pacman -S iwlwifi-3945-ucode
или:
pacman -S iwlwifi-4965-ucode
Если MOD_AUTOLOAD установлено в yes в /etc/rc.conf (так по умолчанию). Просто перезагрузитесь и проверьте, что драйверы работают с помощью ifconfig из терминала. Теперь можно сканировать сети через wlan0.
Если вы хотите, чтобы драйвера загружались вручную при загрузке добавьте их в строку MODULES:
nano /etc/rc.conf
в строке MODULES=(), добавьте iwl3945 или iwl4965 в список, в зависимости от вашего чипсета.
CTRL + X, Y для закрытия и сохранения.
Теперь драйверы должны быть загружены после перезагрузки и при запуске 'ifconfig' из терминала вы увидите, что там появился новый сетевой интерфейс wlan0.
Note: если драйверы iwlwifi, являющиеся "экспериментальными", не работают, знайте, что драйверы NETw4x32 работают отлично через ndiswrapper.
[edit] ipw3945 (Альтернативный метод)
Note: Этот драйвер ipw3945 должен входить в проект Intel's iwlwifi.
pacman -S ipw3945
Это должно установить ipw3945-ucode, ipw3945, и ipw3945d (daemon).
Для инициализации устройства при загрузке отредактируйте...
nano /etc/rc.conf
в строке modules=(), добавьте ipw3945 в список
в строке daemons=(), добавьте ipw3945d в список (он должно быть ПЕРЕД network и dhcdbd/networkmanager в списке)
CTRL + X, Y для закрытия и сохранения.
Модуль ipw3945 должен быть загружен в процессе "Loading Modules.." и "Starting IPW3945d" должен появиться в ходе загрузки демона, и должен присутствовать интерфейс ethX.
Обновление: На моём HP nc6320 Bluetooth не соединяется, пока не выгрузишь модуль ipw3945.
[edit] orinoco
Часть, которая идёт с пакетом ядра и уже должна быть установлена.
[edit] ndiswrapper
Ndiswrapper не настоящий драйвер, но с ним вы можете использовать неродные Linux драйвера для ваших беспроводных устройств. Это очень помогает во многих ситуациях. Для использования его у вас должны быть *.inf файл из windows-драйверов (*.sys файл также должен присутствовать в этой же директории). Для установки ndiswrapper вам необходимо проделать следующие шаги:
Установить ndiswrapper используя pacman:
pacman -Sy ndiswrapper ndiswrapper-utils
Note: Beyond kernel-ядру необходим пакет ndiswrapper-beyond вместо ndiswrapper!
Note: Если у вас на машине нет доступа в интернет, вы можете скачать эти пакеты заранее к себе на компьютер с одного из зеркал, таких как http://www2.cddc.vt.edu/linux/distributions/archlinux/extra/os/i686/ . (Note: это устаревшее зеркало, лучше использовать ftp://ftp.archlinux.org/core/os/i686/ ) Вам необходим пакет ndiswrapper (или ndiswrapper-beyond как было сказано выше) и пакет ndiswrapper-utils. Также вы можете скачать последнее ядро kernel26 (или beyond), т.к. на CD не всегда последнее ядро.
Когда установка завершена, выполните следующие шаги для настройки ndiswrapper.
ndiswrapper -i filename.inf ndiswrapper -l ndiswrapper -m depmod -a
Сейчас установка ndiswrapper полностью завершена; вам только необходимо отредактировать /etc/rc.conf для загрузки модуля при старте системы (ниже приведён мой простейший конфиг; у вас может немного отличаться):
MODULES=(ndiswrapper snd-intel8x0 !usbserial)
Важно убедиться, что ndiswrapper присутствует в этом списке, также добавить другие необходимые модули. Лучший способ проверить, что ndiswrapper загружен:
modprobe ndiswrapper iwconfig
и wlan0 должен присутствовать. Посмотрите следующую страницу при обнаружении проблем: Установка Ndiswrapper.
[edit] prism54
Скачайте файлы прошивки (firmware) для вашей карточки с этого сайта. Переименуйте файл прошивки в 'isl3890'. Если не существует, создайте директорию /lib/firmware и поместите файл 'isl3890' туда. Это должно быть сделано. (forum source)
[edit] ACX100/111
Установите пакеты 'tiacx' и 'tiacx-firmware' из репозитория core.
pacman -S tiacx tiacx-firmware
Драйвер должен сказать, какая прошивка (firmware) ему необходима; проверьте /var/log/messages.log или через команду dmesg. Переместите прошивку в '/lib/firmware'. Я делаю так:
ln -s /usr/share/tiacx/acx111_2.3.1.31/tiacx111c16 /lib/firmware
Hint: Если драйвер захламляет лог ядра, например потому, что запущен Kismet, вы должны добавить следующее в /etc/modprobe.conf:
options acx debug=0
[edit] BCM43XX
Пользователи, у которых чипсет из серии Broadcom 43xx имеют альтернативу ndiswrapper'у. В Ядре версии 2.6.17, драйвер bcm43xx представлен.
- Запустите
iwconfig
илиhwd -s
для того, чтобы удостовериться, что драйвер загружен. Мой вывод hwd -s выглядит примерно так:Network : Broadcom Corp.|BCM94306 802.11g NIC module: unknown
Список поддерживаемого оборудования можно найти здесь here.
- Запустите
pacman -Sy bcm43xx-fwcutter
для установки прошивки. - Скачайте драйвера для Windows для вашей карточки откуда вы скачивали прошивку.
- Распаковать драйвера с страницы Dell можно через Windows или под WINE (это .exe файл который распаковывается в C:\Dell\[driver numbers]). Или можете попробывать скачать [1] или [2]. Я просто сохранил файлы на рабочий стол; вам это не надо после следующего шага.
- Запустите
bcm43xx-fwcutter -w /lib/firmware /home/<user>/Desktop/wl_apsta.o
Сначала необходимо сначала создать директорию /lib/firmware. - Перезагрузитесь, и нормально настройте соединение. Вы можете добавить модуль bcm43xx в секцию modules в вашем rc.conf. Удачи!
[edit] b43
Этот драйвер - преемник драйвера bcm43xx и он включен в ядро 2.6.24.
- Запустите
hwd -s
для определения вашей карты. Мой вывод hwd -s выглядит примерно так:Network : BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller module: unknown
Список поддерживаемого оборудования находится здесь here.
- Установите прошивку из репозитория core. Она называется b43-fwcutter.
- Скачайте проприетарную версию драйверов Breadcom версии 4.80.53.0.
wget http://downloads.openwrt.org/sources/broadcom-wl-4.80.53.0.tar.bz2
- Распакуйте сжатый файл.
tar xjf broadcom-wl-4.80.53.0.tar.bz2
- Перейдите в новую директорию, и затем в директорию kmod:
cd broadcom-wl-4.80.53.0/kmod
- Запустите
b43-fwcutter -w "/lib/firmware/" wl_apsta.o
Сначала необходимо создать директорию /lib/firmware. - Перезагрузитесь, и нормально настройте ваше оборудование. Вы также можете добавить модуль b43 в секцию modules в ваш rc.conf. Удачи!
[edit] rtl8187
Смотри rtl8187 wiki page.
[edit] zd1211rw
zd1211rw драйвер для ZyDAS ZD1211 802.11b/g USB WLAN чипсетов и он включен в ядро, в настоящее время. Смотри список поддерживаемого оборудования здесь. Только вам необходимо сначала установить файлы прошивки:pacman -Sy zd1211-firmware
[edit] Тестовая установка
После загрузки вашего драйвера запустите
iwconfig
и посмотрите, появился ли интерфейс беспроводного соединения (wlanX)
[edit] Часть II: Управление беспроводными соединениями
Допустим, что ваш драйвер найден и прекрасно работает, вам необходимо выбрать метод управления беспроводными соединениями. Следующая подсекция поможет вам найти подходящий метод работы.
[edit] Управление беспроводными соединениями в Arch
Arch Linux обладает несколькими решениями для управлениями беспроводными соединениями. Выберите то, которое необходимо вам в ваших целях.
[edit] /etc/rc.conf
- Файл /etc/rc.conf содержит профили сети. Вы можете исправить и настроить простейшее соединение через файл /etc/rc.conf, централизованно. Например:
# /etc/rc.conf eth0="dhcp" wlan0="dhcp" wlan_wlan0="wlan0 essid MyEssid" #wlan_wlan0="wlan0 essid MyEssid key 12345678" #wlan_wlan0="wlan0 essid MyEssid key s:wirelesspassword" INTERFACES=(eth0 wlan0)
(Не все карты определяются как wlan0. Проверьте имя вашего интерфейса через ifconfig -a. Atheros-основанные карты, например, зовутся ath0, исправьте wlan_wlan0 в wlan_ath0="ath0 essid ....". Также исправьте ath0 в строке INTERFACES= .)
- Другой способ - описать wlan_* в /etc/conf.d/wireless, (который также входит в профили сети), для децентрализованной настройки:
# /etc/conf.d/wireless wlan_wlan0="wlan0 essid MyEssid"
[edit] Netcfg2
Netcfg2 более удобный способ, он предпочтителен, вы можете менять сеть. Документация: Network Profiles
Больше информации в разработке: Network Scripts
[edit] wireless-tools
Это полноценные консольные утилиты, работают отлично, а также позволяют всё контролировать вручную. Например ваше устройство зовётся wlan0. Замените wlan0 на своё имя устройства. Многим карточкам необходимо, чтобы интерфейс уже работал, прежде чем вы можете использовать wireless-tools:
ifconfig wlan0 up
Смотрим, какие точки доступа доступны:
iwlist wlan0 scan
Используя выведенные данные, скажите своему устройству, какую точку использовать. Например:
iwconfig wlan0 essid linksys
Затем, настройте интерфейс как обычно. Например так:
dhcpcd wlan0
или
ifconfig wlan0 192.168.0.2 route add default gw 192.168.0.1
[edit] Сторонние средства управления беспроводными соединениями
Также много других способов настройки и управления беспроводными соединениями в Arch Linux, нежели приведённые выше скрипты.
[edit] NetworkManager
NetworkManager утилита настройки сети, который включен по умолчанию во многие популярные Linux дистрибутивы. Он управляет проводными соединениями, NetworkManager также он является лёгким в использовании GUI программой для выбора вида соединения.
Для большей информации смотри страницу вики NetworkManager.
[edit] Wicd
Wicd утилита для настройки как проводной сети, так и беспроводной. Она написана на Python и Gtk с многими зависимостями от NetworkManager, которое делает его идеальным для легковесных дистрибутивов. Wicd сейчас доступна в репозитории extra для обоих платформ i686 и x86_64.
Для большей информации смотри страницу вики Wicd.
[edit] Wifi Radar
WiFi Radar это утилита на Python/PyGTK2 для управления профилями беспроводных соединений (и только беспроводных). При запуске он сканирует доступные сети и создает необходимые профили для необходимых сетей.
Для большей информации смотри страницу вики Wifi Radar.
[edit] Wlassistant
Wlassistant очень интуитивно-понятное GUI приложение для настройки беспроводных соединений.
Установка:
pacman -S wlassistant
Wlassistant должен быть запущен с привелегиями root:
sudo wlassistant
Один метод использования wlassistant для настройки карты беспроводных соединений через /etc/rc.conf, должна быть указана точка доступа. При старте, ваша карта будет автоматически настроена для работы с этой точкой доступа, но в других беспроводных сетях вам надо/доступно wlassistant настроить для доступа к другим сетям. Можно также стартовать его в фоне в списке сервисов в /etc/rc.conf, с префиксом @, чтобы уменьшить задержки при загрузке.
[edit] Дополнительные ресурсы
- NetworkManager - Официальная страница NetworkManager
- WICD - Официальная страница для WICD
- Wifi Radar - Официальная страница Wifi Radar
- An overly wordy howto that rarely helps
- The madwifi project's method of installing, good if you're having trouble doing it the Arch way