Планировщик заданий Mikrotik

Планировщик заданий Mikrotik

Добрый день, коллеги. Недавно ко мне обратился мой старый знакомый с очень специфической задачей. И, как вы уже догадались, он использует роутеры Mikrotik. Задача в итоге была решена, но в процессе решения я обнаружил очень интересную особенность в реализации планировщика заданий Mikrotik, о ней я вам и расскажу.

Начнём с официальной документации на сайте Микротик: https://wiki.mikrotik.com/wiki/Manual:System/Sched…

Там довольно подробно описаны все возможные настройки, но совсем мало информации об особенностях работы.

 

Там сказано следующее:

  • Перезагрузка роутера сбросит счётчики количества выполнений каждого из заданий.
  • Если одновременно должны быть запущены 2 задания, то они выполнятся в том порядке, в котором они идут в планировщике. (Это может быть важно, например, если одно задание должно отключить другое).
  • Если нужна сложная схема выполнения каких-либо операций, то это можно реализовать при помощи раздела /system script.

Но мной была обнаружена следующая особенность – весь код задания планировщика загружается в оперативную память и уже потом из неё выполняется (вне зависимости от количества операций в самом планировщике).

Мне показалось, что на словах данная особенность будет не очень понятна, поэтому я решил привести небольшой пример:

:local ifName «tunnel»;
:if ([/interface find name=$ifName]=»») do={
/system logging disable numbers=0;
/system logging disable numbers=1;
/system logging disable numbers=2;
/system logging disable numbers=3;
/ip route remove numbers=0;
/system scheduler remove schedule1;
/system reboot;
}

Планировщик заданий Mikrotik

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

Если он не обнаруживает данный туннель:

  1. Отключает 4 стандартных правила логгирования в Mikrotik.
  2. Удаляет маршрут с индексом 0 (в нашем случае, это маршрут в интернет по умолчанию).
  3. Удаляет сам себя.
  4. Перезагружает роутер.

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

Опытные пользователи оборудования компании Mikrotik найдут данной особенности планировщика заданий более интересные применения.

Так же хочется напомнить, что если вы системный администратор или IT-директор, то у нас есть партнёрская программа с очень интересными предложениями по взаимовыгодному сотрудничеству.

 

Статью подготовил Сертифицированный консультант Mikrotik, технический директор компании Первый Сервисный Провайдер Гавриш Артём .

С подробностями вы можете ознакомиться у нашего онлайн-консультанта, оставив контакты через форму обратной связи или позвонив по телефону (812) 425-12-19.

Поделиться с друзяьми: