Когда пропадает доступ к глобальной сети, первым делом нужно определить точку разрыва. На оборудовании 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 физическая активность не гарантирует рабочую сессию:
- Перейдите в PPP → Interfaces и найдите ваш клиентский интерфейс.
- Откройте свойства двойным кликом и посмотрите вкладку Status. Там будет указана причина отказа, например, «authentication failed» или «no response from server».
- В терминале используйте
/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-модем или шлюз и управляйте им через скрипты.
Как отличить проблему провайдера от ошибки роутера?
Подключите компьютер напрямую к кабелю провайдера. Если интернета нет — проблема на стороне оператора. Если есть — неисправен роутер или его конфигурация. Также поможет трассировка: потеря пакетов сразу после вашего шлюза указывает на зону ответственности провайдера.