< Network configuration (Русский)

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

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

Состояние перевода: На этой странице представлен перевод статьи Network configuration/Wireless. Дата последней синхронизации: 12 июля 2021. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

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

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

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

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

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

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

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

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

Также проверьте вывод команды , чтобы убедиться, что сетевой интерфейс был создан; обычно название беспроводного интерфейса начинается с буквы "w", например, wlp2s1. Затем включите интерфейс командой

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

Например, если интерфейс называется , команда примет вид .

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

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

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

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

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

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

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

Утилиты

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

Для настройки беспроводного соединения необходим определённый набор программ. Для этих целей подойдет либо сетевой менеджер, либо один из следующих пакетов:

УтилитаПакетWEXTnl80211WEPWPA/WPA2Archiso
wireless_tools1wireless_toolsДаДаДа
iwДаДаДа
wpa_supplicantДаДаДаДаДа
iwdДаДаДа
  1. Устарела.

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

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

Ниже представлено сравнение некоторых команд утилит 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

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

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

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

$ iw dev

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

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

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

$ 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.

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

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

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

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

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

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

  • SSID: название сети.
  • Signal: мощность беспроводного излучения в единицах dBm (например, от -100 до 0). Более близкие к нулю значения означают лучший сигнал. На основании отображаемой мощности можно получить представление о покрытии сети.
  • Security: напрямую не указывается; проверьте строку, которая начинается с . Если там содержится указание , например, capability: ESS Privacy ShortSlotTime (0x0411), то ваша сеть как-то защищена.
    • Если вы видите информационный блок RSN, то сеть защищена протоколом Robust Security Network, также известным как WPA2.
    • Если вы видите информационный блок , то сеть защищена протоколом Wi-Fi Protected Access.
    • В блоках RSN и может быть указана следующая информация:
      • 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, ни , но есть раздел , то используется защитный протокол WEP.

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

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

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

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

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

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

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

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

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

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.

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

MS-CHAPv2

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

eduroam

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

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

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

  • wpa_supplicant настраивается напрямую в его файле настроек или посредством интерфейса; используется вместе с клиентом DHCP. Примеры настроек приведены в файле .
  • iwd#WPA Enterprise.
  • NetworkManager может создавать профили WPA2 Enterprise с помощью утилиты nmcli или графических интерфейсов. Утилита mntui эту возможность не поддерживает (NetworkManager issue 376), но работает с готовыми профилями.
  • ConnMan требует создания отдельного файла настроек перед соединением с беспроводной сетью. Подробности можно найти в руководстве и в статье Connman#Connecting to eduroam.
  • netctl может использовать настройки wpa_supplicant посредством блоков . Детали вы найдёте в руководстве .
Примечание: В настройках netctl особые правила использования кавычек: см. netctl.profile(5) §SPECIAL QUOTING RULES.

WPA3 Personal

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

wpa_supplicant поддерживает WPA3 Personal (опция в включена начиная с версии 2:2.9-4).

iwd поддерживает WPA3 как минимум с версии 1.0.

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

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

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

Regdomain определяет доступность беспроводных каналов. Так, на частоте 2.4GHz разрешено использовать каналы 1-11 в США, 1-14 — в Японии, и каналы 1-13 в большей части остального мира. На частоте 5GHz правила доступа к каналам несколько сложнее. В Википедии можно найти подробную информацию о доступности каналов: [1], [2].

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

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

Для настройки regdomain установите пакет и перезагрузитесь, чтобы перезапустить модуль и все относящиеся к нему драйвера. Проверьте лог загрузки, чтобы убедиться, что CRDA был запущен модулем :

# dmesg | grep cfg80211

Назначьте regdomain (например, для США):

# iw reg set US

И проверьте настройки:

$ iw reg get
Примечание:
  • По умолчанию ваше устройство может быть настроено на "страну 00", которая означает условный "мировой домен" и содержит обобщённые настройки. Если изменить этот параметр не удаётся, то скорее всего причиной неправильная настройка CRDA.
  • При компиляции кастомного ядра в качестве альтернативы crda можно включить параметр CONFIG_CFG80211_INTERNAL_REGDB. После включения необходимо переместить db.txt в net/wireless/db.txt. Подробнее см. .

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

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

# dmesg | grep ath:

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

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

$ iw list | grep -A 15 Frequencies:

Постоянная настройка выполняется с помощью раскомментирования нужного домена в файле .

wpa_supplicant также может управлять доменом посредством строки в файле

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

Дополнительную информацию по настройке и использованию регулятивного домена можно найти в документации wireless.kernel.org.

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

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

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

# rfkill unblock wifi

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

По ссылке можно найти дополнительную информацию о Rfkill.

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

Смотрите раздел Энергосбережение#Сетевые интерфейсы.

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

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

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

Если с сетевой платой возникли проблемы и нужен доступ в сеть Интернет, например, чтобы загрузить определённое ПО или задать вопрос на форумах, можно раздать интернет на компьютер с 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 адреса неоднократно не удаётся при использовании клиента по умолчанию , попробуйте установить и использовать вместо него. Не забудьте выбрать dhclient как первичный DHCP клиент в вашем менеджере соединений!
  • Если вы можете получить IP для проводного интерфейса, но не можете для беспроводного, попробуйте отключить энергосберегающие функции вашей беспроводной карты:
# iwconfig wlan0 power off
  • Если вы получаете timeout ошибку из-за waiting for carrier проблемы, возможно вам понадобится установить канал в для конкретного устройства:
# iwconfig wlan0 channel auto

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

Не выполняется разрешение хоста по действительному 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

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

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

Причина #2

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

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

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

Причина #3

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

Причина #4

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

Чтобы решить эту проблему, сначала попробуйте подключиться к маршрутизатору с отключённой аутентификацией.

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

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

Причина #5

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

Решение — отключить Intel IOMMU driver (DMA), добавив в параметры ядра .

Причина #6

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

Создайте файл , если он отсутствует, и добавьте в него следующую строку:

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

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

Это решение было обнаружено в .

Причина #7

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

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

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

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

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

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

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

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

rt2x00

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

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

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

rt3090

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

rt3290

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

rt3573

Чипсет 2012 года. Для стабильной работы могут потребоваться проприетарные драйвера Ralink, которые используются многими производителями беспроводного оборудования .

mt7612u

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

Realtek

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

rtl8192cu

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

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

rtl8723ae/rtl8723be

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

На картах с этими чипсетами возможны ошибки в работе функции энергосбережения. Это проявляется в случайных разрывах соединения, которые не обнаруживаются высокоуровневыми сетевыми менеджерами (netctl, NetworkManager). Обнаружить ошибку можно командами или , найдя сообщения, относящиеся к энергосбережению (powersave) и модулю /. Если это ваш случай, используйте опцию ядра , чтобы предотвратить "засыпание" карты и разрывы соединения. См. See Модули ядра#Настройка параметров модуля.

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

rtl88xxau

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

ЧипсетВерсия драйвераПакетПримечания
rtl8811au, rtl8812au и rtl8821au5.6.4.2Модули ядра aircrack-ng для чипсетов 8811au, 8812au, 8814au и 8821au с режимом мониторинга и поддержкой инъекций.
rtl8812au5.9.3.2Последний официальный драйвер Realtek, только для rtl8812au.
rtl8811au, rtl8821au5.8.2.3Новейшая версия драйверов для rtl8821au.
rtl8814au5.8.5.1Возможно, работает также и для rtl8813au.

rtl8811cu/rtl8821cu

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

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

Если даже с загруженным модулем интерфейс не работает, попробуйте вручную задать опцию , например . Другие значения тоже могут работать. Подробнее см. Модули ядра#Настройка параметров модуля.

rtl8821ce

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

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

rtl8822bu

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

rtl8xxxu

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

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

Atheros

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

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

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

ath5k

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

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

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

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

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

ath9k

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

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

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

Power saving

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

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

# iw dev wlan0 set power_save on
command failed: Operation not supported (-95)

Для решения необходимо установить опцию для модуля , см. Модули ядра#Настройка параметров модуля.

ipw2100 and ipw2200

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

iwlegacy

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

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

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

/etc/modprobe.d/iwl4965.conf
options iwl4965 11n_disable=1

Если проблемы во время загрузки остались и вы используете драйвер Nouveau, попробуйте включить KMS, чтобы предотвратить конфликт оборудования.

iwlwifi

iwlwifi — беспроводной драйвер для современных чипов Intel, таких как 5100AGN, 5300AGN и 5350AGN. Список поддерживаемых устройств: . Пакет linux-firmware содержит ряд прошивок, а в пакете можно найти некоторые последние обновления.

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

/etc/modprobe.d/iwlwifi.conf
options iwlwifi 11n_disable=1 swcrypto=1

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

Название параметра не должно ввести вас в заблуждение — при установке его в значение ничего не отключается, но запускается режим агрегации. ,

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

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

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

Bluetooth Coexistence

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

Прошивка выводит трассировку стека

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

Чтобы решить эту проблему, выполните откат пакета linux-firmware или переименуйте последнюю версию прошивки вашего устройства, чтобы загрузилась старая версия (при условии, что пакет не входит в список игнорируемых).

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

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

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

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

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

Broadcom

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

Tenda w322u

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

orinoco

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

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

prism54

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

ACX100/111

Пакеты: (удалены из официальных репозиториев и AUR).

См. также официальную страницу проекта.

zd1211rw

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

hostap_cs

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

ndiswrapper

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

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

1. Установите пакет .

2. Установите драйвер в каталог :

# ndiswrapper -i filename.inf

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

$ ndiswrapper -l

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

# ndiswrapper -m
# depmod -a

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

Наконец, нужно добавить ndiswrapper в Linux ядро и убедиться, что он работает:

# modprobe ndiswrapper
# iwconfig

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

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

gollark: tio!debug
gollark: ```cunion ApioData { float apio; int apiobee; char apioform[22];} ;int main() { union ApioData data; data.apio = 3.0; data.apioform = "bees bees bees"; printf("%f", data.apio);}```
gollark: ```cunion ApioData { float apio; int apiobee; char apioform[22];} ;int main() { union ApioData data; data.apio = 3.0; printf("%f", data.apio);}```
gollark: tio!debug
gollark: ```cunion ApioData { float apio; int apiobee; char apioform[22];} ;int main() {}```
This article is issued from Archlinux. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.