Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Новинка
Распродажа
Новости
Доставка
Оплата
Загрузки
  • Прошивки
    • WinBox
    • RouterOS
    • Мобильные приложения MikroTik
    • Архив
  • RouterOS
  • Мобильные приложения MikroTik
  • Архив
Форум
Настройка
    info@mikrotik.moscow
    +7 495 320-55-52
    Заказать звонок
    Mikrotik.moscow
    Каталог
    • Акции
      Акции
    • Маршрутизаторы
      Маршрутизаторы
    • Коммутаторы
      Коммутаторы
    • Радиомосты и уличные точки доступа
      Радиомосты и уличные точки доступа
    • Wi-Fi для дома и офиса
      Wi-Fi для дома и офиса
    • LTE/5G
      LTE/5G
    • Powerline адаптеры
      Powerline адаптеры
    • IoT устройства
      IoT устройства
    • Оборудование 60 ГГц
      Оборудование 60 ГГц
    • Материнские платы RouterBOARD
      Материнские платы RouterBOARD
    • Корпуса
      Корпуса
    • Интерфейсы
      Интерфейсы
    • SFP/QSFP трансиверы
      SFP/QSFP трансиверы
    • Аксессуары
      Аксессуары
    • Антенны
      Антенны
    • Архив
      Архив
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Скачать WinBox Скачать Прошивки Форум > RouterOS Форум > SwOS Форум > Железо
    Mikrotik.moscow
    Каталог
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Mikrotik.moscow
    Телефоны
    +7 495 320-55-52
    Заказать звонок
    0
    0
    0
    Mikrotik.moscow
    • +7 495 320-55-52
      • Назад
      • Телефоны
      • +7 495 320-55-52
      • Заказать звонок
    • info@mikrotik.moscow
    • г. Москва, ул. Бакунинская, 84
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной


    • Кабинет
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    Форум
    RouterOS
    Складывается очередь записей ARP

    Складывается очередь записей ARP

    Форумы: RouterOS, Аппаратное обеспечение, SwOS, Обратная связь, Объявления, Сторонние инструменты
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Складывается очередь записей ARP, RouterOS
     
    mwhitaker
    Guest
    #1
    0
    28.04.2023 13:27:00
    Всем привет! Столкнулся с такой проблемой на нескольких сайтах, где у нас развернута RouterOS 7. Суть в том, что роутер не удаляет устаревшие записи ARP из таблицы для устройств, которые уже давно отошли от сети. Симптомы довольно характерные... Если зайти через веб-интерфейс и посмотреть таблицу ARP, то можно увидеть много записей с корректным IP, MAC и именем устройства, но пустым полем интерфейса (это все устройства, которые были подключены раньше). При этом рядом отображаются устройства, которые сейчас подключены, и у них стоит корректный интерфейс. Но если использовать команду /ip/arp/print detail, то там показываются только сейчас подключенные устройства, никаких устаревших записей нет. Наличие этих устаревших записей мешает DHCP-серверу выдавать адреса, если включена опция «Conflict Detection». При этом опция «Add ARP for leases» не включена. Проблема наблюдается на версиях 7.7 и 7.8.
     
     
     
    MartinW
    Guest
    #2
    0
    07.08.2023 16:35:00
    Я только что увидел это на роутере без настроенного proxy-arp (даже с довольно простой конфигурацией), так что, похоже, связь с proxy-arp — это просто отвлекающий манёвр... Мне тоже пришлось добавить плановый скрипт, который каждый вечер очищает записи... Не идеально, но пока сойдет. Не могу поверить, что сотни людей здесь об этом не жалуются... Похоже, мне придется потратить немного времени, чтобы найти минимальную конфигурацию, на которой я смогу это надежно воспроизвести.
     
     
     
    MartinW
    Guest
    #3
    0
    15.05.2023 11:08:00
    Кто-нибудь еще это видел? Не могу поверить, что мы тут одни…
     
     
     
    MartinW
    Guest
    #4
    0
    20.06.2023 14:47:00
    Все еще вижу это в версии 7.9.2 (сообщу, если в 7.10 эта проблема останется)…
     
     
     
    MartinW
    Guest
    #5
    0
    27.07.2023 14:47:00
    Все еще вижу это на версии 7.10.2. Пока не удалось воспроизвести проблему на минимальной конфигурации, но мне кажется, что это как-то связано с установкой arp=proxy-arp. Хотя на тех VLAN, где возникает проблема с неочищением ARP, этот параметр не установлен, он активирован на другом интерфейсе в системе. Это единственное, что приходит в голову, что может усложнять мою конфигурацию, которая в остальном вполне простая и понятная. (Отмечу, что сама по себе конфигурация не является причиной — все наши маршрутизаторы v6 с таким же набором настроек этой проблемы не испытывают.)
     
     
     
    pe1chl
    Guest
    #6
    0
    27.07.2023 15:04:00
    Я тоже заметил это на нашем роутере после обновления до версии v7. Обошёл проблему, добавив запланированный скрипт, который ночью удаляет записи ARP. Действительно, мы используем local-proxy-arp, так что может быть связано, хотя на другом роутере без этого я тоже вижу много старых записей ARP…
     
     
     
    pe1chl
    Guest
    #7
    0
    07.08.2023 17:32:00
    Ну, если только вы случайно на это не смотрите (я строил график количества ARP-записей в MTRG и заметил рост после обновления до версии 7), то, скорее всего, вы этого даже не заметите и не посчитаете «проблемой». Можно также включить опцию «add arp entry for leases» в DHCP, тогда таблица ARP будет постоянно заполнена... что сократит количество ARP-трафика. Что меня смущает (и что я пока не объяснил) — это то, что порой появляются неподтверждённые ARP-записи для адресов самого роутера.
     
     
     
    MartinW
    Guest
    #8
    0
    07.08.2023 19:36:00
    Дело в том, что это действительно вызывает проблему на сайтах с высоким уровнем «текучки» пользователей. Когда на DHCP-сервере включено обнаружение конфликтов (а это всегда хорошая идея), сервер отправляет ARP-запрос на IP-адрес, который собирается выдать. Если такая запись уже есть в ARP-таблице, он даже не отправляет запрос — просто помечает этот IP как занятый и переходит к следующему.
     
     
     
    colinardo
    Guest
    #9
    0
    16.08.2023 12:20:00
    Та же проблема на всех моих текущих системах с RouterOS v7, когда включен arp. Даже в версии 7.11 эта проблема остаётся. Очистка не происходит, даже при минимальной конфигурации. Явная установка значения таймаута на интерфейсе тоже ничего не меняет.
     
     
     
    pe1chl
    Guest
    #10
    0
    16.08.2023 14:13:00
    Я считаю, что значение таймаута никак не связано с тем, сколько времени запись ARP хранится в кэше роутера. Скорее, это время, в течение которого пакеты, отправленные на интерфейс, остаются «в очереди», пока запись ARP не подтверждена (то есть не получен ответ). Если данные остаются в очереди дольше заданного таймаута, а запись ARP так и не подтверждена, эти данные просто удаляются (память освобождается). Если же ответ на ARP приходит раньше таймаута, то данные из очереди отправляются. Наверное, должен быть ещё какой-то параметр, который указывает, как долго подтверждённая запись ARP может находиться в таблице, прежде чем её удалят и нужно будет заново её сформировать. Но такого параметра нет, и я видел такую же проблему даже на обычных Linux-системах с новым ядром (много записей ARP для устройств, которые давно отсутствуют в сети). Как я уже говорил, можно обойти это, создав регулярный скрипт, который удаляет записи ARP. Можно начать с команды «/ip arp remove [ find where !complete ]», а если этого мало — использовать «/ip arp remove [ find ]».
     
     
     
    TeWe
    Guest
    #11
    0
    12.09.2023 11:25:00
    У меня то же самое — версия 7.11.2, и записи ARP не исчезают. Очень простая конфигурация без VLAN и без функции «Добавлять ARP для аренд». Иногда на сети /24 бывает более 200 пользователей, так что было бы здорово, если бы это работало как надо, а не приходилось запускать по расписанию скрипты, чтобы всё функционировало...
     
     
     
    pe1chl
    Guest
    #12
    0
    12.09.2023 13:58:00
    Итак, создайте запланированный скрипт. Он работает и не вызывает никаких дополнительных проблем.
     
     
     
    holvoetn
    Guest
    #13
    0
    12.09.2023 14:14:00
    Долгое время требовался запланированный скрипт или netwatch для изменения DNS у пира Wireguard. В итоге это было решено, так что, может быть, подождите немного?
     
     
     
    pe1chl
    Guest
    #14
    0
    12.09.2023 14:41:00
    Как я уже писал, это то, что делает новый ядро Linux. Наверное, на это есть причина — может, так эффективнее или ещё почему-то.
     
     
     
    pcunite
    Guest
    #15
    0
    15.09.2023 11:48:00
    Да, у меня такая же проблема в RoS 7.9.2.
     
     
     
    EdPa
    Guest
    #16
    0
    15.09.2023 12:27:00
    Эти результаты ожидаемы и задокументированы, смотрите свойство max-neighbor-entries в настройках IP: Кэш ARP хранит ARP-записи, и если некоторые из них неполные, они могут там оставаться неопределённо долго. Это происходит только в том случае, если количество записей в кэше меньше четверти максимального разрешённого значения. Такая логика нужна, чтобы не запускать ненужный сборщик мусора, когда таблица ARP далеко не заполнена. Если это нежелательно, можно либо вручную очистить неполные записи, либо уменьшить значение max-neighbor-entries.
     
     
     
    TeWe
    Guest
    #17
    0
    15.09.2023 12:30:00
    Отлично, спасибо за окончательное уточнение.
     
     
     
    raimondsp
    Guest
    #18
    0
    15.09.2023 13:51:00
    Многопоточный алгоритм поиска адресов не требует затрат при обращении к таблице ARP, жертвуя при этом производительностью вставки и удаления записей. Это вполне логично: маршрутизатор добавляет запись в ARP один раз, а потом может обращаться к ней миллион раз. Сборщик мусора блокирует всю таблицу ARP, полностью останавливая разрешение адресов. Хотя это занимает лишь долю секунды, это всё равно важно, учитывая гигабиты трафика. Вот почему мы сохраняем отключённые хосты в таблице ARP, если позволяет память (до max-neighbor-entries / 4). Изменение уже существующих записей ARP требует гораздо меньше ресурсов, чем их добавление или удаление (при изменении блокируется только запись, а не вся таблица). Если вы всё же хотите удалить неполные или недоступные записи ARP, можно запланировать выполнение скрипта: /ip/arp/remove [find where !complete]
     
     
     
    TeWe
    Guest
    #19
    0
    15.09.2023 13:58:00
    То, что вы говорите, полностью логично. В моём случае я сейчас запускаю запланированный скрипт с командой /ip arp remove [ find where !complete ], и я очень доволен, потому что он делает именно то, что я хотел. Спасибо pe1chl и raimondsp — так держать!
     
     
     
    beaudettejl42
    Guest
    #20
    0
    22.11.2023 17:30:00
    У меня было много двойных записей, которые не были завершены; однако это выходит из-под контроля. У меня есть дюжина и больше, одна из них сама по себе содержит дюжину записей, которые показывают статус «завершено». Разве в этой версии 7 нет встроенной очистки ARP? Я понимаю, что изменение может быть полезным, но нам нужно иметь возможность делать ручную очистку. Есть какие-нибудь другие скрипты?
     
     
     
    Страницы: 1
    Читают тему
    +7 495 320-55-52
    info@mikrotik.moscow
    Электрозаводская, Бауманская
    Москва, ул. Бакунинская, 84с21
    Конфиденциальность Оферта
    © 2026 «Mikrotik.Moscow»
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры