2013-07-24 8 views
0

Я ищу решение, чтобы иметь возможность пинговать около 5000 (до 10000) IP-адресов в локальной сети каждые 1 секунду и сразу же, при любых тайм-аутах пакета icmp, он будет записывать вывод в файл с помощью unix период времени потерянного пакета и IP-адрес. Таким образом, я смогу измерить длину сетевых сбоев за секунды до каждого IP-адреса.Как icmp ping тысячи IP-адресов одновременно каждую секунду?

Я пытаюсь запустить так много команд ping в бесконечном цикле для каждого IP-адреса сейчас (поэтому у меня много запущенных процессов - для всех IP-адресов я отправляю только один пакет. Затем команда ping заканчивается , Я управляю его выходом и снова запускаю команду ping и т. Д.). Но я как-то чувствую, что это не лучший способ, как это сделать: |

я могу писать сценарии только в Баш и PHP, но не в C++, ... Так что я предпочитаю, если у вас есть решение для моих навыков :)

Спасибо заранее. Pep.

PS: Наверное, я знаю, как работает fping, и я думаю, что это слишком медленно. Он не может ping 5000 IP-адресов каждую секунду, я прав?

+0

Pinging 5000-10000 машин каждую секунду в течение всего дня заработает у вас много ненависти у ваших сетевых администраторов. Вы действительно уверены, что хотите это сделать или вам нужно это сделать? – fvu

+0

Я являюсь администратором и владельцем всей локальной магистральной сети, поэтому это не проблема. Но да, несколько тысяч IP-адресов являются нашими клиентами, которые, как я полагаю, не должны возражать. Это большая попытка с моей стороны, но у меня будет очень подробная статистика о том, как работает позвоночник, если он будет работать. И если я вижу, что один второй пинг слишком много, я все равно могу перейти к двум секундам, что все равно хорошо. – user2616411

ответ

-1
ping IP_ADDRESS_HERE /n NUMBER_OF_PINGS_HERE -l PACKET_SIZE_HERE & ping IP_ADDRESS_HERE /n NUMBER_OF_PINGS_HERE -l PACKET_SIZE_HERE 

Два пинг работает в одной строке. Очень просто. Добавьте, добавив отметку &.

+0

Вопрос в том, как вы можете запускать тысячи писем ** параллельно **. Ваш подход использует их ** последовательно **, то есть один за другим. Если среднее время прохождения в оба конца составляет 50 мс, запуск 5000 займет 250 секунд, более 4 минут, и OP будет делать это каждую секунду. И это даже не считается, что некоторые пинги могут затягиваться и занимать гораздо больше времени, что необходимо учитывать, учитывая, что тайм-ауты в точности являются целью всего этого. –