Перейти к содержанию

Вопрос

Опубликовано

Имеется Wi-Fi система из KN-3010 в роли контроллера и двух KN-3210 в роли ретрансляторов. Также есть проблемный клиент OnePlus 9R, у которого производитель в OxygenOS 13 сломал переходы по FT - телефон держится за первой точкой доступа, не выполняя переход к другой до полной потери сигнала от первой. В логах это выглядит так:

[I] Mar  3 11:07:43 ndm: Network::Interface::Rtx::WifiMonitor: "WifiMaster0/AccessPoint0": STA(mac) FT authenticated successfully. 
[I] Mar  3 11:07:43 ndm: Network::Interface::Rtx::WifiMonitor: "WifiMaster0/AccessPoint0": STA(mac) MIC differs in key handshaking. 
[I] Mar  3 11:07:43 ndm: Core::Syslog: last message repeated 4 times.
[I] Mar  3 11:07:44 ndm: Network::Interface::Rtx::WifiMonitor: "WifiMaster0/AccessPoint0": STA(mac) had deauthenticated by STA (reason: unspecified). 

С поддержкой выяснили, что проблема в некорректном формировании поля Mesh Peering Management драйвером клиента - превышается максимальная длина пакета, в результате чего точка отвечает ошибкой:

Скрытый текст

image.thumb.png.b02566e0348e52fad66bd7e758fc47b7.png

Баг-репорт с дампом эфира, где явно видно, что это проблема драйвера клиента, был отправлен в OnePlus, откуда я получил ответ, что исправление будет "в ближайшем будущем".

По предыдущему опыту с OnePlus 6, где также производитель много месяцев обещал исправить сломавшийся переход по FT в спящем режиме, но так этого и не сделал, отправив девайс в EoL, решил создать дополнительную сеть в сегменте (необходимо, чтобы клиент имел полный доступ к сегменту) без FT, где будет работать хотя бы переход по PMK-кэшу, т.к. с этим у OnePlus проблем не замечал.

Скопировал все настройки из основной сети сегмента, исключив только связанные с FT параметры, включил её в сегмент и попробовал выполнить переходы. Результат оказался аналогичный - телефон делает попытки перейти на другую ТД, но они завершаются неудачно. Согласно логам точки, к которой клиент собирается перейти, выглядит так, как будто клиент подключился и его сразу же отключился, т.к. его "выкинула" ТД:

[I] Mar  3 11:08:55 ndm: Network::Interface::Rtx::WifiMonitor: "WifiMaster0/AccessPoint2": STA(mac) had re-associated successfully. 
[I] Mar  3 11:08:55 ndm: Network::Interface::Rtx::WifiMonitor: "WifiMaster0/AccessPoint2": STA(mac) had deauthenticated by AP (reason: STA is leaving or has left BSS). 

Мной был снят дамп эфира в моменты перехода. Согласно нему, точка, к которой клиент собирается перейти, отвечает ему на reassociation request. Затем идет целая пачка deauth-пакетов от точки, которой клиент покидает:

Скрытый текст

image.thumb.png.f77f50d01f8dffabe93059a9973b6277.png

Далее вторая точка по каким-то причинам не начинает хэндшейк с клиентом, и в результате, переход не завершается, телефон остается на первой точке. Чтобы исключить проблему именно с OnePlus 9R, попробовал в этой сети выполнить переход с другими клиентами, их поведение было полностью аналогично.

Если же создать новый сегмент, в котором настроить сеть без FT, то телефон начинает корректно выполнять переход по PMK между точками, нигде не "застревая". В логах в этот момент нет никаких отключений:

[I] Mar  3 11:13:11 ndm: Network::Interface::Rtx::WifiMonitor: "WifiMaster0/AccessPoint3": STA(mac) had re-associated successfully. 
[I] Mar  3 11:13:11 ndm: Network::Interface::Rtx::WifiMonitor: "WifiMaster0/AccessPoint3": STA(mac) set key done in WPA2/WPA2PSK. 

Снятый дамп эфира показал, что deauth-пакетов от первой точки оказалось намного меньше, а вторая начала хэндшейк, в результате чего переход завершился:

Скрытый текст

image.thumb.png.8415a1a9660787acf51cf1031c8f5ba8.png

В попытках понять причину, начал откатываться на более старые версии KeeneticOS с имеющимися настройками. В уже довольно старой 3.7.4 обнаружил, что переход по PMK-заработал в дополнительной сети сегмента, равно как и не сломался в новом  сегменте. Снятые дампы показали, что точка, от которой клиент "уходит", вовсе не шлет deauth, а вторая, к которой клиент переходит, начинает хэндшейк и переход далее успешно завершается.

Затем, прямо с 3.7.4 пробовал обновиться до прошивок 3.9-4.0, в дополнительной сети сразу же сломался переход по PMK, а в новом сегменте сохранил свою работу.

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

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

@Padavan подскажите, пожалуйста, с чем может быть связано такое поведение?
А также, возможно ли со стороны точки доступа проигнорировать поле Mesh Peering Management в пакете от клиента при совершении FT-перехода? Какие в этом случае могут быть последствия в работе FT для сети и её клиентов?

Все снятые дампы эфира, self-test с разных версий KeeneticOS отправлял ранее в поддержку. Ticket ID: 126899824.

Рекомендуемые сообщения

  • 0
Опубликовано

В 4.0 Alpha 18 есть улучшение после исправления SYS-810. Заработал переход по PMKID в направлении: 2.4 ГГц ретранслятора -> 5 ГГц контроллера.

В обратном: 5 ГГц контроллера -> 2.4 ГГц ретранслятора, а также между сетями 2.4 ГГц контроллера и ретранслятора - не работает.

  • 0
Опубликовано

В 4.0 Beta 0.3 после исправления SYS-845 корректно заработали переходы по PMKID во всех направлениях и диапазонах в дополнительной сети сегмента. Спасибо!

  • 0
Опубликовано
В 25.06.2023 в 00:48, bigbrother72 сказал:

При этом samsung s22 и ipad переходят нормально

Возможно, переходы не работает из-за проблемы в прошивке OnePlus 8 Pro.

Попробуйте отключить в настройках сети кинетика роуминг 802.11r (FT) и еще раз проверить: image.png.fee7552f860828ae4597cef714e109c1.png

  • 0
Опубликовано

Я уже отключил 802.11r - сейчас более менее переключается с точки на точку

image.thumb.png.4693859f356b0448bfd69dbe243d0043.png

 

А еще попутно вопрос - зачем каждый день в 5:30 узлы мэш системы отключаются если смотреть по журналу переходов?

 

image.thumb.png.5898d10e1c89ca7a573eb64545dad3f3.png

  • 0
Опубликовано
2 минуты назад, bigbrother72 сказал:

зачем каждый день в 5:30 узлы мэш системы отключаются если смотреть по журналу переходов?

Нет ли проводных устройств в сети, которые в это время могут включаться/выключаться или перезагружаться?

  • 0
Опубликовано (изменено)
4 часа назад, dimon27254 сказал:

Нет ли проводных устройств в сети, которые в это время могут включаться/выключаться или перезагружаться?

Точно. В 5:30 включается каждый день компьютер по расписанию.

Подключен проводом к основному узлу сети.

Но как это связано интересно?

 

Изменено пользователем bigbrother72
  • 0
Опубликовано
3 часа назад, bigbrother72 сказал:

Но как это связано интересно?

При использовании Wi-Fi системы на проводных портах как контроллера, так и ретрансляторов, включается протокол STP, предназначенный для предотвращения образования петель.

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

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

Ранее у меня была абсолютно аналогичная ситуация, все беспроводные устройства отваливались при любом включении/выключении проводных. Решил её с использованием следующей статьи: https://help.keenetic.com/hc/ru/articles/4405876929682-Отключение-поддержки-STP-на-порту-коммутатора-роутера

Присоединяйтесь к обсуждению

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

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...

Важная информация

На этом сайте используются файлы cookie. Нажимая "Я принимаю" или продолжая просмотр сайта, вы разрешаете их использование: Политика конфиденциальности.