bjacka Posted December 28, 2005 Posted December 28, 2005 Hi All!! Подскажите пожалуйста как реализовать контрольный пинг на freeBSD, нужно чтобы раз допустим в 5 мин выполнялся пинг на определенный хост, и если ответ не получен то запись в лог и письмо на почту, ну можно еще и смс Вставить ник Quote
Blackmore Posted December 28, 2005 Posted December 28, 2005 Скрипт написать и в крон его, а еще лучше поставить что нибудь вроде Nagios - оно все то умеет Вставить ник Quote
bjacka Posted December 28, 2005 Author Posted December 28, 2005 Скрипт написать и в крон его, а еще лучше поставить что нибудь вроде Nagios - оно все то умеет это понятно, что скрипт вот я прошу помощи с его написанием, не пойму как разобрать ответы от пинга Вставить ник Quote
Blackmore Posted December 28, 2005 Posted December 28, 2005 все-таки я бы советовал тебе поставить нагиос - он хорошо документирован и не сложен - инфы по нему полно на опеннете и делает все что тебе надо Вставить ник Quote
bjacka Posted December 28, 2005 Author Posted December 28, 2005 прошу прощения я немного протормозил у меня стоит netmond он тоже все умеет, на нем все сделал.... забыл просто что он это может Вставить ник Quote
GateKeeper Posted December 28, 2005 Posted December 28, 2005 2bjacka: На будущее: ответ пинга разгребать не надо. Много думать на предмет "return code" и покурить ман к ping. Хинт: при удачном пинге возвращается 0, при неудачном - 1. Затем, man test... что еще в нагрузку... man logger, man mail... man sh. Всё?.. Да. Всё. Вставить ник Quote
Reanimator++ Posted December 28, 2005 Posted December 28, 2005 nnCron может пинговать почитайте, там пишется что-то типа HOST такойто EXIST, тогда то-то... забыл уже как точно.... Вставить ник Quote
Ali-ajar Posted December 28, 2005 Posted December 28, 2005 а еще можно выводить рисунок значения пинга :) ... особено это актуально в сетях типа езернет ... сразу видно какой сегмент загружен ... но учитывая низкую стоимость Л2 свитчей ... Вставить ник Quote
GateKeeper Posted December 28, 2005 Posted December 28, 2005 Ali-ajar, вы извращенец? Какой сегмент загружен покажет, например net-snmp+mrtg+rrdtool. А ping|cut|cut|grep|expr|... - это издевательство над собственным мозгом. Вставить ник Quote
Ali-ajar Posted December 28, 2005 Posted December 28, 2005 Ali-ajar, вы извращенец?Какой сегмент загружен покажет, например net-snmp+mrtg+rrdtool. А ping|cut|cut|grep|expr|... - это издевательство над собственным мозгом. Дк я не говорю о себе .... некоторые челы(в частных домашних сетях) так и делают ... выводят значение пинга на график ... Я такое когда-то делал, но геморно это все , проще юзать snmp ... А на счет шела вы не правы :) . некоторые задачи можно достаточно эффективно решить ... Вставить ник Quote
GateKeeper Posted December 28, 2005 Posted December 28, 2005 кроме графиков - да Например: #!/bin/sh if ! /usr/bin/pgrep sshd > /dev/null 2>&1; then /etc/rc.d/sshd restart > /dev/null 2>&1; fi и кормим кронычу. Просто, эффективно. Вставить ник Quote
SergeiK Posted December 28, 2005 Posted December 28, 2005 Шелл - потрясная штука, для тех, кто понимает. Читать Кернига, Пайка, unix - универсальная среда программирования. И указанный пример делается проще, одной строкой. /usr/bin/pgrep sshd > /dev/null 2>&1 && /etc/rc.d/sshd restart > /dev/null 2>&1 Например:#!/bin/sh if ! /usr/bin/pgrep sshd > /dev/null 2>&1; then /etc/rc.d/sshd restart > /dev/null 2>&1; fi и кормим кронычу. Просто, эффективно. Вставить ник Quote
GateKeeper Posted December 28, 2005 Posted December 28, 2005 s/&&/||/ а то вы порасскажете людям... Вставить ник Quote
SergeiK Posted December 28, 2005 Posted December 28, 2005 s/&&/||/ а то вы порасскажете людям... Sorry, пропустил '!' :(. Вставить ник Quote
Kuzin Andrey Posted February 11, 2006 Posted February 11, 2006 Вот что мы используем... Найдено через поисковик... #! /bin/sh HOSTS="192.168.16.1 192.168.16.2" while [ 1 ]; do for SYS in $HOSTS; do PING=`ping -c 3 $SYS | grep received | awk -F, '{ print $2 }' | awk '{print $ if [ $PING -eq 0 ]; then echo "Connection to $SYS was UNSTABLE at `date`" fi done # sleep 30 done IP адреса перечисляете через пробел. Для задержки можете раскомментировать sleep. Запускать можно через: nohup <имя_скрипта> > /ping_logs & Вставить ник Quote
Ugnich Anton Posted February 11, 2006 Posted February 11, 2006 Красивые графики ping-а с помощью rrdtool: http://www.krogloth.de/rrd/howtos/grading/ Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.