Wi-Fi в Linux почти всегда управляется NetworkManager, а его консольный интерфейс nmcli делает всё, что умеет графический апплет, и иногда чуть больше: показывает причины отказа, переподключает профили и работает там, где оболочка не запускается. Разберём состояния и радио, создание и правку профилей, точку доступа, живой мониторинг и разбор частых проблем подключения.

Состояние интерфейсов и радио

Начинать диагностику нужно с нескольких команд — они отвечают на вопросы «что вижу», «что включено» и «что настроено».

nmcli general status
nmcli device status
nmcli radio wifi
rfkill list
nmcli -f SSID,SIGNAL,CHAN,RATE,BSSID dev wifi list --rescan yes

Если статус интерфейса unavailable, чаще всего сработал аппаратный или программный блокиратор: rfkill list покажет, заблокирован ли Wi-Fi, а разблокировка — rfkill unblock all. Строка unmanaged означает, что интерфейс NetworkManager не принадлежит: проверьте, не осталась ли запись про него в /etc/network/interfaces или в /etc/NetworkManager/conf.d/ с managed=false. Обратите внимание на колонку SIGNAL — она уже отвечает на вопрос «почему медленно»: значение 60 и выше — это хорошо, а 30 при удалении роутера на две стены требуют антенны или ретранслятора.

Подключение и правка профилей

Самый короткий путь — подключиться к видимой сети, дальше работать с профилем как с объектом настроек.

nmcli device wifi connect "Home" password "secret"
nmcli connection show
nmcli connection show Home | grep -E "autoconnect|ipv4|SSID"

Всё, что относится к сети, хранится в профиле, и его удобно править пакетно. Ручной адрес, шлюз и DNS:

nmcli connection modify Home \
  ipv4.method manual \
  ipv4.addresses 192.168.1.50/24 \
  ipv4.gateway 192.168.1.1 \
  ipv4.dns "77.88.8.8 77.88.8.1"
nmcli connection up Home

Типичные правки профиля: отключение энергосбережения адаптера — nmcli connection modify Home 802-11-wireless.powersave 2; фиксация полосы или канала — 802-11-wireless.band bg и 802-11-wireless.channel 6; случайный аппаратный адрес для открытых сетей — 802-11-wireless.cloned-mac-address random. Если сеть появляется не в каждом скане, помогает явное указание имени: nmcli connection modify Home 802-11-wireless.ssid Home.

Точка доступа из командной строки

Раздача интернета с ноутбука сводится к одному профилю: интерфейсу задаётся собственный адрес, а DHCP и трансляция берёт на себя сам NetworkManager.

nmcli connection add type wifi ifname wlan0 con-name Hotspot ssid HomeAP \
  autoconnect no ipv4.method shared ipv4.addresses 192.168.42.1/24
nmcli connection modify Hotspot \
  802-11-wireless-security.key-mgmt wpa-psk \
  802-11-wireless-security.psk "longpassword"
nmcli connection up Hotspot

Параметр shared поднимает внутренний DHCP-сервер, раздаёт адреса клиентам и включает трансляцию наружу. Если интернет приходит по другому интерфейсу, дополнительно потребуется разрешение форвардинга в правилах nft. Для остановки — nmcli connection down Hotspot. Если адаптер не поддерживает режим точки доступа, это видно сразу: nmcli connection up Hotspot вернёт ошибку о недоступном режиме AP, и тогда остаётся проводное подключение или отдельный USB-адаптер.

Отдельно регулируется приоритет автоподключения: у NetworkManager несколько профилей с autoconnect, и они дерутся за интерфейс. Порядок задаётся числом, чем больше — тем выше шанс:

nmcli connection modify Home autoconnect-priority 100
nmcli connection modify Work autoconnect-priority 10
nmcli connection show | sort -k 7 -rn | head

Приоритет работает только когда у обоих профилей включён autoconnect, иначе NetworkManager подключится к первой найденной сети. Проверить, какой профиль реально активен, можно прямо во время переподключения: nmcli device status в колонке CONNECTION показывает имя профиля, а при смене сети строка меняется на глазах.

Живой мониторинг

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

nmcli monitor
journalctl -u NetworkManager -f
sudo iw dev wlan0 link
sudo iw dev wlan0 station dump

Первая команда ловит события «подключено», «отключено», «найдена новая сеть», вторая — подробности с уровня wpa_supplicant и DHCP. iw link показывает реальную скорость и сигнал после ассоциации: если там висят 54 Мбит/с, а роутер заявляет 1200, смотрите полосу и канал. Проверка адреса и маршрута: ip -br address show wlan0, ip route и nmcli -f IP4.ADDRESS,IP4.GATEWAY,IP4.DNS connection show Home.

Типичные проблемы

  • Подключено, но интернета нет. Чаще всего виноват DNS: resolvectl status покажет, откуда взялись серверы, а принудительно свои можно задать прямо в профиле — nmcli connection modify Home ipv4.dns "77.88.8.8 77.88.8.1". Проверяйте шлюз пингом: ping -c3 192.168.1.1.
  • Сеть отваливается через несколько минут. Энергосбережение адаптера: команда 802-11-wireless.powersave 2 из раздела профилей, а для драйверов Intel — параметр options iwlwifi power_save=0 в файле /etc/modprobe.d/iwlwifi.conf.
  • «Secrets were required» при верном пароле. Профиль запомнил старые секреты: удалите его (nmcli connection delete Home) и подключитесь заново. Если роутер перешёл на WPA3, а адаптер старый, принудительно задайте 802-11-wireless-security.key-mgmt wpa-psk.
  • После сна связь не восстанавливается. Посмотрите журнал за прошлую сессию journalctl -b -1 -u NetworkManager; на части плат помогает перезапуск sudo systemctl restart NetworkManager и повторный nmcli connection up Home.
  • Интерфейс занят другим менеджером. Если вместо NetworkManager работает самостоятельный wpa_supplicant или iwd, отключите их сервисы; переход на iwd как бэкенд, наоборот, оформляется файлом /etc/NetworkManager/conf.d/wifi-backend.conf с параметром wifi.backend=iwd.
  • Каналы недоступны из-за регуляторного домена. iw reg get покажет действующую страну; неверная карта ограничений закрывает часть каналов, и сеть перестаёт находиться.
  • Сеть видна, но не появляется в списке подключений. Запустите повторное сканирование nmcli device wifi rescan и убедитесь, что интерфейс в состоянии connected, а не connecting (prepare) — застрявший процесс ассоциации снимается переподключением профиля nmcli connection up Home.

Итог

Работа с Wi-Fi в Linux сводится к трём слоям: радио и состояние интерфейса (nmcli device status, rfkill), профили подключений, где хранятся адрес, DNS и энергосбережение, и живой мониторинг через nmcli monitor с журналом NetworkManager. Практически все типовые отказы — «нет адреса», «нет DNS», «отваливается через минуты», «не восстановился после сна» — читаются по одной команде, а точка доступа и ручной IP настраиваются теми же командами, что и обычное подключение.

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка 0 / 5. Количество оценок: 0

Оценок пока нет. Поставьте оценку первым.

Поделиться: Telegram ВКонтакте