Как одновременно пинговать несколько адресов с записью в файл и временем

Обновлено: 02.07.2024

Эта утилита работает под Windows 2000, Windows XP, Windows Server 2003, Windows Server 2008, Windows Vista, Windows 7, Windows 8 и Windows 10. Более старые версии ОС не поддерживаются.

История версий

Текущая версия - 1.70

Появилась возможность автоматического экспорта: вы можете выбрать генерировать новый файл для каждой сессии (когда вы перезапускаете программу) или при каждом сохранении. Вы также можете генерировать имя файла с датой и временем (н-р: ping20170925112130.csv) вместо цифрового счетчика.

Использование PingInfoView

PingInfoView не требует установки или добавления дополнительных библиотек DLL, просто запустите PingInfoView.exe, введите имена хостов или IP адреса, которые вы хотите пинговать и нажмите 'Ok', чтобы начать ping.

Известные ошибки

По умолчанию, PingInfoView аккумулирует результаты всех пингов в памяти и отображает результаты в нижней панели. Если вы используете PingInfoView, чтобы пинговать хосты с высокой частотой (каждую секунду) и оставите выполняться на много часов, результат будет занимать в памяти много места, что может привести к зависанию или крэшу приложения.

Чтобы избежать этой проблемы, вам следует пойти в 'Advanced Options' (нажать F9) и изменить 'Lower Pane Mode' в "Don't add pings to lower pane" или "Add only failed pings". Если вы хотите сохранить результаты всех пингов, вы можете использовать опцию 'Add the ping results into the following log file' для сохранения результатов в файл. Таким образом PingInfoView не будет потреблять много памяти и продолжит работать много часов и дней.

Если вы пингуете много хостов одновременно, PingInfoView может возвращать неуспешных результат некоторым хостам, даже если они доступны. Чтобы решить эту проблему, перейдите в 'Advanced Options' и уменьшите максимальное число одновременных пингов.

Use IP-Host Description format

Когда эта опция включена, вам необходимо указывать список IP адресов в следующем формате:

192.168.1.10 Main Server

192.168.1.11 Host 01

192.168.1.12 Host 02

Доброго всем дня.

Помогите мне доделать Bat-ник не большой.
Это обычный пинг, но нужно что бы все что там он пишет в окне дублировалось в лог-файл txt.
Найти то я это нашел как делать, но проблема у меня немного шире. Та команда просто переписывает в файле все заново.
А мне нужно что бы это все это копилось там в файле.
Вот мой вариант -

IP соответственно другой.
Если можно как-нибудь заставить его вести обратный отсчет времени, будет просто супер.
Заранее благодарю.

1. Символ ">" создает файл заново, а ">>" добавляет к уже имеющемуся (если файла нет, то создает его).
2. На счет обратного отсчета времени и задания вообще - непонятно - может выложишь сюда проблему - народ что-нибудь предложет.

-------
Как сказало Дерево Дровосеку: "я - пень".

Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Конфигурация компьютера
Процессор: Intel Pentium M 2 GHz
Материнская плата: HP Compaq nc6220
Память: 1024 MB
HDD: 80 GB
Видеокарта: Mobile Intel 915GM
Звук: SoundMAX Integrated
Монитор: HP L1706 17''
ОС: Windows XP SP3
Я обратный отсчет вот так делаю:
bat-файл, в консоли которого и происходит все действо:
оба скрипта и файл Shutdown.exe должны лежать в одном каталоге

. Ок. Спасибо, работает.

Теперь такая проблема. Это у меня логи пингов. Как вы видите батник создает лог с текущей датой.
Это для того что бы потом можно было проанализировать по этим логам время когда отсутствовала связь.
Просто часто пропадает связь. Нужно выяснить переодичность.
Но, теперь батник все пинги добавляет как надо, дописывает в конец. И податам должен разбивать (еще не проверял, сегодня ночью только сделал).
Но вот проблема - как туда в данный лог загнать дату и время каждго пинга.

Вот что сейчас получилось -

Pinging 127.0.0.1 with 32 bytes of data:

Reply from 127.0.0.1: bytes=32 time=1ms TTL=63
Reply from 127.0.0.1: bytes=32 time=1ms TTL=63
Reply from 127.0.0.1: bytes=32 time=1ms TTL=63
Reply from 127.0.0.1: bytes=32 time=1ms TTL=63
Reply from 127.0.0.1: bytes=32 time=1ms TTL=63

Ping statistics for 127.0.0.1:

Packets: Sent = 5, Received = 5, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 1ms, Maximum = 1ms, Average = 1ms

Pinging 127.0.0.1 with 32 bytes of data:

Reply from 127.0.0.1: bytes=32 time=1ms TTL=63
Reply from 127.0.0.1: bytes=32 time=1ms TTL=63
Reply from 127.0.0.1: bytes=32 time=1ms TTL=63
Reply from 127.0.0.1: bytes=32 time=1ms TTL=63
Reply from 127.0.0.1: bytes=32 time=1ms TTL=63

А вот как хотелось бы -

Reply from 127.0.0.1: bytes=32 time=1ms TTL=63
Reply from 127.0.0.1: bytes=32 time=1ms TTL=63
Reply from 127.0.0.1: bytes=32 time=1ms TTL=63
Reply from 127.0.0.1: bytes=32 time=1ms TTL=63
Reply from 127.0.0.1: bytes=32 time=1ms TTL=63

Ping statistics for 127.0.0.1:

Packets: Sent = 5, Received = 5, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 1ms, Maximum = 1ms, Average = 1ms


Date 23-12-2009 16;54;30
Pinging 127.0.0.1 with 32 bytes of data:

Reply from 127.0.0.1: bytes=32 time=1ms TTL=63
Reply from 127.0.0.1: bytes=32 time=1ms TTL=63
Reply from 127.0.0.1: bytes=32 time=1ms TTL=63
Reply from 127.0.0.1: bytes=32 time=1ms TTL=63
Reply from 127.0.0.1: bytes=32 time=1ms TTL=63

Суть в том что бы можно было отследить когда не было связи и переодичность
обрывов. А в таком варианте все пинги без дат и времени и ни как не отследишь
когда был обрыв.

В принципе в самом батнике и дату и время я прописал.
В самом окне это отображается, но в логи не пишется.
Вот в чем проблема по сути.

Очень прошу помочь, заранее благодарю.

Вот полный вариант батника -


МНЕ НУЖНО ЧТО БЫ РЕЗУЛЬТАТ ЭТОЙ СТРОКИ -
echo Date %date:

6,4% %time% (это дата и время).

ТОЖЕ ПИСАЛСЯ В ЛОГ ФАЙЛ.

Как я понял ТЗ:
1. Батник запускается либо ручками либо по заданию - т.е. все время на компе не висит (это хорошо, т.к. CMD как и любой интерпретатор дико жрет ресурсы - CPU time) и надо просто собирать лог когда пинги не проходили (удачные пинги нас мало интересуют). Логи разбиваются по датам (в примере сортировка жутко неудобная - поверь, я так когда-то по заданию бэкапил базы 1С а потом разбирался где и что). Но я бы держал все в одном файле.
2. Если такая бякость как отваливание интерфейса случается, то желательно держать батник всегда, но чтобы он "не светился" и постараться не слишком нагружать проц.

. Спасибо большое. Очень полезная штука. Я даже и незнал что в батниках так много переменных.
Сильно этим не баловался. А теперь вот приперло.

Код конечно хороош, но мне не все тут нужно. Хотя некоторые вещи я взял отсюда. Благодарю.

Вот что мне нужно было в итоге -

@Echo Off
:begin
set /A count=count+1
echo --------------------------------------------------------
echo TESTING & MONITORING IP PHONE "COMPANY NAME"
echo TEL. NUMBER XXXX [MAC ADRESS 00-0E-EF-A9-CF-96]
echo Date %date:

6,4% Time%time%
echo --------------------------------------------------------
echo TESTING MONITORING IP PHONE "COMPANY NAME">> %DATE%.txt
echo Phone NUMBER XXX [MAC ADRESS 00-0E-EF-A9-CF-96]>> %DATE%.txt
echo Date %date:

6,4% Time%time%>> %DATE%.txt
ping -n 5 127.0.0.1
ping -n 4 127.0.0.1>> %DATE%.txt
if errorlevel 1 echo PING NO SUCCESSFULL ERROR-5300 %time%>> %DATE%.txt
echo.
echo --------------------------------------------------------
if errorlevel 0 echo ********************************************************>> %DATE%.txt
echo Pause: 30 seconds.>> %DATE%.txt
if errorlevel 0 echo ********************************************************>> %DATE%.txt
echo.
if errorlevel 1 echo PING NO SUCCESSFULL %time%
@Echo Off
Echo Pause 30 seconds. Please Wait.
ping -n 30 127.0.0.1 >nul
cls
echo.
echo Pinging number %count%
goto begin

. Потом нужно модифицировать этот код.

Потому как я не смог сюда прикрутить параметры записи в лог файл только тех записей которые не пингуются.
В данном варианте пишутся все записи пингов, а потом просто ctrl+F и набираю в строке поиска 5300 и он ищет
соответствующие записи с таким текстом. А это у меня что-то типа кода ошибки. Вот так я пока вышел из положения.

Чтобы проверить, правильно ли работает сервер или веб-сайт, у нас есть один из вариантов - установить ping. Таким образом мы можем диагностировать возможные сбои и предпринимать действия по их устранению. В этой статье мы поговорим о PingInfoView . Это простая бесплатная программа, которая позволяет пинговать множество разных сайтов. Мы объясним, как его скачать и использовать.

PingInfoView, программа для пинга 100 сайтов

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

Пинг нескольких IP-адресов и доменов одновременно

к пинг мы можем использовать команды в операционной системе, но у нас также есть инструменты, которые помогают нам более наглядно. Таких программ много. Мы протестировали PingInfoView, очень интересную программу, к тому же совершенно бесплатную.

PingInfoView имеет важную особенность: он позволяет пинговать большое количество сайтов одновременно. При желании мы можем настроить таргетинг на 100 сайтов одновременно. Это очень интересно тем пользователям, которые хотят контролировать определенные страницы и видеть, что все идет хорошо. У него также есть различные опции и конфигурации, которые мы можем принять во внимание, чтобы получить от него максимальную отдачу.

Как использовать PingInfoView

Чтобы начать использовать PingInfoView, первое, что нам нужно сделать, это загрузить . Как мы уже указывали, это совершенно бесплатный инструмент. Кроме того, он не требует установки, поэтому нам просто нужно запустить его, как только он будет загружен на наш компьютер. Заходим на сайт NirSoft и спускаемся на скачать связь. Мы также найдем там всю информацию об этом приложении.

Как только мы загрузим его в нашу систему, нам останется только запустить его. В первом окне мы найдем поле, в котором мы должны указать IP-адреса, на которые мы хотим указать. Мы можем вставить столько, сколько захотим.

Как мы видим, есть разные параметры, которые мы можем конфигурировать . Мы можем изменить время, которое проходит на повторный пинг, запоминание адресов и т. Д. Когда у нас все настроено так, как мы хотим, нам просто нужно нажать ОК, и он начнет пинговать эти сайты.

В нашем случае мы положили 30 секунд интервала , так что это время, необходимое для проверки связи. Мы будем постоянно обновлять приложение, и мы будем видеть данные, касающиеся возможных сбоев, количества пинговых запросов и т. Д.

Когда мы хотим остановиться, нам просто нужно нажать красную кнопку «Стоп», которая появляется выше. Мы можем возобновить его в любой момент, а также добавить новые IP-адреса что мы заинтересованы в контроле.

Если мы щелкнем второй кнопкой мыши по любому из адресов, которые мы пинговали, мы увидим Дополнительную информацию . Новое окно откроется, как мы видим на изображении выше, с данными с этого сайта, чтобы иметь больше контроля.

Нажав на Параметры кнопка, которая появляется выше, мы можем изменять различные параметры. Например, мы можем войти в Дополнительные параметры и увидеть максимальное количество пингов одновременно. По умолчанию он помечен как 500, но это число, которое мы можем изменить, если захотим.

Интересный момент для тех, кто хочет пинговать десятки веб-сайтов, - это возможность загрузить файл со всеми из них. Нам не нужно писать их вручную или копировать их с другого сайта. Просто имея готовый файл, мы загружаем его в программу, и они добавляются.

Короче говоря, PingInfoView - это программа, которая позволяет вам пинговать несколько сайтов одновременно простым и интуитивно понятным способом. Нам просто нужно поставить интересующие нас адреса и настроить их с соответствующими параметрами, такими как, например, время. Альтернатива, которую следует учитывать по сравнению с другими аналогичными инструментами, которые мы также можем использовать в Windows.

Я пингую несколько IP-адресов в LAN, чтобы проверить, жив он или нет. код будет выполняться каждую минуту по расписанию. Для пинга нескольких IP-адресов я использовал многопроцессорную обработку. Это прекрасно делается с помощью многопроцессорной обработки. Одновременно я хочу записать результаты пинга в файл json после пинга. Но при записи в файл JSON он записывает только вывод последнего ip.I хотите все три. Есть ли какой-нибудь способ сделать это

Вот пример кода:

Вывод в файле JSON:

2 ответа

Если мой сервер имеет несколько адресов IP, назначенных ему, и я хотел бы прослушать некоторые (или все) из них, как мне это сделать? Нужно ли создавать новый сокет для каждого адреса IP и привязывать его? Могу ли я привязать несколько ip-адресов к одному сокету? Прослушивает ли IPAddress.Any все.

Существует несколько способов преобразования списка адресов IP в список адресов CIDR (netaddr, ipaddr-py). Есть ли способ преобразовать список диапазонов адресов IP в объединенный диапазон адресов IP? Обратите внимание, что это более общий вопрос моего предыдущего вопроса о форматировании глобуса.

Чтобы продолжать добавлять содержимое в существующий файл без перезаписи существующего содержимого, вы должны открыть его в режиме "append". В вашем коде вы открываетесь в режиме "write". Который откроет файл для записи, но перезапишет существующее содержимое.

В частности, эта строка в вашем коде:

Вы должны изменить режим открытия с записи ( 'w' ) на добавление ( 'a' ).

Дайте мне знать, если это решит вашу проблему.

Ниже приводится компактная версия кода:

Похожие вопросы:

Я нахожусь в процессе разбора всех IP-адресов из auth.log. У меня есть следующий скрипт для анализа ip-адресов, и он, кажется, работает нормально (или, по крайней мере, захватывает IP-адреса).

Учитывая диапазон IP адресов, введенных пользователем (различными способами), я хочу определить, на какой из этих машин работает программное обеспечение, с которым я могу разговаривать. Вот основной.

Если мой сервер имеет несколько адресов IP, назначенных ему, и я хотел бы прослушать некоторые (или все) из них, как мне это сделать? Нужно ли создавать новый сокет для каждого адреса IP и.

Существует несколько способов преобразования списка адресов IP в список адресов CIDR (netaddr, ipaddr-py). Есть ли способ преобразовать список диапазонов адресов IP в объединенный диапазон адресов.

Я ищу лучший способ автоматизировать белый список адресов IP в iptables . Список ip-адресов и портов берется из файла JSON /accept-rules.json , который форматируется следующим образом: [ < ip.

У меня есть сервер OpenVPN, работающий на моем ящике Linux, и он работает нормально. Сервер имеет много адресов IP, но он использует только один для всех клиентов (конечно). Можно ли использовать.

Я новичок в python и regex, и я пытался скрыть журналы IP - адресов в txt-файле. Я должен избегать использования for loops и if checks-если это возможно, потому что txt-файл огромен (158 МБ). (Все.

У меня есть набор, который содержит смесь ip4 - адресов и ip4-сетей. Простой короткий пример: Реальный размер - это.

Читайте также: