The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Пинг группы адресов, !*! Jinx, 03-Янв-12, 12:43  [смотреть все]
Кратко о том чего хочу:
Хочу сделать скрипт на Шелле, который пингует группу адресов, и в случае отсутствия ответа от всей группы - тушить данную машину.

Я не прошу готового решения, прошу подтолкнуть меня в нужном направлении, объяснить каким образом можно это реализовать.
Я никак не могу придумать каким образом проверять именно группу адресов. Можно конечно через if else, что-то типа:


if не пингуется первый адрес then
if не пингуется второй адрес then

но это-же полнейшее извращение - так делать неправильно. Прошу совета.
  • Пинг группы адресов, !*! Loly, 12:53 , 03-Янв-12 (1)
    http://fping.sourceforge.net/

    "fping is different from ping in that you can specify any number of hosts on the command line, or specify a file containing the lists of hosts to ping."

    • Пинг группы адресов, !*! Jinx, 13:02 , 03-Янв-12 (2)
      > http://fping.sourceforge.net/
      > "fping is different from ping in that you can specify any number
      > of hosts on the command line, or specify a file containing
      > the lists of hosts to ping."

      По описанию - именно то что нужно. Пойду эксперементировать.
      Спасибо.

    • Пинг группы адресов, !*! Jinx, 19:33 , 05-Янв-12 (3)
      При проверке отключенных хостов появляется вот такая бяка:
      ICMP Redirect from 192.168.1.1 for ICMP Echo sent to 192.168.1.10

      где:
      192.168.1.1 - маршрутизатор, которого я вообще не трогал
      192.168.1.10 - компьютер, который я проверял

      И мало того - это сообщение появляется даже при:

      fping -a 192.168.1.10 > /dev/null

      то есть я вывод команды в черную дыру направляю, а мне оно все равно пишет.
      Соответственно написанный мной скрипт с использованием fping получился неработоспособный.
      • Пинг группы адресов, !*! ACCA, 08:14 , 06-Янв-12 (4)
        > При проверке отключенных хостов появляется вот такая бяка:
        >
        ICMP Redirect from 192.168.1.1 for ICMP Echo sent to 192.168.1.10

        Возможно, что у тебя маршрут в свою же сетку не описан или описан криво, всё валится на default router. Тот переправил куда положено, о чём тебе и прислал ICMP редирект.


        > И мало того - это сообщение появляется даже при:
        >

        fping -a 192.168.1.10 > /dev/null

        > то есть я вывод команды в черную дыру направляю, а мне оно

        У команды есть минимум два вывода - stdout (№1) и stderr (№2). Сообщения об ошибках и предупреждения принято писать в stderr. Перехватывать их можно 2> /dev/null, но не нужно - они тебе не мешают.


        > Соответственно написанный мной скрипт с использованием fping получился
        > неработоспособный.

        Скорее всего ты в другом месте накосячил. Продолжай ковыряться - разберёшься. Только теорию почитай.

        • Пинг группы адресов, !*! Jinx, 16:14 , 06-Янв-12 (5)
          Уже исправил, еще вчера. Покопался в sysctl - отключил "ICMP routing redirects", так что все уже работает нормально.

          Кому интересно - это делаем так:

          net.inet.icmp.drop_redirect=1
          net.inet.ip.redirect=0
          net.inet6.ip6.redirect=0

        • Пинг группы адресов, !*! Jinx, 16:21 , 06-Янв-12 (6)
          Забыл дописать, а править сообщение не могу - нашел в чем ошибка была:
          Оказывается что fping возвращает немного непредсказуемый для меня результат. Даже если хоть один хост не пингуется, то "$?" не будет равно нулю - не пингуется только один, или все, мы все равно будем получать "$? -ne 0". В моем случае мне нужно отловить момент когда не пингуются все. Пришлось грепом пользоваться.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру