Как лучше всего настроить сценарий для отслеживания и сообщения о подключении сервера к Интернету? Я не имею в виду подключение к локальной сети, а скорее возможность сервера (или всей сети) получить доступ к Интернету в тех случаях, когда соединение вашего провайдера прерывается.
Это должен быть сценарий, который проверяет подключение к Интернету 24/7 и регистрирует результаты (или, возможно, просто регистрирует, когда происходит сбой), а затем какой-то другой способ читать эти журналы и генерировать отчет, показывающий различную статистику ( в каком% случаев подключение к Интернет-провайдеру было отключено и т. д.).
Будет ли это что-то столь же простое, как проверка связи с различными популярными URL-адресами (google.com, amazon.com и т. Д.) И использование этого в качестве теста, чтобы определить, есть ли у вас доступ в Интернет? Или есть лучший подход?
Основная цель этого состоит в том, чтобы регистрировать все время, когда наш интернет-провайдер подводит нас, чтобы мы могли показать им, и они могли использовать его для решения проблемы или использовать журналы в качестве рычага, который мой босс мог использовать для переключения интернет-провайдеров.
Как правило, первое, что вам нужно сделать, это точно определить, что вы называете отключением Интернета. Означает ли "отключение", что вы не можете связаться:
Для вашего конкретного случая (попытки определить стабильность вашего интернет-соединения) журналы мониторинга и / или SNMP от вашего маршрутизатора должны предоставить вам необходимую информацию, хотя «реальные» тесты прохождения трафика, вероятно, будут полезны. Если это связь между вами и интернет-провайдером, тогда будет хорошо пинговать некоторые из ваших хостов интернет-провайдера (DNS / Mail и т. Д.) Или лучше сценарий и фактический поиск DNS на их DNS-сервере, и попробуйте установить SMTP-соединение со своим почтовым сервером. Конечно, не делайте этого слишком часто, иначе они могут обвинить вас в нарушении Политики допустимого использования, Условий обслуживания и т. Д.
Я использую отличный инструмент для мониторинга подобных подключений.
MTR или маршрут My Trace.
Это во многом эволюция от единичных операций ping и трассировки маршрутов, почти гибрид этих двух.
MTR имеет несколько режимов работы
mtr --report google.com
создаст отчет, который вы отправите провайдеру для анализа.
ИЛИ вы можете попробовать
mtr google.com
и дважды нажмите d, чтобы увидеть задержку или потерю между всеми переходами за период времени.
В зависимости от разновидности Linux, о которой вы говорите, большинство дистрибутивов имеют MTR в своих собственных репозиториях.
Обычно это осуществляется посредством мониторинга интерфейса с использованием протокола SNMP на самом брандмауэре / маршрутизаторе. Кроме того, вы можете использовать netflow / sflow / jflow на интерфейсах для сбора более подробной статистики / информации.
Более крупные интернет-провайдеры также будут предлагать порталы с инструментами мониторинга (на ум приходят Sprint / Cox / TW и другие).
Кроме того, вы можете настроить такие инструменты, как Nagios и т. Д., Которые могут пинговать исходящий, а также дополнительный уровень / проверку
Вы также можете использовать сторонние инструменты, такие как http://newrelic.com/monitor-everything или аналогично контролю извне, проверяющему доступность вашего сервера. Или что-то столь же простое, как бесплатный онлайн-монитор ping (просто поиск), который будет пинговать WAN IP вашего брандмауэра и, если он недоступен, предупредит вас.
Мониторинг этого только с точки зрения вашего сервера близорук и может не точно отражать истинное отключение самого провайдера.