Скрипт ping для проверки интернета на MikroTik

MikroTik в Красноярске — три практических курса в ноябре 2026!

С 11 по 21 ноября в Красноярске пройдут очные тренинги MikroTik: MTCNA, MTCRE и MTCTCE.

Работаете с MikroTik и хотите не просто знать команды RouterOS, а понимать, как всё работает? Приходите прокачивать навыки сетевого администрирования!

Расписание курсов

11–14 ноября — MTCNA

Базовый курс MikroTik: настройка RouterOS, маршрутизация, Firewall, NAT, VPN, DHCP, Wi-Fi и основы управления трафиком.

Программа и регистрация

16–18 ноября — MTCRE

Продвинутая маршрутизация: OSPF, несколько интернет-провайдеров (MultiWAN), резервирование каналов, балансировка нагрузки, VPN и VLAN.

Программа и регистрация

19–21 ноября — MTCTCE

Управление трафиком: Firewall, NAT, Mangle, Packet Flow, QoS, очереди и приоритизация трафика.

Программа и регистрация

Почему стоит прийти?

  • Максимум практики на реальном оборудовании MikroTik.
  • Разбираем не только настройки, но и логику работы RouterOS.
  • Реальные инженерные задачи, лабораторные работы и живое общение с тренером.
  • Обучение проводит Кирилл Васильев — сертифицированный тренер MikroTik с 2016 года, практикующий сетевой инженер.
  • Учебные материалы, оборудование, обеды и кофе-брейки включены в стоимость.
  • Возможность пройти несколько курсов подряд со скидкой.

Место проведения: Красноярск, ул. Марковского, 81.

Важно: для участия в MTCRE и MTCTCE необходим сертификат MTCNA. Его можно получить на первом тренинге.

Не ограничивайтесь привычными настройками — научитесь понимать RouterOS и уверенно решать сложные сетевые задачи!

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

Вопросы и запись:
manager@mt-courses.ru

Сайт:
https://mt-courses.ru

Скрипт ping для MikroTik последовательно проверяет несколько адресов через указанную таблицу маршрутизации и завершает поиск после первого успешного ответа. Это простой индикатор ICMP-доступности.

Успешный ping не подтверждает работу DNS, HTTP или нужного приложения. Для решения о переключении канала добавьте несколько независимых целей, задержки и проверку сервиса более высокого уровня.


### ----- start settings script ----- ### 
:local addr [:toarray "8.8.8.8,8.8.4.4,77.88.8.8,77.88.8.1,77.88.8.88,77.88.8.2"];
:local Table "ISP1";
:local CheckPingCount 3;
:local CheckPingTtl 64;
:local CheckPingInterval 1;
### ----- end settings script ----- ###

:local InternetIsset false;
:foreach ipp in $addr do={
    :if ($InternetIsset=false) do={
        :if ([/ping address=$ipp count=$CheckPingCount routing-table=$Table interval=$CheckPingInterval ttl=$CheckPingTtl] = 0) do={
            /log warning message="Internet test fail for address $ipp In table $Table";
        } else={
            /log warning message="Internet test success for $ipp In table $Table";
            :set InternetIsset true;
        }
    }
}

:if ($InternetIsset=false) do={
    #test failed
    /log warning message="Internet fail In table $Table";
}else ={
    #test success
}

Если вам необходимо выполнять какие-либо действия по результатам проверки, в сам конце скрипта находиться два блока if/else. Первый блок отвечает за выполнение при отрицательном результате, второй блок соответственно за положительный результат.

Пример как можно использовать блок

:local ruleCount [/ip route rule print count-only where disabled comment="ether1-fail"]
:if ($InternetIsset=false) do={
 :if($ruleCount=0) do={
   /ip route rule enable [find comment="ether1-fail"];
  }
  /log warning message="Internet fail In table $Table";
} else={
   :if($ruleCount > 0) do={
    /ip route rule disable [find comment="ether1-fail"];
  }
}

Как проверить результат

  • Запустите скрипт вручную и проверьте записи журнала.
  • Заблокируйте одну тестовую цель и убедитесь, что проверка переходит к следующей.
  • Отключите канал и проверьте отрицательный результат именно в заданной routing-table.

Источники и связанные материалы

Команды в статье меняют сетевую конфигурацию. Перед работой сохраните экспорт, подготовьте способ восстановления доступа и применяйте изменения сначала в тестовой среде.