• =?utf-8?B?0KXRg9C60Lgg0LTQuw==?= =?utf-8?B?0Y8=?= wpa_supplicant

    From Eugene Berdnikov@21:1/5 to All on Fri Aug 30 23:40:02 2024
    Коллеги,

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

    Проблема в том, что wpa_supplicant, отвечающий за ассоциацию с WiFI AP,
    никак не взаимодействует с клиентом dhcp. У него просто нет триггеров и
    хуков, как класса. Если бы они были, можно было бы дёрнуть клиента dhcp,
    чтобы тот обновил ip-адрес. Когда wpa_supplicant делает ассоциацию с AP,
    можно установить, что mac-адрес AP сменился и потому следует обновить
    параметры интерфейса. Но механизма для этого я в доках найти не могу.
    Может быть, я его просто не замечаю?

    Можно наскриптовать триггеры ручками, конечно. Но меня терзают смутные
    подозрения, что задача решается какими-то штатными средствами.
    --
    Eugene Berdnikov

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Eugene Berdnikov@21:1/5 to Stanislav Vlasov on Sat Aug 31 21:30:01 2024
    On Sat, Aug 31, 2024 at 09:34:38AM +0500, Stanislav Vlasov wrote:
    сб, 31 авг. 2024 г. в 02:32, Eugene Berdnikov <[email protected]>:

    Можно наскриптовать триггеры ручками, конечно. Но меня терзают смутные
    подозрения, что задача решается какими-то штатными средствами.

    Чем не устроил network manager?
    Вполне себе полностью автоматически подключается к доступной сети и
    конфигурит сеть по dhcp на моих ноутах лет этак 6.

    По существу претензий к NM у меня нет, хотя отношение к нему у меня
    было скорее негативное. Прежде всего из-за сложности и развесистости
    интерфейса (он не удовлетворяет моему требованию "простые вещи должны
    делаться просто"), и субъективно из-за того, что сталкиваться с ним
    приходилось лишь когда он что-то ломал у юзеров/заказчиков/etc... :)
    Мне всегда ifupdown был достаточен, и лишь для WiFi его не хватило.

    Я почитал доку на NM и обнаружил, что в качестве бэкенда к стэку 802.11
    он использует либо wpa_supplicant, либо iwd, причём iwd не рекомендуется.
    Это дало толчок в правильном направлении: я подумал, что кроме NM могут
    быть и другие фронтенды, после чего нашёл таки работающий интерфейс для
    триггеров: "wpa_cli -i <ifname> -а /path/to/script" запускает скрипт
    по событиям ассоциации с AP. Именно то, что мне нужно, только оно
    оказалось не внутри wpa_supplicant, а в сопровождающей утилите.

    За подсказку насчёт NM спасибо, посмотрю и поиграюсь с ним. Если он
    при смене AP корректно делает dhcp-запросы, и достаточно управляем
    по части заполнения /etc/resolv.conf, возможно, я перейду на него
    и не стану городить свою обёртку над wpa_cli.
    --
    Eugene Berdnikov

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Victor Wagner@21:1/5 to Eugene Berdnikov on Mon Sep 2 08:20:01 2024
    On Sat, 31 Aug 2024 00:26:35 +0300
    Eugene Berdnikov <[email protected]> wrote:

    Коллеги,

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


    Если не хочется свяываться с новомодными монстрами, вроде NM, то читать
    /usr/share/doc/wpasupplicant/README.Debian.gz на тему roaming mode.

    Я этим roaming mode пользуюсь уже много лет и никогда оно не подводило.

    Реально мой /etc/network/interfaces.d/wlan0 выглядит примерно так:

    allow-hotplug wlp3s0
    iface wlp3s0 inet manual
    pre-up rfkill unblock wlan
    wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
    iface default inet dhcp
    hostname my-notebook-namе

    --

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From sergio@21:1/5 to Eugene Berdnikov on Sun Sep 8 15:40:02 2024
    On 31/08/2024 00:26, Eugene Berdnikov wrote:

    Может быть, я его просто не замечаю?

    wpa_action ?

    --
    sergio.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)