Рост пинга Mikrotik RB3011 на RouterOS 7: диагностика
Почему растёт пинг до роутера Mikrotik RB3011UiAS после обновления на RouterOS 7? Пошаговая диагностика: bridge HW offload, conntrack, ARP, WireGuard. Команды, метрики и обходные решения для устранения проблемы.
Почему растёт пинг до роутера Mikrotik (RB3011UiAS) из локальной сети после перехода на RouterOS 7 и как это диагностировать/устранить?
Ситуация:
- Устройство: RB3011UiAS, обновлён до RouterOS 7.20.6 (ранее RouterOS 6 long).
- Сеть: ~100 устройств (PC, принтеры, ТСД). Беспроводная сеть частично на CAPSMAN на этом же роутере, частично на сторонних точках доступа.
- Топология и настройки: большинство устройств подключено к LAN bridge; созданы 3 VLAN на базе LAN bridge; настроены маршруты между VLAN; для каждой подсети — отдельный DHCP (частично статика, частично динамика); настроена маркировка трафика (RDP, web и т.п.) и очереди; простой firewall.
- Конфигурация: копировалась частично вручную с другого Mikrotik; добавлены Wireguard и новые типы очередей при переходе на RouterOS 7.
Наблюдаемое поведение:
- После перезагрузки пинг до роутера с локального проводного ПК ~1 ms.
- В течение ~8 часов пинг растёт примерно на 2–3 ms, линейно; через пару суток достигает ~10 ms и продолжает расти (при предыдущей попытке на ROS7 через неделю доходил до 70–80 ms).
- Нагрузка на CPU существенно не меняется; профиль и интерфейсные метрики не показывают явных аномалий.
- Пинг до внешних адресов и до устройств за VPN остаётся стабильным.
Вопросы — прошу советов по диагностике и устранению:
- Какие наиболее вероятные причины постепенного увеличения задержки только до самого роутера? Какие подсистемы проверить в первую очередь (например: bridge / hardware offload / DSA, рост ARP/neighbor таблицы, conntrack / правила firewall, queue tree, Wireguard, утечки памяти или баги в RouterOS 7)?
- Какие конкретные команды и метрики снять и в каком порядке для локализации проблемы? Какие выводы лучше приложить к вопросу (например: /system resource, /tool profile, /interface monitor-traffic, /ip arp print, /ip firewall connection print, /queue tree print, /log print и т.п.)?
- Есть ли известные баги в RouterOS 7.x, ведущие к постепенному росту RTT до самого устройства, и какие рабочие обходные решения вы посоветуете (отключение HW offload/bridge hardware acceleration, изменение очередей, откат на RouterOS 6 и т.п.)?
- Какие части конфигурации лучше приложить для анализа (bridge, VLAN, firewall, queue, интерфейсы, Wireguard)?
Конфигурацию могу приложить по запросу. Заранее благодарю за идеи.
Mikrotik RB3011UiAS после перехода на RouterOS 7 часто показывает постепенный рост пинга до самого роутера из‑за деградации аппаратной разгрузки моста (hardware offload / DSA), накопления состояний (conntrack/ARP/bridge-host) или багов ядра/моста в ROS7; частые виновники — особенности bridge/VLAN, CAPsMAN и WireGuard. Начните с систематического сбора метрик (/system resource, /tool profile, /interface bridge port/host, /ip firewall connection, queue‑статистика, логи) и быстрого A/B‑теста: временно отключить HW offload/WireGuard/сложные очереди и посмотреть — исчезает ли рост RTT.
Содержание
- Почему растёт пинг до Mikrotik RB3011 на RouterOS 7
- Пошаговая диагностика: команды и метрики
- Какие подсистемы проверить в первую очередь
- Рабочие обходные решения и рекомендации
- Какие части конфигурации приложить для анализа
- Источники
- Заключение
Почему растёт пинг до Mikrotik RB3011 на RouterOS 7
Коротко: когда ping до самого роутера растёт, а до внешних адресов остаётся стабильным, это почти всегда «контроль‑плэйн» или обработка пакета на CPU, а не линк‑пропускная способность. Почему так может происходить на RB3011 + RouterOS 7:
- Аппаратная разгрузка моста (HW offload / fast‑path / DSA) может постепенно терять работоспособность или частично отключаться (например, при взаимодействии VLAN → несколько switch‑чипов или при включении use‑ip‑firewall). В changelog ROS7 есть правки, связанные с логикой HW offloading и bridge/DHCP‑snooping, что указывает на широкий набор исправлений и регрессий в этой области https://mikrotik.wiki/wiki/MikroTik_RouterOS_7.8.x_(stable).
- Баги/регрессии в ядре/мосте ROS7 (встречались жалобы на циклы перезагрузки и kernel‑issues в ветке 7.20), они могут вызывать деградацию задержки даже при невысокой средней загрузке CPU https://forum.mikrotik.com/t/routeros-v7-20-have-kernel-issues/265269.
- Нарастание таблиц (ARP, bridge‑host, conntrack): большое число динамических записей увеличивает накладные расходы на обработку пакета, особенно если трафик нацелен на сам рутер. Проверяли ли вы рост количества ARP/bridge‑host/conntrack со временем?
- Firewall/conntrack/queue‑tree: stateful‑правила и сложные очереди могут добавлять латентность для пакетов, адресованных CPU (включая ICMP до маршрутизатора).
- WireGuard/другие туннели: на ARM‑процессоре RB3011 крипто/контекстные операции могут фрагментировать расписание и повышать латентность на некоторых ядрах.
- CAPsMAN и локальная нагрузка от множества AP/станций: CAPsMAN на том же процессоре добавляет контрольных сообщений и может вносить задержку в обработку локального ICMP.
- Физические ошибки/пакетная потеря на портах/interrupt storm: редкие ошибки портов приводят к задержкам, даже если средняя загрузка CPU кажется нормальной.
Сумма: поведение «низкий ping сразу после ребута → линейный рост в часах/сутках» часто указывает на нарастающую таблицу/утечку состояния или деградацию HW‑offload, а не на мгновенную перегрузку CPU.
Пошаговая диагностика: какие команды запускать и какие метрики снимать (порядок действий)
План — собрать «baseline» сразу после перезагрузки (когда ping ~1 ms) и периодически (через 1ч, 4ч, 8ч, 24ч). Сохраняйте выводы в файлы и предоставьте их при обращении за помощью.
- Базовый снимок (сделать сразу после reboot, когда проблема минимальна)
- /system resource print
- /system resource monitor (наблюдать 30–60s)
- /tool profile start 30s; затем /tool profile print — посмотреть, какие подсистемы занимают CPU
- /interface print detail
- /interface monitor-traffic [name=имя_моста] once — TX/RX, drops
- /interface bridge port print — обратить внимание на колонку hw (offload)
- /interface bridge host print — число выученных MAC/entry count; ищите «switch‑cpu» записи
- /interface bridge settings print — флаги (use‑ip‑firewall и др.)
- /ip arp print — общее число записей
- /ip firewall connection print (или print count-only) — число conntrack записей
- /ip route print detail — смотреть наличие suppress‑hw‑offload флага у маршрутов
- /queue tree print (и /queue simple print) — active queues, backlog, pkt‑drops
- /log print where message~“offload” or where message~“kernel” — поиск сообщений об отключении offload / ошибках ядра
- /ip dhcp-server lease print count‑only — число DHCP‑аренд
- /interface ethernet print stats — ошибки/overruns
- Дневной мониторинг (автоматически или вручную через SNMP/graphing)
- Включите SNMP или встроенное graphing для interface/cpu/memory, или снимайте вышеуказанные команды каждые 10–30 минут в течение 24–48 часов. Это покажет, какие счётчики растут линейно. SNMP: /snmp set enabled=yes (и настройка external collector).
- Делайте «long ping» с клиента: ping -i 1 -c 86400 <router_ip> (или winMTR) и сохраняйте результаты для сравнения (jitter, loss, median, p95).
- A/B‑тесты (быстрые эксперименты — выполняйте в maintenance window)
- Отключить WireGuard: временно disable интерфейс WireGuard и смотреть, исчезает ли рост RTT. Команда: в Winbox/CLI временно disable интерфейс WireGuard (через /interface disable <номер>).
- Отключить очереди: временно отключить (или поставить disabled=yes) сложные queue tree.
- Отключить CAPsMAN (если включён) или перевести несколько AP на автономный режим.
- Принудительно отключить HW offload (тест): можно установить suppress‑hw‑offload для проблемных маршрутов или отключить hw на bridge‑портах для теста:
- /ip route set [find] suppress-hw-offload=yes — (см. cheat‑sheet) https://mikrotikusers.com/mikrotik-routeros-7-x-cheat-sheet/
- проверить /interface bridge port print и временно set hw‑flag (например: /interface bridge port set
hw=no) — осторожно, это может разорвать трафик; тестируйте коротко. - Наблюдать ping и метрики после каждого изменения.
- Диагностические признаки (что искать в выводах)
- Conntrack растёт со временем → подозрение на stateful‑таблицу: /ip firewall connection print count-only увеличивается.
- Bridge‑host / ARP растут без причины → много динамики в L2; возможно «flood» / неправильный VLAN / STP.
- Логи содержат сообщения «offload disabled» / «switch» / «bridge: …» → HW offload теряет состояние.
- Нет явной нагрузки CPU, но tool profile показывает «interrupts» или «bridge» как активную подсистему → CPU обрабатывает контроль‑плэйн.
- Интерфейсные ошибки (rx‑drops, overruns) → физические проблемы или плохие кабели/дуплекс.
- Что приложить, если будете просить помощи
Собранные файлы/выводы:
- /system resource print (последовательные снимки)
- /tool profile print (снимок при проблеме)
- /interface bridge port print (до и после теста)
- /interface bridge host print (количество записей)
- /ip arp print (количество)
- /ip firewall connection print (количество)
- /queue tree print (статистика)
- /log print (последние 200–500 строк)
- Результаты long‑ping / winMTR (файлы)
- Небольшой экспорт конфигурации: /export compact file=conf‑redacted.rsc (затем удалить/зашифровать ключи, PSK, public keys)
Подробный список ниже в разделе «Какие части конфигурации приложить».
Какие подсистемы проверить в первую очередь (приоритет и команды)
- Bridge / HW offload / DSA (высокий приоритет)
- Команды:
- /interface bridge port print — смотреть колонку hw
- /interface bridge host print — искать «switch‑cpu» и рост числа записей
- /interface bridge settings print — use‑ip‑firewall и др.
- Почему: если L2‑offload деградирует, трафик, адресованный CPU (в т.ч. ICMP к роутеру), начнёт обрабатываться на CPU и будет нарастать задержка. См. обсуждения проблем с L2 offload в ROS7 https://forum.mikrotik.com/t/crs317-ros7-l2-offload/264238 и правки в changelog ROS7 https://mikrotik.wiki/wiki/MikroTik_RouterOS_7.8.x_(stable).
- ARP / Bridge‑host growth
- /ip arp print — число записей
- /interface bridge host print — MAC/port map
- Почему: тысячи ARP/bridge‑записей увеличивают работу CPU и lookup latency.
- Conntrack / Firewall
- /ip firewall connection print count-only
- /ip firewall filter export (короткий дамп)
- Raw‑правила (notrack) — временно можно отключить трекинг для доверенной LAN, если хотите снизить нагрузку (см. раздел обходных решений).
- Почему: conntrack влияет на обработку пакетов, даже если CPU % остаётся «нормальным».
- Queue tree / QoS
- /queue tree print /queue simple print
- Ищите: backlog, drops, long‑term queue depth.
- Почему: сложные QoS‑правила могут добавлять задержку к пакетам, адресованным локальному CPU.
- WireGuard / VPN
- /interface wireguard print — статистика по байтам/handshake
- Временно отключите WG и проверьте поведение.
- Почему: шифрование/дешифрование и контекстные переключения могут влиять на latency на старом ARM.
- Логи и kernel сообщения
- /log print — ищите «offload», «switch», «kernel» и «oom» или другие сообщения.
- Почему: многие регрессии ROS7 проявлялись в логах и changelog (v7.20 имел сообщения о kernel issues) https://forum.mikrotik.com/t/routeros-v7-20-have-kernel-issues/265269.
- Физика интерфейсов
- /interface ethernet monitor‑traffic /interface print stats
- Ищите errors, collisions, overruns — они создают прерывания и задержки.
Если после проверки первых шагов вы увидите явный рост одной из таблиц (ARP/bridge/conntrack), это уже большая подсказка, куда двигаться дальше.
Рабочие обходные решения и рекомендации (быстрая помощь и долгосрочная стратегия)
Порядок действий — от минимально инвазивного к более радикальным:
- Быстрые A/B‑тесты (существенно не меняют конфигурацию)
- Отключите WireGuard на 1–2 часа и наблюдайте RTT. Если проблема уходит — дело в туннелях/крипто‑нагрузке.
- Временно отключите сложные queue tree (set disabled=yes) — проверить влияние на задержку.
- Изолируйте CAPsMAN: переведите 1‑2 AP в автономный режим или временно выключите CAPsMAN.
- Тесты с аппаратной разгрузкой (только в maintenance window)
- Принудительный путь через CPU (проверочный): включите/выключите use‑ip‑firewall или временно отключите hw‑offload на bridge‑портах, чтобы понять, связана ли деградация с offload. Например:
- /interface bridge settings set use-ip-firewall=yes — принудит обработку IP‑трафика через IP firewall (внимание: может увеличить CPU).
- /ip route set [find] suppress-hw-offload=yes — подавляет HW offload для маршрутов (см. cheat sheet) https://mikrotikusers.com/mikrotik-routeros-7-x-cheat-sheet/.
- Если при отключении HW‑offload поведение улучшилось и стабильно — можно оставить это как временное решение, но понимать: throughput снизится.
- Минимизировать conntrack для доверенной LAN
- Если локальная сеть не требует stateful‑контроля/NAT для внутреннего трафика, можно добавить raw notrack правило:
- /ip firewall raw add chain=prerouting src-address=192.168.0.0/16 action=notrack comment=“LAN notrack”
Это снизит число conntrack‑записей для LAN и уменьшит накладные расходы. Внимание: notrack отключает отслеживание и может ломать состояния и NAT‑логи.
- Упростить/оптимизировать очереди
- На время диагностики упростите очереди (используйте простые PCQ вместо сложной tree), проверьте влияние на jitter.
- Обновление/откат RouterOS
- Проверьте changelog и баг‑репорты: иногда регресс появляется в конкретной версии (у вас 7.20.6; есть жалобы на v7.20). Пробуйте тестовую версию с исправлениями или вернитесь на проверенную stable (если есть подтверждение, что на ROS6 проблема отсутствует). Перед откатом — экспортируйте конфиг и проверьте несовместимости между ROS7 и ROS6. Читайте релиз‑ноты и обсуждения багов (форумы). См. обсуждения проблем с L2 offload/пингами в сообществе https://forum.mikrotik.com/t/crs317-ros7-l2-offload/264238 и комментарии по 7.20 https://forum.mikrotik.com/t/routeros-v7-20-have-kernel-issues/265269.
- Аппаратный апгрейд / перенос функций
- Если проблема связана с вычислительными ограничениями RB3011 на ROS7 (устройства с небольшой памятью/ARM реже комфортно держат ROS7), перенести WireGuard/CAPsMAN или heavy‑tasks на отдельное устройство (RB5009, CCR) — практичное решение. В сообществе многие переходили на более мощные роутеры, когда ROS7 требовал больше ресурсов.
- Эскалация к MikroTik
- Если после сбора логов и тестов остаётся непонятно, соберите все запросы/логи/конфигурацию и откройте тикет или задайте вопрос на форуме MikroTik — приложите long‑ping, /tool profile и bridge/host/conntrack‑снимки.
Какие части конфигурации лучше приложить для анализа (что собрать и как редактировать)
Соберите эти выводы (до и после тестов), прежде чем присылать запрос в форум/в саппорт:
- /system resource print (несколько снимков: сразу после reboot и при росте пинга)
- /tool profile print (скрипт/снимок при проявлении проблемы)
- /interface bridge print; /interface bridge port print; /interface bridge host print (количество и примеры записей)
- /interface print detail (порты, скорости, errors)
- /ip arp print (количество записей)
- /ip firewall connection print (и count‑only)
- /ip firewall filter export (краткий экспорт правил)
- /ip route print detail (посмотреть suppress‑hw‑offload флаги)
- /queue tree print (и simple)
- /interface wireguard print (статистика)
- /ip dhcp-server lease print count‑only
- /log print last‑500 (фильтровать по offload/switch/kernel)
- long ping/winMTR файлы (пинг сразу после ребута и через 8–24–48 часов)
- краткая текстовая хронология (когда обновляли, когда появились первые симптомы)
Как редактировать: удалите/замаскируйте публичные ключи, PSK, пароли, внешние IP, номера телефонов; вместо них укажите PLACEHOLDER. Экспортируйте компактный конфиг: /export compact file=conf.rsc и затем отредактируйте файл.
Источники
- https://mikrotik.wiki/wiki/MikroTik_RouterOS_7.8.x_(stable)
- https://mikrotikusers.com/mikrotik-routeros-7-x-cheat-sheet/
- https://forum.mikrotik.com/t/crs317-ros7-l2-offload/264238
- https://forum.mikrotik.com/t/routeros-v7-20-have-kernel-issues/265269
- https://wiki.mikrotik.com/wiki/Manual:Interface/Bridge
- https://forum.mikrotik.com/t/not-able-to-ping-any-address-with-pingtool/183359
- https://forum.mikrotik.com/t/rb5009-with-80-pppoe-client-experience-high-ping-with-low-cpu-usage/266164
- https://www.reddit.com/r/mikrotik/comments/1jyuxo5/understanding_why_i_cant_use_the_firewall/
- https://настройка-микротик.рф/обновление-на-routeros-7/
Заключение
Коротко — начните с систематического сбора метрик (resource, profile, bridge‑host, conntrack, очереди, логи) и long‑ping; затем выполните быстрые A/B‑тесты: временно отключите WireGuard, сложные очереди и CAPsMAN, и принудительно переключите трафик через CPU (тест отключения HW‑offload). Если при этих тестах пинг перестаёт расти — виновник в offload/bridge/conntrack, и можно принять обходные решения (suppress‑hw‑offload для маршрутов, raw notrack для доверенной LAN или временное отключение HW‑offload), либо перейти на версию RouterOS с исправлениями или на более мощное устройство. Соберите перечисленные выводы и конфиг (редактируйте ключи) — приложите сюда, и можно будет детальнее локализовать проблему на вашем Mikrotik RB3011 под RouterOS 7.