Описание проблемы

При использовании точек доступа Unifi в гостевом сегменте, где MikroTik выполняет роль Hotspot (Captive Portal), включённая опция Proxy ARP в настройках WiFi-сети Unifi вызывает критический конфликт с механизмом привязки хостов MikroTik Hotspot. Unifi AP с включённым Proxy ARP отвечает на все ARP-запросы от клиентов от своего имени — то есть подставляет MAC точки доступа вместо реальных MAC-адресов клиентских устройств. В результате MikroTik видит десятки разных IP-адресов, приходящих с одного MAC (MAC самой AP).

Симптомы в логе MikroTik (/log print)

В логах hotspot появляется шторм однотипных строк (сотни за несколько минут):

hotspot1: new host detected 06:67:61:0A:E4:62/10.255.255.66 by TCP

hotspot1: dynamic host 10.255.254.3 removed: limiting addresses per mac

hotspot1: dynamic host 06:67:61:0A:E4:62/10.255.255.66 added, ip 10.255.254.2

hotspot1: new host detected 06:67:61:0A:E4:62/192.168.1.80 by UDP …

hotspot1: dynamic host 10.255.254.2 removed: limiting addresses per mac

Признаки, указывающие именно на эту проблему:

  • Один и тот же MAC постоянно мелькает с разными IP
  • Строка «limiting addresses per mac» появляется непрерывно
  • IP-адрес из другой подсети (например 192.168.1.x) виден за гостевым MAC
  • В Unifi-контроллере этот MAC соответствует точке доступа или LAPTOP с 15+ часами аптайма

Диагностика

Шаг 1 — Найти «виновный» MAC в логе (первый в строках «limiting addresses per mac»). Убедиться, что это MAC именно AP, а не клиента:

/ip dhcp-server lease print where mac-address=06:67:61:0A:E4:62

Шаг 2 — Открыть Unifi Network Controller → WiFi → нужная сеть → Advanced (Manual) → проверить галку Proxy ARP.

Решение

Снять галку Proxy ARP в настройках гостевой WiFi-сети в Unifi Network Controller:

  1. Открыть Unifi Network Controller
  2. Перейти в раздел WiFi → выбрать гостевую сеть (в примере: HOTEL 76/3)
  3. В блоке Advanced переключить режим на Manual
  4. Найти чекбокс Proxy ARP и снять галку
  5. Сохранить — AP перезапустит радио (клиенты переподключатся)

После отключения Proxy ARP каждое клиентское устройство начнёт появляться в логах MikroTik со своим реальным MAC-адресом. Hotspot корректно создаст запись для каждого клиента и будет управлять авторизацией нормально.

Проверка результата

После изменения настройки в логах hotspot должна появиться нормальная картина:

hotspot1: new host detected 3E:1D:4F:A7:72:B6/10.255.254.73 by UDP …

hotspot1: dhcp host 3E:1D:4F:A7:72:B6/10.255.254.73 added, ip 10.255.254.73

79266077098 (10.255.255.33): sending RADIUS accounting Interim-Update request

Признаки нормальной работы:

  • Каждый клиент — отдельный уникальный MAC
  • Строки «limiting addresses per mac» исчезли
  • RADIUS Interim-Update отправляется регулярно для авторизованных пользователей
  • Хосты нормально добавляются и удаляются по idle timeout

Побочные эффекты и важные замечания

Client Device Isolation (изоляция клиентов) в Unifi может оставаться включённой — она не мешает работе MikroTik Hotspot и не вызывает этой проблемы.

MAC Randomization на клиентских устройствах (iPhone, Android) — отдельная проблема: при смене рандомного MAC пользователь теряет сессию hotspot и вынужден авторизоваться заново. Лечится mac-cookie:

/ip hotspot user profile set [find default=yes] mac-cookie-timeout=3d

Затронутые конфигурации

  • MikroTik RouterOS 7.x + Hotspot + RADIUS (clientpulse, wifly и аналоги)
  • Unifi Network 7.x с Proxy ARP включён на гостевой SSID
  • Вероятно воспроизводится и на RouterOS 6.49.x