Привет!
Кратко: Похоже, в прошивке unifi (>= 4.1.0.11151) есть проблема — все IPv6 multicast-пакеты, направленные клиенту, через несколько часов перестают проходить. Из-за этого роутер не отправляет клиентам Router Advertisements, и они теряют IPv6-связь. Странный баг проявляется только в диапазоне 5 ГГц. После перезагрузки или повторной настройки точки доступа всё работает несколько часов.
Подробности:
У меня два AP-AC Lite в сети, и с обновлением до стабильной версии 4.3.17.11279 я заметил, что клиенты через некоторое время теряют IPv6-адреса и связь. В целом у меня 4 SSID: один старый только IPv4 (без тегов), гостевая сеть (без тегов), одна с IPv4 + IPv6 Dualstack (VLAN 252) и публичный Wi-Fi без шифрования — IPv4 + IPv6 (VLAN 251). Проблема странным образом затрагивает только третий SSID (IPv4 + IPv6 Dualstack на VLAN 252). Публичный Wi-Fi работает абсолютно нормально.
Что я пробовал:
Проблема есть только на Wi-Fi 5 ГГц. Я проверял так: сидел рядом с точкой доступа, пока не потерял IPv6-связь. Даже после нескольких переподключений клиента проблема оставалась в сети 5 ГГц. Но как только отходил так, что оставалась только сеть 2,4 ГГц — устройство сразу получало IPv6-адрес и связь восстанавливалась.
Я проверил, что опции «Block LAN to WLAN Multicast and Broadcast Data», «Multicast Enhancement», «Auto-Optimize Network» выключены. Настройки публичной Wi-Fi и проблемного SSID одинаковые, кроме шифрования и VLAN.
Я специально включал «Block LAN to WLAN Multicast and Broadcast Data» и добавлял в белый список свой EdgeRouter, но через пару часов всё равно переставало работать.
Сделал захват трафика wireshark на интерфейсе ath, который назначен моему «сломленному» SSID. Подключил два устройства (ноутбук и Android-смартфон) к той же точке доступа по Wi-Fi 5 ГГц. Запустил пинг с ноутбука (fe80::c58:fb35:1904:950d) на смартфон (fe80::x:x:x:90da). Ноутбук отправляет neighbor solicitation, чтобы узнать MAC-адрес смартфона. Но эти запросы никогда не доходят до Android (проверил с помощью tcpdump на смартфоне). Вот почему Router Advertisements не доходят до клиента и он теряет IPv6-связь. Клиент отправляет router solicitation — он доходит до роутера — роутер отправляет router advertisement клиенту — точка доступа сбрасывает этот пакет. Я проверил с tcpdump и мой radvd работает идеально, так что проблема явно не в нем. Итог — multicast-пакеты для клиента на этой точке доступа просто сбрасываются.
Примечание: Поведение с пропаданием пакетов на «сломленном» SSID почти точно такое же, как если бы была включена опция «Block LAN to WLAN Multicast and Broadcast Data» без белого списка.
Я создал пятый SSID с тем же VLAN 252, что и у сломанного. Оба SSID страдали той же проблемой с IPv6 multicast. Публичный Wi-Fi при этом работал нормально.
Удалил гостевую и публичную Wi-Fi, оставил только два SSID — один с тегом (VLAN 252, IPv4 + IPv6) и один нетегированный (только IPv4). IPv6 multicast всё равно не работал.
Проверял разные версии прошивок:
- Testing 5.17: IPv6 multicast не работает
- Stable 4.3: IPv6 multicast не работает
- Testing 4.1.0: IPv6 multicast не работает
- Stable 4.0.80: не видел проблем с IPv6 multicast, эта версия у меня работала. Хотя слышал от кого-то, что после обновления до 4.3 и отката назад на 4.0.80 проблема тоже возникала.
- Контроллер 5.12.35 и сейчас 5.12.72 — на проблему с IPv6 multicast не влияет.
Может быть, баг связан с некоторыми исправлениями в 4.1.0?
[UAP] Сохранять IPv6 включённым на динамически созданном интерфейсе DVLAN.
[UAP] Исправить баг с multicast на DVLAN SSID и неисключённых пользователях.
Надеюсь, этот отчёт поможет вам понять и решить проблему. Если нужны дополнительные данные или отладочная прошивка для моей точки доступа — спрашивайте. Большое спасибо заранее!
Кратко: Похоже, в прошивке unifi (>= 4.1.0.11151) есть проблема — все IPv6 multicast-пакеты, направленные клиенту, через несколько часов перестают проходить. Из-за этого роутер не отправляет клиентам Router Advertisements, и они теряют IPv6-связь. Странный баг проявляется только в диапазоне 5 ГГц. После перезагрузки или повторной настройки точки доступа всё работает несколько часов.
Подробности:
У меня два AP-AC Lite в сети, и с обновлением до стабильной версии 4.3.17.11279 я заметил, что клиенты через некоторое время теряют IPv6-адреса и связь. В целом у меня 4 SSID: один старый только IPv4 (без тегов), гостевая сеть (без тегов), одна с IPv4 + IPv6 Dualstack (VLAN 252) и публичный Wi-Fi без шифрования — IPv4 + IPv6 (VLAN 251). Проблема странным образом затрагивает только третий SSID (IPv4 + IPv6 Dualstack на VLAN 252). Публичный Wi-Fi работает абсолютно нормально.
Что я пробовал:
Проблема есть только на Wi-Fi 5 ГГц. Я проверял так: сидел рядом с точкой доступа, пока не потерял IPv6-связь. Даже после нескольких переподключений клиента проблема оставалась в сети 5 ГГц. Но как только отходил так, что оставалась только сеть 2,4 ГГц — устройство сразу получало IPv6-адрес и связь восстанавливалась.
Я проверил, что опции «Block LAN to WLAN Multicast and Broadcast Data», «Multicast Enhancement», «Auto-Optimize Network» выключены. Настройки публичной Wi-Fi и проблемного SSID одинаковые, кроме шифрования и VLAN.
Я специально включал «Block LAN to WLAN Multicast and Broadcast Data» и добавлял в белый список свой EdgeRouter, но через пару часов всё равно переставало работать.
Сделал захват трафика wireshark на интерфейсе ath, который назначен моему «сломленному» SSID. Подключил два устройства (ноутбук и Android-смартфон) к той же точке доступа по Wi-Fi 5 ГГц. Запустил пинг с ноутбука (fe80::c58:fb35:1904:950d) на смартфон (fe80::x:x:x:90da). Ноутбук отправляет neighbor solicitation, чтобы узнать MAC-адрес смартфона. Но эти запросы никогда не доходят до Android (проверил с помощью tcpdump на смартфоне). Вот почему Router Advertisements не доходят до клиента и он теряет IPv6-связь. Клиент отправляет router solicitation — он доходит до роутера — роутер отправляет router advertisement клиенту — точка доступа сбрасывает этот пакет. Я проверил с tcpdump и мой radvd работает идеально, так что проблема явно не в нем. Итог — multicast-пакеты для клиента на этой точке доступа просто сбрасываются.
Примечание: Поведение с пропаданием пакетов на «сломленном» SSID почти точно такое же, как если бы была включена опция «Block LAN to WLAN Multicast and Broadcast Data» без белого списка.
Я создал пятый SSID с тем же VLAN 252, что и у сломанного. Оба SSID страдали той же проблемой с IPv6 multicast. Публичный Wi-Fi при этом работал нормально.
Удалил гостевую и публичную Wi-Fi, оставил только два SSID — один с тегом (VLAN 252, IPv4 + IPv6) и один нетегированный (только IPv4). IPv6 multicast всё равно не работал.
Проверял разные версии прошивок:
- Testing 5.17: IPv6 multicast не работает
- Stable 4.3: IPv6 multicast не работает
- Testing 4.1.0: IPv6 multicast не работает
- Stable 4.0.80: не видел проблем с IPv6 multicast, эта версия у меня работала. Хотя слышал от кого-то, что после обновления до 4.3 и отката назад на 4.0.80 проблема тоже возникала.
- Контроллер 5.12.35 и сейчас 5.12.72 — на проблему с IPv6 multicast не влияет.
Может быть, баг связан с некоторыми исправлениями в 4.1.0?
[UAP] Сохранять IPv6 включённым на динамически созданном интерфейсе DVLAN.
[UAP] Исправить баг с multicast на DVLAN SSID и неисключённых пользователях.
Надеюсь, этот отчёт поможет вам понять и решить проблему. Если нужны дополнительные данные или отладочная прошивка для моей точки доступа — спрашивайте. Большое спасибо заранее!
