Jump to content

# Network configuration (Русский)/Wireless (Русский)

5 languages

- Deutsch
- English
- 日本語
- Português
- 中文（简体）

From ArchWiki
< Network configuration (Русский)
Состояние перевода: На этой странице представлен перевод статьи Network configuration/Wireless. Дата последней синхронизации: 12 октября 2023. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Ссылки по теме

- Программная точка доступа
- Ad-hoc networking
- Раздача интернета
- Wireless bonding
- Network Debugging
- Bluetooth (Русский)

Основную статью по настройке сети можно найти на странице Настройка сети.

Настройка беспроводного соединения происходит в два этапа. На первом этапе необходимо определить и установить правильный драйвер сетевого интерфейса (обычно драйвер находится на установочном носителе, но иногда его приходится устанавливать вручную), после чего произвести настройку. Второй этап заключается в выборе способа управления беспроводными соединениями. В этой статье описаны оба этапа, а также представлены ссылки на утилиты управления беспроводными соединениями.

В разделе #iw описана ручная настройка беспроводного интерфейса / локальной сети посредством утилиты iw. В статье Настройка сети#Сетевые менеджеры вы найдёте список программ (в том числе и с графическим интерфейсом), которые используются для автоматического управления сетевым интерфейсом. В них реализована поддержка сетевых профилей, что бывает удобно при частой смене беспроводных сетей (как это бывает, например, с ноутбуками).

## Драйвер устройства

Стандартное ядро Arch Linux имеет модульную архитектуру, поэтому многие драйверы для аппаратного обеспечения расположены на жёстком диске и доступны как модули. При загрузке udev определяет аппаратное обеспечение вашего компьютера и загружает соответствующие модули (драйверы), в результате чего создаётся сетевой интерфейс.

Некоторым беспроводным устройствам для работы помимо драйвера необходима ещё и прошивка. В пакете linux-firmware содержится большое количество образов прошивок, однако проприетарные прошивки в него не входят и должны устанавливаться отдельно. Подробное описание установки дано в разделе #Установка драйвера/прошивки.

Примечание: Если нужный модуль не был загружен менеджером udev при старте системы, просто загрузите его вручную. Иногда udev может загружать более одного драйвера для устройства, что приведёт к конфликту и помешает успешной настройке. В этом случае запретите загрузку ненужного модуля.

### Проверка состояния драйвера

Чтобы проверить, загрузился ли драйвер сетевой карты, посмотрите на вывод команд `lspci -k` или `lsusb -v` (в зависимости от того, подключена карта по шине PCI(e) или через USB-порт). Вы должны увидеть используемые драйверы ядра, например:

    $ lspci -k

    06:00.0 Network controller: Intel Corporation WiFi Link 5100
    	Subsystem: Intel Corporation WiFi Link 5100 AGN
    	Kernel driver in use: iwlwifi
    	Kernel modules: iwlwifi

Примечание: Если ваша сетевая карта является USB-устройством, выполнение `dmesg | grep usbcore` должно выдать что-то похожее на `usbcore: registered new interface driver rtl8187`.

Также проверьте вывод команды `ip link`, чтобы убедиться, что сетевой интерфейс был создан; обычно название беспроводного интерфейса начинается с букв «wl», например, `wlan0` или `wlp2s0`. Затем включите интерфейс командой

    # ip link set интерфейс up

Например, если интерфейс называется `wlan0`, команда примет вид `ip link set wlan0 up`.

Примечание:

- Если вы получили ошибку `RTNETLINK answers: Operation not possible due to RF-kill` ("действие невозможно из-за RF-kill"), убедитесь, что аппаратный переключатель находится в положении вкл. Подробнее см. #Предостережения Rfkill.
- Если вы получили сообщение об ошибке `SIOCSIFFLAGS: No such file or directory` ("нет такого файла или каталога"), то скорее всего для функционирования вашего беспроводного устройства необходима соответствующая прошивка.

Проверьте сообщения ядра на предмет загрузки прошивки:

    # dmesg | grep firmware

    [   7.148259] iwlwifi 0000:02:00.0: loaded firmware version 39.30.4.1 build 35138 op_mode iwldvm

Если там нет интересующей вас информации, проверьте сообщения подробного вывода, относящиеся к определённому вами ранее модулю (в примере ниже `iwlwifi`):

    # dmesg | grep iwlwifi

    [   12.342694] iwlwifi 0000:02:00.0: irq 44 for MSI/MSI-X
    [   12.353466] iwlwifi 0000:02:00.0: loaded firmware version 39.31.5.1 build 35138 op_mode iwldvm
    [   12.430317] iwlwifi 0000:02:00.0: CONFIG_IWLWIFI_DEBUG disabled
    ...
    [   12.430341] iwlwifi 0000:02:00.0: Detected Intel(R) Corporation WiFi Link 5100 AGN, REV=0x6B

Если модуль ядра загрузился успешно и интерфейс запущен, можете пропустить следующий раздел.

### Установка драйвера/прошивки

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

- Изучите таблицу существующих драйверов Linux для беспроводных устройств. Перейдя на страницу определённого драйвера вы найдёте список поддерживаемых устройств. Также можно посмотреть список идентификаторов Wi-Fi устройств в Linux.
- В Ubuntu Wiki есть хороший список беспроводных карт и информация об их поддержке ядром Linux или драйвером пространства пользователя (включая название драйвера).
- Проверьте ваше устройство на сайте Linux Wireless Support или по реестру hardware compatibility list, в котором также содержится список поддерживаемого ядром оборудования.

Имейте в виду, что в продуктах некоторых производителей могут попадаться разные чипы даже в продуктах с одинаковым идентификатором. Значимыми являются только usb-id (для устройств USB) или pci-id (для устройств PCI).

Если ваша беспроводная карта есть в одном из списков выше, перейдите в раздел #Решение проблем с драйверами и прошивками. В нём содержатся инструкции по установке драйверов и прошивок на некоторые редкие беспроводные карты. Затем проверьте состояние драйвера снова.

Если вашей беспроводной карты нет в списках, то скорее всего она поддерживается только в Windows (некоторые Broadcom, 3com и др.). В этом случае попробуйте #ndiswrapper.

## Утилиты

Управление беспроводными сетевыми интерфейсами, как и всеми прочими, осуществляется посредством входящей в пакет iproute2 утилиты ip.

Управление беспроводным соединением может осуществляться с помощью сетевого менеджера, который будет использовать wpa_supplicant или iwd для аутентификации беспроводного соединения, либо с помощью wpa_supplicant или iwd напрямую. Для настройки на более низком уровне, а также при использовании устаревшего драйвера или устаревшего метода аутентификации существуют iw и устаревший wireless_tools.

### Сравнение iw и wireless_tools

Утилита | Пакет | WEXT | nl80211 | WEP | WPA/WPA2/WPA3 | Archiso [1]
--- | --- | --- | --- | --- | --- | ---
wireless_tools1 | wireless_tools | Да | Нет | Да | Нет | Да
iw | iw | Нет | Да | Да | Нет | Да

1. Устарела.

Имейте в виду, что некоторые старые драйверы поддерживают только WEXT.

Ниже представлено сравнение некоторых команд утилит iw и wireless_tools. Дополнительные примеры можно найти в статье о замене iwconfig на iw.

Команда iw | Команда wireless_tools | Описание
--- | --- | ---
iw dev wlan0 link | iwconfig wlan0 | Получение состояния соединения.
iw dev wlan0 scan | iwlist wlan0 scan | Сканирование доступных точек доступа.
iw dev wlan0 set type ibss | iwconfig wlan0 mode ad-hoc | Установка режима работы ad-hoc.
iw dev wlan0 connect ваш_essid | iwconfig wlan0 essid ваш_essid | Подключение к открытой сети.
iw dev wlan0 connect ваш_essid 2432 | iwconfig wlan0 essid ваш_essid freq 2432M | Подключение к открытой сети с указанием канала.
iw dev wlan0 connect ваш_essid key 0:ваш_ключ | iwconfig wlan0 essid ваш_essid key ваш_ключ | Подключение к сети с WEP шифрованием шестнадцатеричным ключом.
iwconfig wlan0 essid ваш_essid key s:ваш_ключ | Подключение к сети с WEP шифрованием ASCII-ключом.
iw dev wlan0 set power_save on | iwconfig wlan0 power on | Включение режима энергосбережения.

## iw

Примечание:

- Большая часть представленных ниже команд должна выполняться с правами root. При выполнении от имени обычного пользователя некоторые команды (например, iw list) завершат работу без ошибки, но сгенерированный ими вывод либо окажется некорректным, либо будет отсутствовать вовсе.
- В зависимости от вашего аппаратного обеспечения и типа шифрования некоторые перечисленные ниже шаги могут оказаться не нужны. Некоторые сетевые карты требуют включения интерфейса и/или поиска точки доступа перед привязкой к ней и получением IP-адреса. Возможно, придётся немного поэкспериментировать. Например, пользователи с WPA/WPA2 могут попытаться активировать беспроводную сеть напрямую с шага #Соединение с точкой доступа.

В примерах ниже беспроводное устройство с названием `интерфейс` устанавливает соединение с точкой доступа Wi-Fi `ваш_essid`. Замените названия на свои.

### Определение имени интерфейса

Совет: В официальной документации утилиты iw можно найти дополнительные примеры.

Чтобы узнать название беспроводного интерфейса, выполните:

    $ iw dev

Название интерфейса будет указано после слова «Interface». Например, `wlan0`.

### Определение состояния интерфейса

Чтобы проверить состояние соединения, выполните:

    $ iw dev интерфейс link

Статистическую информацию (количество tx/rx байт, мощность сигнала и т.д.) можно получить, введя команду:

    $ iw dev интерфейс station dump

### Включение интерфейса

Совет: В большинстве случаев выполнять эти действия не требуется.

Некоторые карты требуют включения интерфейса перед использованием iw или wireless_tools.

    # ip link set интерфейс up

Примечание: Если получена ошибка вида `RTNETLINK answers: Operation not possible due to RF-kill`, убедитесь, что аппаратный переключатель находится в положении on. Дополнительную информацию вы найдёте в разделе #Предостережения Rfkill.

Чтобы убедиться, что интерфейс включён, выполните:

    $ ip link show интерфейс

    3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state DOWN mode DORMANT group default qlen 1000
        link/ether 12:34:56:78:9a:bc brd ff:ff:ff:ff:ff:ff

На включённое состояние интерфейса указывает слово `UP` в `<BROADCAST,MULTICAST,UP,LOWER_UP>`, а не надпись `state DOWN`.

### Обнаружение точек доступа

Чтобы просмотреть список доступных точек доступа, выполните:

    # iw dev интерфейс scan | less

Примечание: Если в результате появилось сообщение `Interface does not support scanning` (Интерфейс не поддерживает сканирование), то скорее всего вы забыли установить прошивку. В некоторых случаях это сообщение может появиться, если вы выполнили команду не от имении root.
Совет: В зависимости от местоположения вам может понадобиться настроить правильный регулятивный домен, чтобы увидеть все доступные сети.

Обратите внимание на следующие поля:

- SSID: название сети.
- Signal: мощность беспроводного излучения в единицах dBm (например, от -100 до 0). Более близкие к нулю значения означают лучший сигнал. На основании отображаемой мощности можно получить представление о покрытии сети.
- Security: напрямую не указывается; проверьте строку, которая начинается с `capability`. Если там содержится указание `Privacy`, например, `capability: ESS Privacy ShortSlotTime (0x0411)`, то сеть как-то защищена.
  - Если вы видите информационный блок `RSN`, то сеть защищена протоколом Robust Security Network, также известным как WPA2.
  - Если вы видите информационный блок `WPA`, то сеть защищена протоколом Wi-Fi Protected Access.
  - В блоках `RSN` и `WPA` может быть указана следующая информация:
    - Group cipher: принимает значения TKIP, CCMP, both, others.
    - Pairwise ciphers: принимает значения TKIP, CCMP, both, others. Может отличаться от значения в Group cipher.
    - Authentication suites: принимает значения PSK, 802.1x, others. Для домашнего маршрутизатора вы скорее всего обнаружите здесь значение PSK (то есть пароль). В университетах вероятнее всего будет сеть 802.1x, что требует логин и пароль. Тогда вам потребуется узнать, какое используется управление ключами (например, EAP), и какой способ инкапсуляции (например, PEAP). Подробную информацию можно найти в разделе #WPA2 Enterprise и статье Wikipedia:Authentication protocol.
  - Если вы не видите ни `RSN`, ни `WPA`, но есть раздел `Privacy`, то используется защитный протокол WEP.

### Выбор режима работы

Возможно, будет необходимо выбрать подходящий режим работы беспроводной карты. Например, если вы хотите подключиться к сети ad-hoc, то нужно установить режим работы `ibss`:

    # iw dev интерфейс set type ibss

Примечание: Смена режима работы на некоторых картах может потребовать отключения беспроводного интерфейса (`ip link set интерфейс down`).
Примечание: При попытке сменить режим интерфейса на AP (`iw интерфейс set type ap`) iw может вернуть ошибку вида

    You need to run a management daemon, e.g. hostapd,
    see https://wireless.wiki.kernel.org/en/users/documentation/hostapd
    for more information on how to do that.

Для обхода этой ошибки нужно использовать тип `__ap` (`iw интерфейс set type __ap`).

### Соединение с точкой доступа

Необходимо привязать устройство к точке доступа и ввести ключ в зависимости от типа шифрования:

- Без шифрования

      # iw dev интерфейс connect "ваш_essid"

- WEP
  - С использованием шестнадцатеричного ключа (формат ключа определится автоматически, поскольку WEP-ключ имеет фиксированную длину):

        # iw dev интерфейс connect "ваш_essid" key 0:ваш_ключ

  - С использованием ASCII-ключа, указав третий ключ в качестве ключа по умолчанию (ключи нумеруются с нуля, всего возможно до четырёх ключей):

        # iw dev интерфейс connect "ваш_essid" key d:2:ваш_ключ

- Другое
  - iw может работать только с WEP. Для подключения с использованием другого типа шифрования смотрите раздел #Аутентификация.

Вне зависимости от использованного способа, проверьте соединение:

    # iw dev интерфейс link

## Аутентификация

Есть два основных варианта для аутентификации Wi-Fi в Linux: wpa_supplicant и iwd.

### WPA2 Personal

WPA2 Personal, или WPA2-PSK — одна из реализаций технологии Wi-Fi Protected Access.

Выполнить вход в сеть WPA2 Personal можно посредством утилит wpa_supplicant или iwd, а также с помощью сетевого менеджера. Если вы только выполнили аутентификацию, то для создания нормально функционирующего подключения всё ещё нужно настроить IP-адрес(а) и маршруты либо вручную, либо с помощью DHCP-клиента.

### WPA2 Enterprise

WPA2 Enterprise — ещё одна реализация технологии Wi-Fi Protected Access. Она предлагает лучшую безопасность и управление ключами по сравнению с WPA2 Personal, а также дополнительную функциональность корпоративного типа вроде VLAN и NAP. Для работы этой технологии требуется внешний аутентификационный сервер, RADIUS, обрабатывающий попытки аутентификации пользователей. Это отличает Enterprise-режим от режима Personal, которому не требуется ничего кроме маршрутизатора или точки доступа с одним паролем для всех пользователей.

Корпоративный (Enterprise) режим осуществляет подключение пользователей к сети посредством имени пользователя и пароля и/или цифрового сертификата. Поскольку каждый пользователь обладает уникальным динамическим ключом шифрования, это также позволяет предотвратить отслеживание пользователей в беспроводной сети и усилить шифрование.

Ниже описана настройка сетевых клиентов, соединяющихся с беспроводной точкой доступа в режиме WPA2 Enterprise. Информацию о настройке самой точки доступа можно найти в статье Software access point#RADIUS.

Примечание: Корпоративный режим требует более сложной настройки клиента, в то время как режим Personal требует только введения пароля по запросу. Клиентам скорее всего придётся установить CA-сертификат сервера (плюс сертификаты пользователей при использовании EAP-TLS), а затем вручную настроить безопасность и аутентификацию по протоколу 802.1X.

Сравнение протоколов сведено в таблицу.

Важно: Существует возможность использовать WPA2 Enterprise без проверки CA-сертификата сервера, однако использовать её не стоит. Без аутентификации точки доступа соединение может стать объектом атаки «человек посередине» («man-in-the-middle»). Хотя «рукопожатия» обычно зашифрованы, передача пароля чаще всего производится открытым текстом или посредством ненадёжного протокола #MS-CHAPv2. В результате клиент может послать пароль чужой точке доступа, которая станет выполнять роль посредника, прослушивая весь передаваемый через неё трафик.

#### MS-CHAPv2

Беспроводные сети WPA2-Enterprise, полагающиеся на аутентификацию MSCHAPv2 type-2 с использованием PEAP, иногда требуют установки pptpclient помимо стандартного ppp. Однако netctl работает «из коробки» без ppp-mppe. В любом случае, использование MSCHAPv2 не рекомендуется из-за его ненадёжности, но другого варианта часто просто нет.

#### eduroam

eduroam — международный роуминговый сервис на основе WPA2 Enterprise для лиц, занятых в сфере научно-исследовательской деятельности, высшего образования и дополнительного профессионального образования.

Примечание:

- Перед применением любых настроек, предложенных в этом разделе, рекомендуется сначала проверить их со специалистами вашего учреждения. Предложенные здесь профили настроек предлагаются безо всяких гарантий на предмет работоспособности или соответствия каким-либо требованиям безопасности.
- При хранении профилей соединения в незашифрованном виде рекомендуется оставить доступ на чтение только суперпользователю, выполнив команду `chmod 600 профиль` от имени root.

Совет: Настройки для NetworkManager можно сгенерировать с помощью eduroam Configuration Assistant Tool (требуются python и python-dbus).

#### Ручная/автоматическая настройка

- wpa_supplicant настраивается напрямую в его файле настроек или посредством интерфейса; используется вместе с клиентом DHCP. Примеры настроек приведены в файле `/usr/share/doc/wpa_supplicant/wpa_supplicant.conf`.
- iwd#WPA Enterprise.
- NetworkManager может создавать профили WPA2 Enterprise с помощью nmcli, nmtui или графических интерфейсов.
- ConnMan требует создания отдельного файла настроек перед соединением с беспроводной сетью. Подробности можно найти в руководстве connman-service.config(5) и в статье ConnMan#Connecting to eduroam (802.1X).
- netctl может использовать настройки wpa_supplicant посредством блоков `WPAConfigSection=`. Детали вы найдёте в руководстве netctl.profile(5).

  Примечание: В настройках netctl особые правила использования кавычек: см. netctl.profile(5) § SPECIAL QUOTING RULES.
  Совет: Можно разрешить произвольный сертификат, добавив строку `'ca_cert="/path/to/special/certificate.cer"'` в блоке `WPAConfigSection`.

### WPA3 Personal

WPA3 Personal, или WPA3-SAE — один из режимов Wi-Fi Protected Access.

И wpa_supplicant, и iwd поддерживают WPA3 Personal.

### WPA3 Enterprise

WPA3 Enterprise — один из режимов Wi-Fi Protected Access.

wpa_supplicant (с версии 2:2.10-8) поддерживает WPA3 Enterprise. Смотрите FS#65314.

## Советы и рекомендации

### Соответствие регламентам

Регулятивный домен (regulatory domain) — страны, совместно использующие общий регламент радиосвязи, определённый одним из регулятивных органов (FCC в США, ETSI для стран Европы и т.д.). С помощью параметра regdomain драйвер беспроводной сетевой платы настраивается в соответствии с местными законами. Regdomain использует двухбуквенные коды стран в соответствии с ISO 3166-1 alpha-2. Например, regdomain для США обозначается «US», для России — «RU», и т.д.

Regdomain определяет доступность беспроводных каналов. Так, на частоте 2.4GHz разрешено использовать каналы 1-11 в США, 1-14 — в Японии, и каналы 1-13 в большей части остального мира. На частоте 5GHz правила доступа к каналам несколько сложнее. В Википедии можно найти подробную информацию о доступности каналов: Wikipedia:List of WLAN channels, Wikipedia:ru:Wi-Fi#Разрешённые частоты.

Принадлежность к домену также определяет предельное значение эквивалентной изотропно-излучаемой мощности (Equivalent Isotropically Radiated Power, EIRP) беспроводных устройств. Это значение определяет мощность сигнала и измеряется в единицах дБм или мВт. На частоте 2.4GHz максимальное значение мощности составляет 30дБм в США и Канаде, 20дБм в большинстве стран Европы, и 20-30дБм в остальном мире. На частоте 5GHz максимумы обычно ниже. Допустимые значения мощности можно найти в этой базе данных (значения дБм во втором наборе скобок в каждой линии).

В некоторых случаях может быть полезно указать неверный regdomain — например, чтобы получить возможность осуществлять передачу через неиспользуемый канал, если остальные каналы перегружены, или чтобы повысить мощность и, как следствие, дальность передачи. Однако делать это не рекомендуется, поскольку это приведёт к нарушению местного законодательства и может нарушить работу других радио-устройстств.

Если установлен пакет wireless-regdb, ядро будет загружать базу данных напрямую. Для прямой загрузки ядро, в целях безопасности, должно иметь включенную настройку `CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS`, чтобы обеспечить криптографическую проверку базы данных. Она включена для стандартного ядра Arch, но если вы используете альтернативное ядро или компилируете его сами, то проверьте это. Более подробную информацию можно найти в этом руководстве.

Для настройки regdomain установите пакет wireless-regdb и перезагрузитесь, затем отредактируйте `/etc/conf.d/wireless-regdom`, раскомментировав нужный домен.

Чтобы временно назначить regdomain (например, для США):

    # iw reg set US

Узнать текущий регуляторный домен:

    $ iw reg get

Примечание: По умолчанию ваше устройство может быть настроено на «страну 00», которая означает условный «мировой домен» и содержит обобщённые настройки. Если изменить этот параметр не удаётся, проверьте конфигурацию как описано ниже.

В некоторых случаях настройку regdomain изменить не получится. В некоторых устройствах параметр домена зашит в прошивку/EEPROM, что ограничивает поведение устройства. В данном случае изменение домена в ПО может только ужесточить ограничения, но не ослабить их. Например, китайское (CN) устройство может быть настроено на домен US, но поднять максимум EIRP с 20дБм до разрешённого в США значения 30дБм не получится.

Чтобы проверить, задан ли домен в прошивке устройства Atheros, выполните команду:

    # dmesg | grep ath:

Для других чипсетов в качестве паттерна поиска можно указать "EEPROM", "regdomain" или просто название драйвера устройства.

Чтобы убедиться, что смена домена прошла успешно, и узнать количество доступных каналов и их разрешённую мощность, выполните

    $ iw list | grep -A 15 Frequencies:

wpa_supplicant также может управлять доменом посредством строки `country=` в файле `/etc/wpa_supplicant/wpa_supplicant.conf`

В модуле ядра cfg80211 можно настроить домен, добавив опцию `options cfg80211 ieee80211_regdom=JP`. Это часть старой реализации технологии регулятивного домена.

### Предостережения Rfkill

Во многих ноутбуках присутствует аппаратный переключатель (или кнопка) питания беспроводной карты, однако она может быть также заблокирована и ядром. Этим можно управлять через rfkill(8). Чтобы посмотреть текущий статус:

    $ rfkill

    ID TYPE      DEVICE      SOFT      HARD
     0 bluetooth hci0   unblocked unblocked
     1 wlan      phy0   unblocked unblocked

Если карта заблокирована аппаратно (hard-blocked), используйте переключатель (кнопку), чтобы разблокировать её. Если же карта заблокирована не аппаратно, a программно (soft-blocked), используйте следующую команду:

    # rfkill unblock wlan

Примечание: Возможно, при нажатии аппаратной кнопки карта из состояния hard-blocked и soft-unblocked перейдёт в состояние hard-unblocked и soft-blocked (т.е. бит soft-blocked внезапно поменяет значение). Это можно исправить, отрегулировав некоторые опции модуля ядра `rfkill`.

Включение/выключение беспроводных карт посредством аппаратных переключателей происходит с помощью модулей ядра. Зачастую это модули WMI. При выходе новых моделей сетевых карт их драйвера могут отсутствовать в последнем стабильном релизе ядра. В этом случае стоит поискать информацию в багтрекере ядра и сообщить название модели сопроводителю соответствующего модуля, если этого ещё никто не сделал.

Смотрите также дополнительную информацию о Rfkill: [2].

### Энергосбережение

Смотрите раздел Управление питанием#Сетевые интерфейсы.

### GitHub-репозиторий от morrownr

В GitHub-репозитории USB-WiFi от morrownr содержится различная информация о различных Wi-Fi адаптерах и чипсетах, включая тесты производительности, информацию о драйверах и общую информацию. Также репозиторий содержит информацию о PCIe-адаптерах. Рекомендуется к просмотру, особенно если вы не уверены, какой адаптер быстрее, дешевле или лучше совместим с Linux.

## Решение проблем

В этом разделе содержатся основные рекомендации по решению проблем, не связанных непосредственно с драйверами и прошивками. Для получения такой информации смотрите следующий раздел #Решение проблем с драйверами и прошивками.

### Временный доступ к интернету

Если с сетевой платой возникли проблемы и нужен доступ в интернет, например, чтобы загрузить определённое ПО или задать вопрос на форумах, можно раздать интернет на компьютер с Android-смартфона посредством USB-кабеля. В статье Android tethering (Русский)#USB модем вы найдёте подробную информацию по этому вопросу.

### Просмотр логов

При появлении проблем первым делом стоит изучить файлы системных логов. Чтобы не разбирать их вручную, стоит открыть второй терминал/консоль и отслеживать сообщения ядра, выполнив команду

    # dmesg -w

непосредственно перед попыткой беспроводной привязки (association).

Если вы используете какую-то утилиту для управления сетью, то же самое можно сделать с помощью systemd:

    # journalctl -f

Связанные с беспроводными устройствами ошибки часто сопровождаются словом deauthentication и кодом причины (reason), например:

    wlan0: deauthenticating from XX:XX:XX:XX:XX:XX by local choice (reason=3)

Код причины может подсказать причину неполадок. Полезно будет также взглянуть на схему движения управляющих сообщений, записи в журнале появляются в соответствии с ней.

Некоторые инструменты, описанные с следующих разделах, предлагают опции для более детализированного отладочного вывода. Они могут помочь при дальнейшем анализе неполадок.

### Не удалось получить IP адрес

- Если вы можете получить IP для проводного интерфейса, но не можете для беспроводного, попробуйте отключить #Энергосбережение вашей беспроводной карты (укажите `off` вместо `on`).

- Если вы получаете timeout ошибку из-за waiting for carrier проблемы, возможно вам понадобится установить канал в `auto` для конкретного устройства:

    # iwconfig wlan0 channel auto

Перед изменением канала убедитесь, что беспроводной интерфейс отключен (down). После смены канала включите его снова (up).

### Не выполняется разрешение хоста по действительному IP-адресу

Если вы подключились к публичной беспроводной сети с работающим сервисом Captive portal, убедитесь, что браузер отправляет запросы по протоколу HTTP, а не HTTPS, поскольку некоторые порталы работают только с HTTP. Если причина проблем не в этом, проверьте настройки разрешения доменных имён. Возможно, нужно просто использовать DNS-сервер, полученный по DHCP.

### Включение RTS и порог фрагментации

Беспроводное аппаратное обеспечение по умолчанию не использует RTS и фрагментацию. Есть два способа повысить производительность (throughput) за счёт пропускной способности (bandwidth) (т.е. надёжность за счёт скорости). Это полезно в случае наличия беспроводного шума или создающих помехи соседних точек доступа, что приводит к задержкам и сбоям.

Фрагментация пакетов увеличивает производительность за счёт разбиения пакетов с размером, превышающим порог фрагментации. Максимальное значение (2346) фактически отключает фрагментацию, поскольку не существует пакетов большего размера. Минимальное значение (256) увеличивает производительность, но требует большей пропускной способности.

    # iw phy0 set frag 512

RTS увеличивает производительность посредством выполнения рукопожатий с точкой доступа перед отправкой пакетов с размером выше порога RTS. Максимальное значение (2347) отключает RTS (т.к. пакеты не могут быть большего размера). Минимальный порог (0) включает RTS для всех пакетов, что в большинстве ситуаций несколько избыточно.

    # iw phy0 set rts 500

Примечание: `phy0` — название беспроводного устройства, которое можно узнать с помощью команды `iw phy`.

### Внезапные отключения

#### Причина №1

Если журнал содержит сообщение `wlan0: deauthenticating from MAC by local choice (reason=3)` и произошёл разрыв Wi-Fi соединения, то причина скорее всего кроется в слишком агрессивных настройках энергосбережения вашей беспроводной карты. Попробуйте отключить #Энергосбережение (укажите опцию `off` вместо `on`).

Если у вашей карты нет энергосберегающего режима, проверьте настройки энергопотребления BIOS. Отключение управления энергопотреблением PCI-Express в BIOS на Lenovo W520 решило эту проблему.

#### Причина №2

Если происходят частые отключения и журнал содержит сообщение вроде

`ieee80211 phy0: wlan0: No probe response from AP xx:xx:xx:xx:xx:xx after 500ms, disconnecting`

попробуйте изменить полосу пропускания канала на `20MHz` на странице настроек вашего маршрутизатора.

#### Причина №3

В некоторых моделях ноутбуков (например, Thinkpad X200) аппаратный переключатель (или его соединение с материнской платой) из-за неудачной конструкции со временем может расшататься. В результате при случайных касаниях переключателя или перемещении ноутбука будут происходить аппаратные блокировки (hardblock) и разрывы соединения. Решить эту проблему программно нельзя, кроме случая, когда переключатель электрический — в БИОС есть настройка его отключения. Если переключатель механический (а чаще всего он именно такой), то существует несколько возможных решений, большинство из которых сводится к отключению переключателя: распаять точку соединения переключателя с материнской платой/беспроводной картой, приклеить или зафиксировать переключатель, подтянуть переключатель гайкой или удалить его насовсем.

#### Причина №4

Причиной частых отключений или невозможности выполнить соединение может быть нестандартная модель маршрутизатора, неправильные настройки или помехи со стороны других беспроводных устройств.

Начните поиск причины проблемы с попытки подключиться к маршрутизатору с отключённой аутентификацией. Подойдите к нему поближе по возможности.

Если это сработало, включите WPA/WPA2 снова, но с ограниченными настройками. Например:

- Если маршрутизатор значительно старше вашей беспроводной карты, попробуйте выбрать один беспроводной режим.
- Отключите смешанную аутентификацию (например, оставьте только WPA2 с AES, или только TKIP в случае старого маршрутизатора).
- Попробуйте fixed или free режим канала вместо auto (возможно, неподалёку работает старый маршрутизатор, создающий помехи).
- Отключите WPS.
- Измените канал(-ы) 5 GHz на канал non-DFS (Dynamic Frequency Selection). Соединения, установленные по такому каналу, могут пострадать от помех, создаваемых находящимся неподалёку погодным радаром.
- На стороне клиента попробуйте отключить 5 GHz и оставить только 2.4 GHz вместо автоматического выбора (это уменьшит пропускную способность, но может повысить стабильность на расстоянии).
- Отключите полосу пропускания `40MHz` (производительность упадёт, но зато уменьшится количество коллизий пакетов) параметром `cfg80211.cfg80211_disable_40mhz_24ghz=1`.
- Если у маршрутизатора есть настройки качества обслуживания (Quality of Service, QoS), проверьте их полноту (например, WMM является одним из протоколов QoS; при неправильной работе ПО маршрутизатор может сообщать, что протокол работает, хотя соответствующая настройка не включена).

#### Причина №5

У некоторых беспроводных сетевых адаптеров (например, Qualcomm Atheros AR9485) бывают случайные разрывы связи с DMA-ошибкой:

    # journalctl -xb

    ath: phy0: DMA failed to stop in 10 ms AR_CR=0x00000024 AR_DIAG_SW=0x02000020 DMADBG_7=0x0000a400
    wlp1s0: authenticate with 56:e7:ee:7b:55:bc
    wlp1s0: send auth to 56:e7:ee:7b:55:bc (try 1/3)
    wlp1s0: send auth to 56:e7:ee:7b:55:bc (try 2/3)
    wlp1s0: send auth to 56:e7:ee:7b:55:bc (try 3/3)
    wlp1s0: authentication with 56:e7:ee:7b:55:bc timed out

Обходное решение — отключить Intel IOMMU driver (DMA), добавив `intel_iommu=off` в параметры ядра [3].

Примечание: IOMMU-драйвер от Intel нужен для некоторых продвинутых возможностей виртуальных машин вроде PCI pass-through.

#### Причина №6

Если вы используете устройство с `iwlwifi` и `iwlmvm` для беспроводных соединений и ваша Wi-Fi-карта периодически отключается при работе от батареи (возможно, после перезагрузки или при выходе из режима сна), то это можно исправить настройками энергосбережения в iwlmvm.

Создайте файл `/etc/modprobe.d/iwlmvm.conf`, если он отсутствует, и добавьте в него следующую строку:

    /etc/modprobe.d/iwlmvm.conf

    options iwlmvm power_scheme=1

Параметр `power_scheme`, установленный в значение 1, задаёт iwlmvm режим «Всегда активен». Все возможные значения:

Значение | Описание
--- | ---
1 | Всегда активен
2 | Промежуточный режим
3 | Экономный режим

Это решение было обнаружено в обсуждении на форуме: [4].

#### Причина №7

Если устройство бывает подолгу неактивно (например, файловый сервер), то отключения могут происходить из-за настроек энергосбережения, в результате которых входящий трафик блокируется, а соединения не устанавливаются. Попробуйте отключить энергосбережение для интерфейса:

    # iw dev интерфейс set power_save off

Можно также создать правило udev, которое будет делать это при каждой загрузке системы, смотрите #Энергосбережение.

#### Причина №8

Если при подключении к mesh-сети (например, WiFi6) наблюдаются постоянные перебои, а в журнале имеются сообщения вида:

    # journalctl -b

    kernel: wlan0: disconnect from AP aa:bb:cc:dd:ee:ff for new auth to 11:22:33:44:55:66

Это проблемы с роумингом. В зависимости от способа подключения и рассматриваемой проблемы можно:

- заблокировать BSSID (в примере выше это `aa:bb:cc:dd:ee:ff`) в NetworkManager, если роуминг нежелателен (смотрите раздел NetworkManager#Regular network disconnects, latency and lost packets (WiFi));
- настроить параметр `bgscan` в wpa_supplicant#Roaming.

### Wi-Fi-сеть не видна из-за несоответствия регулятивному домену

При соединении по беспроводной сети список используемых на вашей машине беспроводных каналов может не совпасть с перечнем разрешённых каналов в вашей стране. В результате не получится обнаружить некоторые Wi-Fi сети. Для решения этой проблемы необходимо настроить регулятивный домен (regulatory domain), как описано в разделе #Соответствие регламентам.

## Решение проблем с драйверами и прошивками

В этом разделе описана установка модулей ядра и прошивок некоторых специфических чипсетов для случаев, когда она отличается от стандартного способа.

Информацию о приёмах работы с модулями можно найти в статье Модули ядра.

### Ralink/Mediatek

#### rt2x00

Единый драйвер для чипсетов Ralink, замещает драйвера `rt2500`, `rt61`, `rt73` и другие. Входит в ядро Linux начиная с версии 2.6.24. Необходимо только загрузить нужный для вашей карты модуль — `rt2400pci`, `rt2500pci`, `rt2500usb`, `rt61pci` или `rt73usb`, а он уже автоматически подтянет соответствующие модули драйвера `rt2x00`.

Список поддерживаемых устройств можно найти на странице проекта.

Примечания

- Начиная с версии ядра 3.0, rt2x00 включает также драйвера `rt2800pci` и `rt2800usb`.
- Начиная с версии ядра 3.0 staging-версии драйверов `rt2860sta` и `rt2870sta` были заменены на mainline-драйвера `rt2800pci` и `rt2800usb` [5].
- Некоторые устройства имеют широкий набор опций, настроить их можно с помощью входящей в пакет wireless_tools утилиты iwpriv. Документацию можно найти в tar-архиве с исходниками от Ralink.

#### rt3090

Для устройств с чипсетом rt3090 можно использовать драйвер `rt2800pci`, однако качественная работа не гарантирована (например, временами не удаётся получить скорость выше 2 Мбит/с).

#### rt3290

Чипсет rt3290 распознаётся модулем ядра `rt2800pci`, однако у некоторых могут возникнуть проблемы. В таких случаях можно попробовать вернуться к патченым драйверам Ralink.

#### rt3573

Чипсет 2012 года. Для стабильной работы могут потребоваться проприетарные драйвера Ralink, которые используются многими производителями беспроводного оборудования. Тема на форуме: Belkin N750 DB wireless usb adapter.

#### mt7612u

Чипсет 2014 года, выпущенный под новым коммерческим именем Mediatek. Есть варианты чипсетов AC1200 или AC1300. Производитель предлагает драйвера для Linux на странице поддержки. В ядро версии 5.5 был добавлен драйвер `mt76`.

### Realtek

Список чипсетов Realtek и их спецификации: [6].

#### rtl8192cu

Драйвер для этого чипсета включён в состав ядра, но иногда появляются проблемы с установкой соединения (хотя сканирование активных сетей работает).

В драйвер 8192cu-dkmsAUR вошли многие исправления; установите его, если входящий в состав ядра драйвер работает плохо.

#### rtl8723ae/rtl8723be

Модули `rtl8723ae` и `rtl8723be` входят в mainline-ядро Linux.

На картах с этими чипсетами возможны ошибки в работе функции энергосбережения. Это проявляется в случайных разрывах соединения, которые не обнаруживаются высокоуровневыми сетевыми менеджерами (netctl, NetworkManager). Обнаружить ошибку можно командами `dmesg -w` или `journalctl -f`, найдя сообщения, относящиеся к энергосбережению (powersave) и модулю `rtl8723ae`/`rtl8723be`. Если это ваш случай, используйте параметр модуля ядра `fwlps=0`, чтобы предотвратить «засыпание» карты и разрывы соединения.

Если у вас проблемы с качеством сигнала, возможно, у вашего устройства работает только одна антенна, а программный автовыбор антенны не работает. Вы можете вручную выбрать рабочую антенну параметрами ядра `ant_sel=1` или `ant_sel=2`. [7]

#### rtl88xxau

Чипсеты Realtek rtl8811au/rtl8812au/rtl8814au/rtl8821au разработаны для различных USB-адаптеров в диапазоне от AC600 до AC1900. Драйвера к ним содержатся в нескольких пакетах, перечисленных ниже; все они требуют DKMS (пакет dkms и заголовочные файлы ядра).

Чипсет | Пакет | Примечания
--- | --- | ---
rtl8811au, rtl8812au, rtl8821au | rtl88xxau-aircrack-dkms-gitAUR | Модули ядра aircrack-ng для чипсетов 8811au, 8812au и 8821au с режимом мониторинга и поддержкой инъекций.
rtl8812au | rtl8812au-dkms-gitAUR | Последний официальный драйвер Realtek, только для rtl8812au.
rtl8811au, rtl8821au | rtl8821au-dkms-gitAUR | Новейшая версия драйверов для rtl8821au.
rtl8814au | rtl8814au-dkms-gitAUR | Возможно, работает также и для rtl8813au.

#### rtl8811cu/rtl8821cu

Пакет rtl8821cu-dkms-gitAUR содержит модуль ядра для чипсетов Realtek 8811cu и 8821cu.

Для него требуется фреймворк DKMS, поэтому убедитесь, что необходимые заголовочные файлы ядра установлены.

Если даже с загруженным модулем `8821cu` интерфейс не работает, попробуйте вручную задать параметр модуля ядра `rtw_RFE_type` [8][9], например `rtw_RFE_type=0x26`. Другие значения тоже могут работать.

#### rtl8821ce

Пакет rtl8821ce-dkms-gitAUR содержит модуль ядра для чипсета Realtek 8821ce ноутбука Asus X543UA.

Для него требуется фреймворк DKMS, поэтому убедитесь, что необходимые заголовочные файлы ядра установлены.

Примечание: Сообщалось [10], что стандартный модуль `rtl8821ce`, предоставляемый компанией Realtek, не работает в Linux ≥ 5.9. Версия из AUR более предпочтительна. Смотрите сообщение на GitHub. С помощью `lspci -k` проверьте, используется ли стандартный драйвер (`rtw88_8821ce`). Если да, то заблокируйте его и перезагрузитесь.

#### rtl8822bu

В пакеты rtl88x2bu-dkms-gitAUR входит модуль ядра для чипсета Realtek 8822bu, используемого в адаптерах Edimax EW7822ULC USB3, Asus AC53 Nano USB 802.11ac и TP-Link Archer T3U.

Для него требуется фреймворк DKMS, поэтому убедитесь, что необходимые заголовочные файлы ядра установлены.

#### rtl8xxxu

Проблемы с модулем ядра `rtl8xxxu` могут быть решены компиляцией стороннего модуля для специфического чипсета. Исходный код можно найти в GitHub-репозитории.

Некоторые драйвера могут быть уже добавлены в AUR, например, rtl8723bu-dkms-gitAUR.

#### RTW88

Недавно был опубликован набор патчей для модуля ядра RTW88, который, вероятно, однажды войдёт в mainline.

Ядра, настроенные и скомпилированные с этим набором патчей, будут поддерживать большинство устройств на чипе RTW88. Ядра linux-zen и linux-zen-gitAUR уже используют эти патчи, и в этих пакетах есть собранный модуль.

Драйвер поддерживает 882BE, 8822BU, 8822CE, 8822CU, 8723DE, 8723DU, 8821CE и 8821CU.

#### RTW89

Модуль RTW89 был добавлен в состав ядра и обеспечивает поддержку новых беспроводных чипсетов Realtek.

Этот драйвер поддерживает 8852AE, 8851BE, 8852BE и 8852CE.

### Atheros

Командой проекта MadWifi было создано три драйвера для устройств с чипсетом Atheros:

- `madwifi` — устаревший драйвер. Не входит в состав ядра Linux начиная с версии 2.6.39.1. [11]
- `ath5k` — более новый драйвер, заменивший `madwifi`. Довольно неплох, но отсутствует поддержка некоторых чипсетов (см. ниже).
- `ath9k` — новейший из этих трёх драйверов, предназначен для последних чипсетов Atheros. Поддерживаются все платы с технологией 802.11n.

Также существуют другие драйвера для устройств Atheros, найти их можно в документации Linux Wireless.

#### ath5k

Полезные ссылки:

- https://wireless.wiki.kernel.org/en/users/drivers/ath5k
- Debian:ath5k

Если веб-страницы временами грузятся очень медленно или если беспроводному устройству не удаётся получить динамический IP-адрес, попробуйте переключиться с аппаратного шифрования на программное, задав параметр модуля ядра `nohwcrypt=1` для модуля `ath5k`.

У некоторых ноутбуков может возникнуть проблема с LED-индикатором беспроводной связи, который постоянно мигает и становится то красным, то синим. Чтобы решить эту проблему, выполните:

    # echo none > /sys/class/leds/ath5k-phy0::tx/trigger
    # echo none > /sys/class/leds/ath5k-phy0::rx/trigger

Альтернативное решение описано в этом багрепорте.

#### ath9k

Полезные ссылки:

- https://wireless.wiki.kernel.org/en/users/drivers/ath9k
- Debian:ath9k

Начиная с версии ядра 3.15.1 некоторые пользователи ощутили уменьшение полосы пропускания. В некоторых случаях проблему может решить параметр модуля ядра `nohwcrypt=1` для модуля `ath9k`.

Примечание: Проверьте командой `lsmod` название используемого модуля; измените название, если оно отличается от `ath9k` (например, `ath9k_htc`).

Связаться с разработчиками и обсудить изменения можно через почтовую рассылку.

##### Энергосбережение

Linux Wireless утверждает, что динамическое энергосбережение включено для одноплатных Atheros ath9k новее версии AR9280, однако для некоторых устройств (например, AR9285) powertop всё же сообщает, что энергосбережение отключено. В этом случае включите его вручную.

На некоторых устройствах (например, AR9285) включение энергосбережения может привести к следующей ошибке:

    # iw dev wlan0 set power_save on

    command failed: Operation not supported (-95)

Для решения добавьте параметр модуля ядра `ps_enable=1` для модуля `ath9k`.

### Intel

#### iwlegacy

iwlegacy — драйвер для чипов Intel версий 3945 и 4965. Прошивки для них входят в пакет linux-firmware.

Менеджер устройств udev должен загрузить драйвер автоматически, в противном случае загрузите `iwl3945` или `iwl4965` вручную. Подробнее см. Модули ядра.

Если у вас проблемы с подключением к сети вообще, случайные сбои карты во время загрузки, или просто очень низкое качество связи, попробуйте выключить 802.11n:

    /etc/modprobe.d/iwl4965.conf

    options iwl4965 11n_disable=1

#### iwlwifi

iwlwifi — беспроводной драйвер для современных чипов Intel, таких как 5100AGN, 5300AGN и 5350AGN (полный список поддерживаемых устройств). Пакет linux-firmware содержит ряд прошивок, а в пакете linux-firmware-iwlwifi-gitAUR[ссылка недействительна: package not found] можно найти некоторые последние обновления.

Если у вас проблемы с соединением вообще или качество связи очень низкое, попробуйте отключить 802.11n и включить программное шифрование:

    /etc/modprobe.d/iwlwifi.conf

    options iwlwifi 11n_disable=1 swcrypto=1

Если скорость исходящего соединения в режиме 802.11n слишком низкая, скажем, 20 Мбит/с, попробуйте включить агрегирование антенн:

    /etc/modprobe.d/iwlwifi.conf

    options iwlwifi 11n_disable=8

Название параметра `11n_disable` не должно ввести вас в заблуждение — при установке его в значение `8` ничего не отключается, но запускается режим агрегации. [12], [13]

Если это не сработало, попробуйте отключить #Энергосбережение беспроводного адаптера.

Решить проблемы с помощью рекомендаций выше получается не всегда. У некоторых наладить беспроводную связь помогло отключение одной из опций в настройках маршрутизатора. По ссылке вы найдёте список опций устройств на частоте 5MHz, с которыми имеет смысл поэкспериментировать.

Если ваша точка доступа 802.11ax (WiFi 6) имеет проблемы с обнаружением маяков или надёжностью соединения, то изучите следующую статью Intel.

Примечание: Параметр `11n_disable=0` также прекратит работу 802.11ac; соединения будут устанавливаться только по медленным протоколам (802.11a в полосе 5GHz или 802.11b/g в полосе 2.4 GHz).

##### Bluetooth Coexistence

Если у вас проблемы с подключением bluetooth-наушников и низкая скорость входящего соединения, попробуйте отключить режим Bluetooth Coexistence [14]:

    /etc/modprobe.d/iwlwifi.conf

    options iwlwifi bt_coex_active=0

Примечание: Начиная с версии ядра 5.8, параметры `bt_coex_active` и `sw_crypto` были отключены для устройств, обрабатываемых модулем ядра `iwlmvm`. Для более старых устройств, обрабатываемых другим модулем `iwldvm`, эти параметры по-прежнему включены.

##### Проблемы с прошивкой

При проблемах драйвер может начать выводить трассировку стека и сообщения об ошибках:

    # dmesg

    Microcode SW error detected.  Restarting 0x2000000.

Кроме того, могут возникать различные проблемы (например, проблемы с подключением на частоте 5 GHz, случайные обрывы, отсутствие соединения при возобновлении работы).

Чтобы убедиться, что проблема именно в прошивке, выполните откат пакета linux-firmware.

Если откат помог, переименуйте файлы проблемных драйверов, чтобы вместо них загружались более старые версии (это позволит обновлять пакет linux-firmware, поскольку он нужен и для других устройств тоже):

    # for i in {64..73} ; do mv /usr/lib/firmware/iwlwifi-ty-a0-gf-a0-$i.ucode.xz /usr/lib/firmware/iwlwifi-ty-a0-gf-a0-$i.ucode.xz.bak ; done

Чтобы не приходилось повторять это при каждом обновлении, используйте массив `NoExtract` в `pacman.conf`, указав маску для ненужных файлов, чтобы предотвратить их установку. Смотрите pacman (Русский)#Запрет на установку файлов.

##### Адаптер не обнаруживается после загрузки Windows

Если WiFi адаптер не обнаруживается после работы в Windows, это может быть связано с функцией быстрого запуска Windows (Fast Startup), которая включена по умолчанию. Попробуйте отключить Fast Startup. Смотрите также iwlwifi kernel driver wiki.

#### Отключение мерцания LED-индикатора

Примечание: Работает с драйверами `iwlegacy` и `iwlwifi`.

Настройка модуля по умолчанию — мигание LED при работе. Некоторые находят это неприятным. Чтобы настроить постоянное свечение индикатора при работе Wi-Fi, можно использовать systemd-tmpfiles:

    /etc/tmpfiles.d/phy0-led.conf

    w /sys/class/leds/phy0-led/trigger - - - - phy0radio

Чтобы изменения заработали, выполните `systemd-tmpfiles --create phy0-led.conf` или перезагрузитесь.

Чтобы посмотреть все возможные триггеры LED-индикатора, выполните

    # cat /sys/class/leds/phy0-led/trigger

Совет: Если у вас нет файла `/sys/class/leds/phy0-led`, попробуйте параметр модуля ядра `led_mode="1"`. Он должен работать для драйверов `iwlwifi` и `iwlegacy`.

### Broadcom

Изучите статью Broadcom wireless.

### Другие драйверы/устройства

#### Tenda w322u

Для этой карты Tenda подходят рекомендации для `rt2870sta`. См. #rt2x00.

#### orinoco

Драйвера входят в пакет ядра и должны быть уже установлены.

Среди чипсетов Orinoco есть чипы Hermes II. Для них можно использовать драйвер `wlags49_h2_cs` вместо `orinoco_cs`, если нужна поддержка WPA. Чтобы использовать драйвер, сначала установите запрет загрузки `orinoco_cs`.

#### prism54

Драйвер `p54` входит в ядро, но вам придётся загрузить прошивку карты с сайта и установить её в каталог `/usr/lib/firmware`.

Примечание: Есть также старый драйвер `prism54`, который может конфликтовать с более новыми драйверами (`p54pci` или `p54usb`). Убедитесь, что установлен запрет загрузки `prism54`.

#### zd1211rw

zd1211rw — драйвер для ZyDAS ZD1211 802.11b/g USB WLAN чипсетов. В настоящее время включен в ядро. Список поддерживаемого оборудования: [15]. Предварительно придётся установить файлы прошивки из пакета zd1211-firmwareAUR.

#### hostap_cs

Host AP — драйвер Linux для беспроводных карт на основе чипсета Intersil Prism2/2.5/3. Драйвер включён в ядро Linux.

Примечание: Сделайте запрет загрузки модуля `orinico_cs`, от него могут быть проблемы.

### ndiswrapper

Ndiswrapper — скрипт-обёртка, который позволяет использовать некоторые драйвера Windows для Linux. Вам потребуются файлы `.inf` и `.sys` из драйвера Windows.

Примечание: Убедитесь, что драйвера соответствуют вашей архитектуре (x86 или x86_64).
Совет: Если вам нужно извлечь эти файлы из файла `*.exe`, то можно воспользоваться пакетом cabextract.

Чтобы настроить ndiswrapper, выполните следующие шаги:

1. Установите пакет ndiswrapper-dkms.
2. Установите драйвер в каталог `/etc/ndiswrapper/*`:

       # ndiswrapper -i filename.inf

3. Просмотрите список установленных драйверов ndiswrapper:

       $ ndiswrapper -l

4. Сохраните настройки ndiswrapper в файл `/etc/modprobe.d/ndiswrapper.conf`:

       # ndiswrapper -m
       # depmod -a

После установки ndiswrapper необходимо настроить автоматическую загрузку модуля при запуске системы.

Проверьте работоспособность ndiswrapper:

    # modprobe ndiswrapper
    # iwconfig

В списке интерфейсов должен появиться беспроводной интерфейс wlan0. В случае каких-либо проблем полезную информацию можно найти на страницах ndiswrapper howto и ndiswrapper FAQ.

## Смотрите также

- The Linux Wireless project — документация по беспроводной (IEEE-802.11) подсистеме Linux.
- Aircrack-ng guide on installing drivers — установка драйверов для беспроводных сетевых интерфейсов.
- Wireless Device Database Wiki (Этот форк хостится на wi-cat.ru с тех пор как оригинальная wiki была отключена. Есть также две (неполные) версии: TechInfoDepot, deviwiki)

Categories:

- Wireless networking (Русский)
- Network configuration (Русский)

Hidden category:

- Pages with broken package links