Вы когда-нибудь видели ситуацию, когда пинг есть, а связи нет? Или клиент получил IP по DHCP, сидит в сети, но до него не достучаться? Или вдруг в логах MikroTik появляется страшное «detected conflict by ARP» — и начинается паника?
Добро пожаловать в мир ARP. Протокол, про который все знают, но мало кто понимает до конца. В MikroTik он реализован богато: режимы, тайминги, интеграция с DHCP, поведение в bridge и VLAN. Один неверный параметр — и сеть ложится. Тихо. Без объяснений.
В этой статье разберём всё: что такое ARP в MikroTik, как читать ARP таблицу, зачем нужны режимы proxy-arp, reply-only, local-proxy-arp, как лечить конфликты и как защитить сеть от левых устройств. С командами CLI, без воды.
Что такое ARP и зачем он вообще нужен
ARP — Address Resolution Protocol. Протокол разрешения адресов. Его задача простая и приземлённая: перевести IP-адрес в MAC-адрес.
Когда устройство A хочет отправить пакет устройству B в той же подсети, оно знает IP назначения, но не знает MAC. Без MAC не построить Ethernet-фрейм. ARP делает следующее:
- Устройство A кричит в широковещательный эфир: «Эй, кто имеет IP 192.168.1.10? Скажи мне свой MAC!»
- Устройство B с IP 192.168.1.10 отвечает: «Это я, мой MAC — aa:bb:cc:dd:ee:ff»
- Устройство A запоминает ответ в свою ARP-таблицу и отправляет пакет уже с конкретным MAC
Этот обмен происходит тысячи раз в день в каждой сети. MikroTik участвует в нём как маршрутизатор, коммутатор и, при необходимости, как «посредник» — proxy-arp.
ARP таблица MikroTik: как смотреть и читать
Первая команда, которую нужно знать каждому, кто работает с MikroTik:
/ip arp print
Пример вывода:
Flags: X - disabled, I - invalid, H - DHCP, D - dynamic, P - published, C - complete # ADDRESS MAC-ADDRESS INTERFACE STATUS 0 D 192.168.1.1 aa:bb:cc:dd:ee:01 ether1 complete 1 D 192.168.1.10 aa:bb:cc:dd:ee:02 ether2 complete 2 192.168.1.20 aa:bb:cc:dd:ee:03 ether3 incomplete 3 H 192.168.1.30 aa:bb:cc:dd:ee:04 bridge complete
Что означают флаги
- D (dynamic) — запись создана автоматически при ARP-обмене. Живёт до истечения arp-timeout
- H (DHCP) — запись добавлена автоматически DHCP-сервером (когда включён
add-arp=yes) - P (published) — MikroTik отвечает на ARP-запросы от имени этого IP (используется в proxy-arp)
- C (complete) — запись актуальна, MAC известен
- incomplete — ARP-запрос был отправлен, но ответа ещё нет или устройство недоступно
Детальный вывод
/ip arp print detail
Покажет полную информацию по каждой записи, включая время создания и интерфейс.
Статические vs динамические записи
Динамические записи создаются автоматически и удаляются по таймауту. Статические — добавляются вручную администратором и живут вечно (до явного удаления). Статические записи используются для защиты сети: зафиксировал MAC для конкретного IP — и ни одно чужое устройство не «угонит» этот адрес.
/ip arp add address=192.168.1.100 mac-address=aa:bb:cc:dd:ee:ff interface=ether2
Очистка ARP таблицы MikroTik
Бывает, что глюки в сети связаны с устаревшими или битыми ARP-записями. Лечится просто — очисткой ARP таблицы.
Удалить все динамические записи
/ip arp remove [find dynamic]
Удалить вообще всё (осторожно!)
/ip arp remove [find]
⚠️ Внимание: после полной очистки MikroTik заново соберёт ARP-таблицу из трафика. Пока она не наполнится — часть трафика может не проходить. Используй на рабочей сети в нерабочее время.
Удалить одну запись
/ip arp remove [find address=192.168.1.100]
Режимы ARP в MikroTik: главный блок
Вот где начинается настоящая магия (и настоящие грабли). У каждого интерфейса в MikroTik можно выставить режим работы ARP. Смотрим текущий режим:
/interface ethernet print detail
В выводе будет строка arp=enabled (или другое значение). Меняется так:
/interface ethernet set ether1 arp=<режим>
Режим enabled — стандартный
Это значение по умолчанию. MikroTik ведёт себя как нормальный участник сети:
- Принимает ARP-запросы и отвечает на них
- Сам отправляет ARP-запросы для определения MAC соседей
- Динамически заполняет ARP-таблицу
Когда использовать: всегда, если нет специальных требований. Это нормальная работа маршрутизатора.
/interface ethernet set ether1 arp=enabled
Режим reply-only — только статика
В этом режиме MikroTik отвечает на ARP-запросы только для IP-адресов, которые есть в ARP-таблице как статические или DHCP-записи. Динамическое обучение отключено полностью.
Что это значит на практике:
- Новое устройство подключилось в сеть — MikroTik его не «видит» в ARP, пока запись не появится явно
- Идеально для связки с DHCP +
add-arp=yes - Защита: только «легальные» устройства из DHCP-аренды получат связь
/interface ethernet set ether2 arp=reply-only
⚠️ Грабли: если поставишь reply-only без статических записей или без работающего DHCP с add-arp — клиенты потеряют связь. Сеть ляжет тихо и непонятно.
Режим proxy-arp
В режиме proxy-arp MikroTik отвечает на ARP-запросы от имени устройств, которые находятся в другом сегменте сети. Фактически, роутер говорит клиенту: «MAC для этого IP? Это я!» — и берёт на себя пересылку пакетов.
Когда нужен:
- Когда два сегмента сети находятся в одной IP-подсети, но разделены маршрутизатором
- Старые сети без VLAN, где нужно изолировать трафик без изменения адресации
- VPN-туннели, где клиенту нужно «видеть» удалённые устройства в одной подсети
/interface ethernet set ether1 arp=proxy-arp
⚠️ Грабли: proxy-arp — это костыль. Он создаёт широковещательный шторм в больших сетях и усложняет диагностику. В современных сетях с нормальными VLAN и маршрутизацией — не нужен.
Режим local-proxy-arp
Похож на proxy-arp, но работает внутри одного сегмента. MikroTik отвечает на ARP-запросы для хостов, которые находятся в той же подсети, что и запрашивающий.
Когда нужен:
- Изоляция клиентов внутри одной подсети (например, в гостевой сети или у провайдера)
- Когда клиенты в одной подсети не должны общаться напрямую — весь трафик идёт через роутер
/interface ethernet set ether3 arp=local-proxy-arp
Используется в связке с правилами firewall для изоляции клиентов друг от друга при общей подсети. Частый кейс — публичный WiFi.
Режим disabled
ARP полностью отключён на интерфейсе. MikroTik не отвечает на ARP-запросы и не отправляет их. Только статические записи, всё вручную.
/interface ethernet set ether4 arp=disabled
Используется редко, в высокозащищённых сегментах, где вся адресация прописана статически.
Сравнительная таблица режимов ARP
| Режим | Динамическое обучение | Отвечает за чужие IP | Основное применение |
|---|---|---|---|
| enabled | ✅ Да | ❌ Нет | Стандартная работа |
| reply-only | ❌ Нет | ❌ Нет | Защита + DHCP |
| proxy-arp | ✅ Да | ✅ Да (другой сегмент) | Мост между сегментами |
| local-proxy-arp | ✅ Да | ✅ Да (своя подсеть) | Изоляция клиентов |
| disabled | ❌ Нет | ❌ Нет | Полностью ручное управление |
DHCP и ARP: параметр add-arp for leases
Один из самых полезных параметров в настройке MikroTik — add-arp=yes в DHCP-сервере. Вот что он делает.
Что такое add arp for leases в MikroTik
Когда DHCP-сервер выдаёт аренду (lease) клиенту, он автоматически добавляет статическую ARP-запись для этого клиента в таблицу /ip arp. Запись помечается флагом H (DHCP) и удаляется автоматически, когда аренда истекает.
/ip dhcp-server set 0 add-arp=yes
Или при создании DHCP-сервера:
/ip dhcp-server add name=dhcp1 interface=ether2 address-pool=pool1 add-arp=yes
Зачем это нужно
В связке с arp=reply-only на интерфейсе получаем защищённую схему:
- Клиент подключается → DHCP выдаёт IP → автоматически добавляется ARP-запись
- Интерфейс работает в reply-only → отвечает только на «легальные» записи из DHCP
- Устройство с прошитым статическим IP (не из DHCP) не получит ARP-ответа → нет связи
Это простая и эффективная защита от несанкционированных устройств в сети без сложных ACL и 802.1X.
Проверить аренды с ARP
/ip dhcp-server lease print
В выводе будет столбец active-mac-address и статус. Если add-arp включён — соответствующие записи появятся в /ip arp print с флагом H.
ARP timeout в MikroTik: настройка и влияние на сеть
Динамические ARP-записи живут не вечно. По истечении таймаута MikroTik удаляет их и при необходимости запрашивает заново.
Что такое arp timeout
Это время жизни динамической ARP-записи. По умолчанию в MikroTik — 30 минут. Можно изменить глобально:
/ip settings set arp-timeout=30m
Или задать в секундах:
/ip settings set arp-timeout=120s
Как таймаут влияет на сеть
- Слишком большой таймаут — устаревшие записи остаются в таблице. Если устройство сменило MAC (например, виртуалка), трафик будет идти не туда. Долго не замечаете проблему.
- Слишком маленький таймаут — частые ARP-запросы. В больших сетях с тысячами устройств это создаёт значительный широковещательный трафик.
Рекомендации по arp timeout
| Тип сети | Рекомендуемый таймаут | Причина |
|---|---|---|
| Небольшой офис (до 50 устройств) | 30m (по умолчанию) | Нет смысла менять |
| Крупная сеть (500+ устройств) | 5m–10m | Быстрее обнаруживаем смену MAC |
| Динамичная среда (VM, контейнеры) | 1m–5m | Частая смена MAC у виртуалок |
| Стабильная статическая сеть | 1h–4h | Снижаем ARP-шторм |
ARP timeout в VLAN и bridge
В конфигурациях с VLAN и bridge важно понимать, что ARP-таймаут применяется к записям на уровне L3-интерфейсов. Bridge-интерфейсы наследуют глобальные настройки, но поведение может отличаться в зависимости от версии RouterOS и настроек HW offloading.
Если используете VLAN-интерфейсы поверх bridge:
/ip settings print
Убедитесь, что arp-timeout выставлен разумно для вашей топологии.
ARP в Bridge и VLAN: нюансы
Bridge в MikroTik — это виртуальный коммутатор. У него есть собственный ARP-параметр, который работает немного иначе.
Настройка ARP на bridge-интерфейсе
/interface bridge set bridge1 arp=enabled
Поддерживаются все те же режимы: enabled, reply-only, proxy-arp, local-proxy-arp, disabled.
Особенности ARP в bridge
- Bridge работает на L2, но если у него есть IP-адрес — он участвует в ARP на L3
- При использовании HW offloading (аппаратное ускорение) часть ARP-обработки уходит на чипсет — поведение может отличаться
- В bridge с несколькими портами широковещательный ARP-запрос форвардится на все порты bridge — это нормально
- Если порты bridge входят в разные VLAN — ARP изолируется по VLAN
ARP и VLAN: правильная схема
При работе с tagged VLAN на bridge:
/interface vlan add name=vlan10 vlan-id=10 interface=bridge1 /ip address add address=192.168.10.1/24 interface=vlan10 /interface vlan set vlan10 arp=enabled
Каждый VLAN-интерфейс имеет собственные ARP-настройки. Это позволяет тонко управлять поведением для разных сегментов сети.
ARP timeout для VLAN
Отдельного arp-timeout для VLAN в MikroTik нет — применяется глобальный /ip settings arp-timeout. Если нужны разные таймауты для разных сегментов — смотри в сторону статических ARP-записей для критичных хостов.
Proxy ARP в MikroTik: глубже
Когда proxy-arp реально нужен
Классический кейс: у вас есть две физические сети с одной IP-подсетью 192.168.1.0/24, разделённые MikroTik. Нормальная маршрутизация здесь не работает — подсеть одна. Proxy-arp позволяет роутеру «притворяться» любым хостом для другой стороны и перенаправлять трафик.
Ещё один кейс — VPN-клиенты. Если удалённый клиент получает IP из той же подсети, что и локальные устройства, proxy-arp позволяет им «видеть» друг друга без дополнительных маршрутов на клиентах.
Как работает proxy-arp
- Устройство A (192.168.1.10) хочет найти устройство B (192.168.1.20), которое за роутером
- A посылает ARP-broadcast: «Кто 192.168.1.20?»
- MikroTik (с proxy-arp) знает маршрут до 192.168.1.20 и отвечает: «Это я!» — со своим MAC-адресом
- A отправляет пакет на MAC MikroTik, роутер пересылает его устройству B
/interface ethernet set ether1 arp=proxy-arp /interface ethernet set ether2 arp=proxy-arp
Оба интерфейса нужно перевести в proxy-arp, чтобы работало в обе стороны.
Local proxy-arp: изоляция клиентов
Это режим для провайдеров, гостевых сетей и публичного WiFi. Задача: клиенты в одной подсети не должны общаться напрямую, весь трафик идёт через роутер.
/interface wireless set wlan1 arp=local-proxy-arp
В сочетании с firewall-правилами, запрещающими forward между клиентами, получаем полную изоляцию при общей подсети. Клиент видит шлюз, шлюз видит всех, а клиенты между собой — нет.
Когда proxy-arp НЕ нужен
- Если у вас нормальные VLAN с разными подсетями и маршрутизацией — proxy-arp только навредит
- В больших сетях proxy-arp создаёт избыточный ARP-трафик
- Если есть возможность нормально разделить подсети — используйте маршрутизацию, а не proxy-arp
Конфликты ARP в MikroTik: диагностика и лечение
ARP-конфликт — это когда два устройства в сети заявляют об одном IP-адресе. Один из самых противных видов проблем: сеть «работает», но у части пользователей нет связи, и она то появляется, то пропадает.
Что вызывает ARP-конфликты
- Дублирующиеся IP — два устройства со статически прописанным одинаковым IP
- Rogue DHCP-сервер — в сети появился чужой DHCP, который раздаёт адреса из того же пула
- Смена MAC при сохранении IP — устройство переконфигурировано, старая ARP-запись ещё живёт
- Виртуальные машины — при клонировании VM может получить тот же MAC или IP
- Кривые настройки HSRP/VRRP — если виртуальный IP не настроен корректно
Как MikroTik сообщает о конфликте
В логе MikroTik появится сообщение вида:
arp: detected conflict for 192.168.1.10, response from aa:bb:cc:dd:ee:ff on ether2
Или:
arp: detected conflict by arp response for 192.168.1.10
Диагностика ARP-конфликтов
Шаг 1: Смотрим лог MikroTik
/log print where topics~"info" and message~"arp"
Или через Winbox: Logs → фильтр по «arp».
Шаг 2: Смотрим ARP-таблицу на предмет дублей
/ip arp print
Ищем два разных MAC для одного IP.
Шаг 3: Находим виновника по MAC
/ip arp print where mac-address="aa:bb:cc:dd:ee:ff"
Смотрим на каком интерфейсе и в каком сегменте светится этот MAC.
Шаг 4: Связываем MAC с DHCP-арендой
/ip dhcp-server lease print where mac-address="aa:bb:cc:dd:ee:ff"
Это покажет, какому устройству был выдан этот MAC и какой IP.
Шаг 5: Проверяем IP-адреса устройств
На Windows-клиенте: arp -a покажет локальную ARP-таблицу. Если для одного IP два разных MAC — конфликт подтверждён.
Лечение ARP-конфликтов
- Найти устройство с дублирующимся IP и поменять адрес
- Включить
add-arp=yesна DHCP +reply-onlyна интерфейсе — устройства со статическими IP из чужого диапазона не получат связи - Очистить ARP-таблицу после исправления:
/ip arp remove [find dynamic] - Настроить DHCP с фиксированными арендами для критичных устройств
5 практических кейсов
Кейс 1: Закрываем сеть от «левых» устройств
Задача: только устройства, получившие IP от нашего DHCP, должны иметь доступ в сеть. Любая статика — мимо.
# Включаем add-arp на DHCP-сервере /ip dhcp-server set [find name=dhcp1] add-arp=yes # Переводим клиентский интерфейс в reply-only /interface ethernet set ether2 arp=reply-only
Теперь: клиент запросил IP по DHCP → получил аренду → в ARP появилась H-запись → связь есть. Клиент с прошитым статическим IP → нет записи в ARP → нет ARP-ответа → нет связи.
Кейс 2: Лечим ARP-конфликт — находим виновника
# Смотрим логи на предмет конфликтов /log print where message~"conflict" # Ищем дубли в ARP-таблице /ip arp print # Находим MAC в DHCP-арендах /ip dhcp-server lease print where active-address=192.168.1.50 # Очищаем таблицу /ip arp remove [find dynamic]
После очистки таблица наполнится заново. Если конфликт повторится — лог снова подскажет MAC виновника.
Кейс 3: Изоляция клиентов в гостевой WiFi
Задача: клиенты в одной подсети не видят друг друга, только интернет.
# Local proxy-arp на WiFi-интерфейсе /interface wireless set wlan1 arp=local-proxy-arp # Запрещаем forward между клиентами в firewall /ip firewall filter add chain=forward in-interface=wlan1 out-interface=wlan1 action=drop
Клиенты видят шлюз, шлюз видит всех, клиенты — изолированы. Классика для хот-спотов.
Кейс 4: Proxy-arp для нестандартной сети
Задача: две физические сети в одной подсети 192.168.1.0/24 через MikroTik, без изменения адресации клиентов.
# На обоих интерфейсах включаем proxy-arp /interface ethernet set ether1 arp=proxy-arp /interface ethernet set ether2 arp=proxy-arp # Убеждаемся, что маршруты прописаны /ip route print
MikroTik будет отвечать на ARP от имени хостов на противоположном интерфейсе и маршрутизировать трафик между сегментами.
Кейс 5: Оптимизация arp-timeout для большой сети
Задача: сеть 800+ устройств, много динамики (сотрудники подключаются/отключаются, ноутбуки меняют подключения). Дефолтные 30 минут создают накопление устаревших записей.
# Смотрим текущее значение /ip settings print # Ставим 5 минут для динамичной среды /ip settings set arp-timeout=5m # Для критичных серверов добавляем статику /ip arp add address=192.168.1.10 mac-address=aa:bb:cc:dd:ee:01 interface=ether1 /ip arp add address=192.168.1.11 mac-address=aa:bb:cc:dd:ee:02 interface=ether1
Статические записи для серверов живут вечно — таймаут на них не влияет. Динамика обновляется каждые 5 минут — устаревшие записи уходят быстро.
Побочные эффекты и типичные ошибки
Ошибка 1: reply-only без DHCP с add-arp
Поставил reply-only → клиенты потеряли связь. Причина: нет записей в ARP для ответа. Лечение: включить add-arp=yes на DHCP или добавить статические записи.
Ошибка 2: proxy-arp везде
Включил proxy-arp на всех интерфейсах «для надёжности» → широковещательный шторм, перегрузка CPU, всё тормозит. Proxy-arp — точечный инструмент, не для масс-применения.
Ошибка 3: Забытые статические ARP-записи
Устройство сменили (новый MAC), статическая запись осталась → трафик идёт не туда. Всегда удаляй старые статические записи при смене оборудования.
/ip arp remove [find static]
Ошибка 4: Не очистил ARP после смены топологии
Переставил кабели, изменил VLAN — а старые ARP-записи ещё живут. Всегда очищай таблицу после значительных изменений в сети.
Ошибка 5: Игнорирование конфликтов в логах
«ARP-конфликт в логе? Ну и ладно, пинги проходят». Не ладно. Конфликты — симптом проблемы, которая рано или поздно ударит по сети в самый неподходящий момент.
Лучшие практики настройки ARP в MikroTik
- ✅ Для клиентских сетей используй связку
add-arp=yes(DHCP) +reply-only(интерфейс) — простая и эффективная защита - ✅ Для критичных серверов и сетевого оборудования создавай статические ARP-записи
- ✅ Регулярно проверяй
/ip arp print— не должно быть большого количества записей с флагом «incomplete» - ✅ Настрой логирование ARP-конфликтов и реагируй на них немедленно
- ✅ В больших сетях уменьши arp-timeout до 5–10 минут
- ✅ Proxy-arp применяй только при реальной необходимости — это костыль, не архитектурное решение
- ✅ После любых изменений в топологии сети выполняй
/ip arp remove [find dynamic] - ✅ В гостевых и публичных WiFi-сетях используй local-proxy-arp для изоляции клиентов
Итог: рецепт от IT-Аптеки
ARP в MikroTik — это не просто «протокол, который сам работает». Это инструмент с несколькими режимами, каждый из которых решает конкретную задачу. Разобраться в нём один раз — и многие загадочные проблемы в сети перестанут быть загадочными.
Что мы разобрали:
- Как читать ARP-таблицу MikroTik и что означает каждый флаг
- Режимы enabled, reply-only, proxy-arp, local-proxy-arp и disabled — когда что применять
- Как использовать add-arp for leases для защиты сети
- Как правильно настраивать arp-timeout под разные типы сетей
- Как диагностировать и лечить ARP-конфликты
- 5 готовых кейсов с командами CLI
Оставайтесь на связи
Рецепты от IT-боли. Без воды, без рекламы, без маркетинговой шелухи.
Подписаться на IT-Аптеку →


