Меню
Контакты
107023, Москва, пл. Журавлёва, 10с3, подъезд 31, офис 309
Пн-Пт: с 9-00 до 17-00   Сб-вс: выходной
Интернет-магазин
сетевого оборудования
Москва +7 (495) 103-41-03 +7 (915) 420-28-94
107023, Москва, пл. Журавлёва, 10с3, подъезд 31, офис 309
Пн-Пт: с 9-00 до 17-00   Сб-вс: выходной
Заказать звонок

Проверяем работоспособность маршрутизаторов Mikrotik Routerboard с помощью скрипта

 20 Июл 2011    MikroTik, Scripts

 

Мы можем работать, заниматься какими-то другими делами и при этом даже не подозревать, что один из маршрутизаторов Mikrotik Routerboard недоступен.

 

 Проверка работоспособности маршрутизаторов Mikrotik Routerboard

Рис.1. Схема сети.

 

Для того, чтобы мы были в курсе дел, напишем скрипт, который будет проверять статус  Mikrotik Routerboard и, если какой-то Mikrotik Routerboard недоступен, выдаст звуковое сообщение.

#!/usr/bin/env python

# -*- coding: utf_8 -*-

import time

import subprocess

ip_list = ["192.168.4.1", "192.168.4.2", "10.0.0.25"]

while 1:

for ip in ip_list:

ping = subprocess.call(["ping", "-c 4", ip])

if ping == 0:

print u"Все хорошо"

else:

print u"Маршрутизатор %s не доступен" % (ip)

subprocess.call(["play", "pick2.wav"])

time.sleep(15)

Разберем скрипт:

Импортируем модули:

import time

import subprocess

Создаем список с IP-адресами устройств Mikrotik Routerboard:

ip_list = ["192.168.4.1", "192.168.4.2", "10.0.0.25"]

Запускаем бесконечный цикл:

while 1:

В цикле for заносим по очереди значения IP-адресов из списка ip_list в переменную ip:

for ip in ip_list:

Выполняем команду ping и помещяем результат в ping:

ping = subprocess.call(["ping", "-c 4", ip])

Если действие выполнено успешно, то ping будет равен нулю, если нет - единице.

Выполняем проверку if ping == 0:

Если ping равен нулю, то выводим сообщение: print u"Все хорошо"

Если ping не равен нулю то выводим сообщение: print u"Маршрутизатор %s не доступен" % (ip)  и подставляем значение IP-адреса.

Воспроизводим звуковой файл:

subprocess.call(["play", "pick2.wav"])

Чтобы выполнить play pick2.wav для операционной системы ubuntu, нужно выполнить установку программы:

apt-get install sox

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

time.sleep(15)

 

 Работа скрипта

Рис.2. Работа скрипта.

 

На рисунке 2 мы видим, как скрипт проверил связь в первым устройством и вывел сообщение "Все хорошо".

 

 Вывод звукового сигнала

Рис.3. Вывод звукового сигнала.

 

Маршрутизатор с IP-адресом 10.0.0.25 оказался недоступен, поэтому скрипт вывел соответствующие текстовое и звуковое сообщения.

 

Евгений Рудченко специально для ASP24.