Настройка Loop Protect в RouterOS на маршрутизаторах Mikrotik

11 октябрь 2016 14 738 3

В одной из предыдущих публикаций про обновление RouterOS 6.37 я уже упоминал про добавление функции Loop Protect. Если быть точнее, Loop Protect добавлен в RouterOS начиная с версии 6.37rc25. Несмотря на это, в сам Winbox эта опция была добавлена только с выходом обновления RouterOS 6.37.1. Тогда же был представлен обновленный Winbox 3.6. С выпуском обновленного Winbox 3.7 мелкие недочеты по прежнему не исправлены.

Что такое Loop Protect и зачем он нужен в RouterOS?

Loop Protect, как следует из названия, функция для защиты от образования петель на уровне Layer 2. Система поддерживает контроль интерфейсов ethernet, vlan, eoip и eoipv6.

Если Вы хотите научиться настраивать MikroTik, предлагаем пройти онлайн обучение. Более подробную информацию Вы можете найти в конце данной публикации.

Если функция активирована, роутер периодически отправляет специальный пакет и, если пакет приходит обратно на маршрутизатор, RouterOS сверяет MAC отправителя. В случае обнаружения петли, интерфейс, на который пришел пакет, отключается на заданное время, а в лог системы при этом записывается соответствующее уведомление.

Настройка Loop Protect в Winbox

Функция Loop Protect настраивается индивидуально для каждого интерфейса. Откроем, к примеру, интерфейс ether5-slave-local, как видите, функция имеет значение «default», по сути это «off», т.е. по-умолчанию функция отключена на всех интерфейсах.

При использовании командной строки, используется параметр


loop-protect=on|off|default


Разработчики по прежнему не пофиксили дублирование параметров, поэтому на повторяющиеся «on», «off» и остальные параметры в Winbox не стоит обращать внимания, это мелкий баг.

Есть важный нюанс, про который забывает упомянуть как производитель, так и люди, описывающие работу Loop Protect. Дело в том, что для работы функции, необходимо активировать опцию на всех (!) портах, на которых вы считаете возможным образование петель. Если вы активируете loop-protect=on только на одном сетевом интерфейсе, при образовании петли, все порты, находящиеся в одной сети (бридже), станут недоступными. В этом случае необходимо ликвидировать петлю и перезагрузить устройство.

Для того, чтобы воссоздать петлю, я соединил интерфейсы ether3-slave-local и ether5-slave-local патчкордом, сеть при этом «падает», так что заранее необходимо задать все параметры.

В нашем случае для ether3-slave-local и ether5-slave-local задан параметр loop-protect=on.

Как видите, система обнаружила петлю и отключила сетевой интерфейс.

Для того, чтобы правильно настроить функцию, давайте рассмотрим дополнительные параметры:

  • loop-protect-send-interval – в Winbox он отображается как Send Interval, данный параметр отвечает за интервал опроса интерфейса. По-умолчанию, здесь указано 5 сек, т.е. RouterOS будет проверять интерфейс каждые 5 секунд.
  • loop-protect-disable-time – он же Disable Time в Winbox. Данный параметр отвечает за время, на которое отключается сетевой интерфейс. По-умолчанию – 5 минут.
  • loop-protect-status – в Winbox отображается как Status. Может принимать 3 значения: on (LP включен), off (LP выключен) и disable (LP включен, обнаружена петля).

Казалось бы, реализовать цикличность и отключить интерфейс на 5 минут – хорошая идея. Если бы не одно большое но…

Дело в том, что при повторном включении сетевого интерфейса, повторно образуется петля, а все сетевые интерфейсы в локальной сети станут недоступными. Система обнаружит петлю и повторно отключит интерфейс на 5 минут.

В таблице интерфейсов над отключенным интерфейсом будет отображен комментарий красного цвета, с помощью которого можно определить с какого порта пришел loop-пакет и, соответственно, определить объединенные порты.

Если посмотреть логи, можно обнаружить, что при этом на несколько секунд «падают» все сетевые интерфейсы. Для соединений между маршрутизатором и коммутатором это не критично, а вот конечные клиенты должны повторно переподключиться к маршрутизатору и получить IP (для сетей с DHCP).

На стороне конечных клиентов это будет выглядеть так

Т.е. каждые 5 минут будет обрываться соединение. Чтобы этого избежать, на интерфейсах можно установить параметр loop-protect-disable-time=0, что приведет к полному отключению интерфейса, система не будет в дальнейшем пытаться активировать его самостоятельно и проверять на наличие петли.

Пока не ясно, будет ли Mikrotik дорабатывать этот функционал, к примеру, выводить (изолировать) порт в отдельный бридж или vlan, чтобы другие сетевые интерфейсы не падали при повторной активации порта.

Где может быть полезен Loop Protect? В первую очередь в больших сетях с большим количеством соединений. Никто не застрахован он подобных случаев, Loop Protection позволяет существенно сэкономить время и нервы, которые уйдут на поиск неисправности.

Видеокурс «Настройка оборудования MikroTik» (аналог MTCNA)

Учитесь работать с MikroTik? Рекомендую видеокурс «Настройка оборудования MikroTik». В курсе разобраны все темы из официальной учебной программы MTCNA и много дополнительного материала. Курс сочетает теоретическую часть и практику – настройку маршрутизатора по техническому заданию. Консультации по заданиям курса ведет его автор Дмитрий Скоромнов. Подойдет и для первого знакомства с оборудованием MikroTik, и для систематизации знаний опытным специалистам.

Интернет-магазин ntools.com.ua

Комментарии:

Добавить
  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent
  1. ND
    ND Гости 10 июня 2019 10:05
    + 0 -
    6.44.3 сетевые интерфейсы не падают при повторной активации порта
  2. Alex Id0
    Alex Id0 Посетители 19 октября 2018 15:06
    + 0 -
    Подскажите как посмотреть значение параметра loop-protect-status в консоли?
    1. Vadim
      Vadim Гости 16 декабря 2018 17:00
      + 0 -
      interface ethernet print detail

Начиная с RouterOS 6.43, Winbox будет использовать безопасное соединение с

Тем, кто пользуются устройствами Mikrotik RouterBOARD на уровне более продвинутых пользователей, хорошо известна утилита под названием Winbox. По...

В разработке: подробности грядущего обновления RouterOS v6.42

Команда Mikrotik продолжает работу над подготовкой очередного обновления RouterOS до версии 6.42. Более подробную информацию обо всех изменениях вы...

Как подружить FastTrack и IPsec в Mikrotik RouterOS?

В одной из предыдущих публикаций я описывал способ маркировки нужного трафика и его последующую отправку в VPN. Одной из негативных сторон описанного...

Обновление RouterOS 6.37.1 и Winbox 3.6, тестовый RouterOS 6.38: добавление

Буквально неделю назад компания Mikrotik представила обновление RouterOS 6.37 (Stable), после чего начала активную работу над тестовой версией 6.38...

Mikrotik выпустил обновление RouterOS 6.37: единый пакет wireless, прекращение

Компания Mikrotik официально выпустила обновление RouterOS v.6.37. Настоятельно рекомендуем прочитать список изменений перед обновлением до...

Mikrotik выпустил обновление RouterOS 6.34.4 и Winbox v3.4

Компания Mikrotik на этой неделе представила обновление операционной системы RouterOS до версии 6.34.4, а также утилиты Winbox до версии 3.4....

авторизация на сайте

Войти при помощи Facebook Войти при помощи Google+
Забыли пароль?