Когда пропадает доступ к глобальной сети, первым делом нужно определить точку разрыва. На оборудовании Mikrotik это делается не только через индикаторы, но и с помощью встроенных утилит RouterOS. Ниже приведены основные инструменты для локализации проблем: от простых пингов до автоматических скриптов.

Базовые инструменты: Ping и Traceroute

Первый шаг в диагностике — проверка достижимости внешних адресов. Утилита Ping доступна в графическом интерфейсе (WinBox) через меню Tools → Ping или в терминале.

  • Быстрая проверка: Введите IP-адрес надежного сервера, например 8.8.8.8 или 1.1.1.1. Наличие ответов с низким временем задержки (RTT) подтверждает работоспособность физического уровня и маршрутизации.
  • Статистика потерь: Для более точного анализа используйте команду в терминале: /ping 8.8.8.8 count=10. Высокий процент потерь пакетов указывает на нестабильность линии, что может вызывать обрывы VPN или задержки в приложениях.

Если пинг не проходит, используйте Traceroute (/tool traceroute). Эта команда покажет путь пакета и остановится на том узле (хопе), где соединение прерывается. Это критически важная информация при обращении в поддержку провайдера.

Важно: Отсутствие ответа на ping не всегда означает обрыв канала. Некоторые провайдеры блокируют ICMP-запросы из соображений безопасности. В таких случаях попробуйте использовать другие протоколы или адреса.

Диагностика DNS-серверов

Ситуация, когда сайты не открываются, а пинг по IP работает, обычно связана с ошибками DNS. Роутер знает, как доставить пакет, но не может преобразовать доменное имя в IP-адрес.

Для проверки выполните в терминале:

/tool dns-query name=google.com

Если ответ получен, система работает корректно. При таймауте проверьте настройки в разделе IP → DNS:

  • Убедитесь, что указаны рабочие серверы (провайдера или публичные, такие как 8.8.8.8).
  • Проверьте статус кэша. Если записи устарели, очистите их командой /ip dns cache flush.
  • Используйте /ip dns print detail, чтобы увидеть, какие серверы получены динамически, а какие заданы статически. Статические записи имеют приоритет.

Статус интерфейсов и PPPoE-сессий

Физическая связь должна быть установлена до проверки вышележащих протоколов. В WinBox откройте меню Interfaces: зеленая стрелка означает активность, красная — отсутствие сигнала.

Для соединений типа PPPoE, L2TP или PPTP физическая активность не гарантирует рабочую сессию:

  1. Перейдите в PPP → Interfaces и найдите ваш клиентский интерфейс.
  2. Откройте свойства двойным кликом и посмотрите вкладку Status. Там будет указана причина отказа, например, «authentication failed» или «no response from server».
  3. В терминале используйте /interface print для проверки флага R (Running). Для просмотра активных сессий примените /ppp active print.

Автоматический мониторинг через Netwatch

Ручная проверка неудобна для постоянного контроля. Инструмент Netwatch (Tools → Netwatch) позволяет автоматически реагировать на изменения состояния сети.

Настройка состоит из добавления новой записи с указанием хоста для проверки и интервала опроса. В полях Up Script и Down Script можно задать действия при изменении статуса.

Проведите по таблице влево, чтобы увидеть остальные столбцы

Параметр Описание Рекомендуемое значение
Host Цель для пинга 8.8.8.8 или шлюз провайдера
Interval Частота проверок 10–60 секунд (не чаще 5с)
Timeout Ожидание ответа 3–5 секунд
Down Script Действие при обрыве Логирование или перезапуск интерфейса

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

Скрипты для автоматического восстановления

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

:local target "8.8.8.8" :local gateway "pppoe-out1" :local failCount [/system scheduler get [find name="failCounter"] value-name=start-date] if ([/ping $target count=3 interval=1s] = 0) do={ :set failCount ($failCount + 1) if ($failCount >= 3) do={ /interface disable $gateway :delay 5s /interface enable $gateway :set failCount 0 } } else={ :set failCount 0 }

Этот код проверяет доступность цели три раза. Если все попытки проваливаются, он отключает и включает WAN-интерфейс. Счетчик сохраняется в планировщике, так как переменные RouterOS сбрасываются при перезагрузке.

Предупреждение: Чрезмерно частые перезагрузки интерфейсов могут привести к блокировке аккаунта провайдером за подозрительную активность. Тестируйте скрипты осторожно.

Анализ системных логов

При периодических обрывах сети обратитесь к журналу событий (Log или /log print). Используйте фильтры для поиска конкретных ошибок, например: /log print where message~"ppp".

Ищите сообщения о завершении сессий (terminated), таймаутах или ошибках аутентификации. Уровень детализации можно настроить в System → Logging, добавив правила для категорий ppp, dhcp и interface. Однако избегайте избыточного логирования, чтобы не переполнить буфер памяти роутера.

Часто задаваемые вопросы

Почему пинг до 8.8.8.8 идет, а сайты не открываются?

Это признак проблемы с DNS. Роутер доставляет пакеты до сервера Google, но не может разрешить доменные имена. Проверьте настройки в разделе IP → DNS и убедитесь, что клиентам назначен корректный сервер имен.

Как проверить скорость интернета непосредственно на роутере Mikrotik?

Встроенного спидтеста до внешнего интернета нет. Утилита /tool bandwidth-test измеряет скорость только между устройствами внутри вашей сети. Для проверки канала к провайдеру лучше скачать файл известного размера через FTP/HTTP и замерить время, либо использовать внешний CLI-инструмент.

Что делать, если статус PPPoE «connecting» висит бесконечно?

Это означает отсутствие ответа от сервера провайдера. Проверьте физическое подключение кабеля, попробуйте клонировать MAC-адрес компьютера, на котором ранее работало подключение, и убедитесь, что баланс услуг не истек.

Можно ли отправить уведомление при обрыве интернета?

Да. Для email потребуется настройка SMTP-клиента (/tool email) и вызов скрипта из Netwatch или Scheduler. Для SMS подключите GSM-модем или шлюз и управляйте им через скрипты.

Как отличить проблему провайдера от ошибки роутера?

Подключите компьютер напрямую к кабелю провайдера. Если интернета нет — проблема на стороне оператора. Если есть — неисправен роутер или его конфигурация. Также поможет трассировка: потеря пакетов сразу после вашего шлюза указывает на зону ответственности провайдера.