Як я можу одночасно пінг діапазону IP-адрес [закрито]


39

У мене є маса машин, що знаходяться в діапазоні IP-адрес, які я хочу одночасно пінг, як швидкий і брудний спосіб повідомити, які з них увімкнено. Яке (безкоштовне) програмне забезпечення я можу використовувати для цього?

Я використовую Windows Vista .


2
Я спробував роздратований сканер ip та безкоштовний сканер ip, і сердито здається швидшим після збільшення його максимальної кількості потоків до діапазону IP-адрес, які я був після.
Джон Кейдж

є невеликий шанс, що це може відключити якусь безпеку. Можливо, вигідніше буде встановити автомати, щоб через певні проміжки часу проводити пінг центрального сервера або перевіряти маршрутизатор.
Подорожник Geek

Відповіді:


28

Найшвидший спосіб - це використовувати Angry IP Scanner

alt текст

Я використовую його так, як ви хочете!


4
Це безкоштовно? Я ним користуюся роками.
Вільям Гілсум,

2
Е .. так це?
Джон Кейдж

1
Це так добре! : D +1
BloodPhilia

Це відкладає деякі антивірусні підписи на "Потенційно небажану програму". Я пропоную замість цього використовувати PingInfoView NirSoft .
Іссі

@iszi Хибний позитив ... Я все ще думаю, що це найкраща програма для роботи.
Вільям Гілсум


13

Я використав цю команду

for %%i in 200 to 254 do ping 10.1.1.%%i 

у пакетному файлі з аналогічної причини


5
Ви впевнені, що це робить одночасний пінг? чи це одна машина за іншою!
Vineet Menon

1
домовились, не одночасно
hpavc

Ви маєте рацію , це послідовний , а не одночасне
Col


8

Замість того, щоб вручну писати всі IP-адреси вашої локальної мережі, ви можете зробити наступне:

Відкрийте командний рядок і введіть:

FOR /L %i IN (1,1,254) DO ping -n 1 192.168.0.%i | FIND /i "Reply">>C:\ipaddresses.txt

-n 1 означає, що на кожен комп'ютер буде надіслано лише 1 пакет пінг.

Змініть, 192.168.0щоб відповідати вашому власному ідентифікатору мережі.

Це дозволить пінг усіх IP-адрес у мережевому сегменті 192.168.0.0 та створить текстовий файл, який називається ipaddresses.txtна C: \, де він буде перераховувати лише IP-адреси, які дали відповідь.

Ви також можете додати -aдо команди ping, щоб вирішити всі відповіді IP-адреси на імена хостів, але це призведе до того, що сценарій потребує значного часу для завершення:

FOR /L %i IN (1,1,254) DO ping -a -n 1 192.168.0.%i | FIND /i "Reply">>C:\ipaddresses.txt

Це все ще пінг їх по одному, хоча це не так? Злий IP-сканер відтворює відразу всі IP-адреси в підмережі, запускаючи кілька потоків, тому для повного сканування потрібно дуже мало часу.
Джон Кейдж

Дуже добре працює в ситуаціях, коли на машину не може бути встановлена ​​жодна зовнішня програма та / або доступна лише текстова консоль. Єдине застереження для міжнародних користувачів - це те, що рядок "Відповідь" потрібно змінити на будь-яку локальну версію ping. Дякую, що поділились!
Альберто М

6

спробуйте fping


Він доступний і на Brew, і для OSX (якщо хтось займався серфінгом від Google і пропустив Windows у назві.)
Ross

4

Ви можете просто написати сценарій Bash, який проходить через діапазон IP-адрес і записує їх. Приклад, що пінг-адреси в діапазоні 10.1.1.1 до 10.1.1.255 (включно):

for i in {100..255}
do
    ping 10.1.1.$i
done

Я думаю, що "500" хоче бути 255 чи менше?
Девід Макінтош,

2
І я думаю, ping 10.1.1.iмабуть, хоче бути ping 10.1.1.$i.
Адам Лучженбрьер

1
також не одночасно
hpavc

Я вірю, вам потрібно буде пропустити прапор "-c". Щось на кшталт "ping -c1 192.168.1.1". в іншому випадку ви поки будете застрягати.
zee

3

Збережіть нижче скрипт на сервері з розширенням .batабо.cmd і викличте файл із командного рядка. Він повинен запропонувати вам ввести діапазон IP-адрес.

Введіть лише три октети IP-адреси.


@echo off

SET count=0
SET /p subnet=Please enter IP address range (for example, 192.168.0)

:start
SET /a count=%count%+1

cls
ECHO. & ECHO Trying %subnet%.%count% & ECHO.

ping -n 1 -w 1000 %subnet%.%count% >nul  
IF %errorlevel%==0 echo %subnet%.%count% UP >> c:\pingnet.log  
IF %errorlevel%==1 echo %subnet%.%count% DOWN >> c:\pingnet.log

IF %count%==254 goto :eof

GOTO start

Після запуску команди вона створить ім'я текстового файлу pingnet.log в корені диска C. Цей файл повинен містити список використаних і знижуваних (безкоштовних) IP-адрес.

Наприклад:

10.2.214.1 UP   
10.2.214.2 UP   
10.2.214.3 UP   
10.2.214.4 DOWN 

Запускати досить просто, і це дозволяє економити ваші час.


1
Це насправді досить повільно порівняно з розлюченим сканером IP, оскільки він робить їх по одному. Якщо не використовується більшість IP-діапазонів, вам доведеться чекати хвилин, щоб відповісти на це.
Джон Кейдж

2

Злий IP-сканер чудовий, але я віддаю перевагу інструментам CLI. Подивіться, чи можна отримати цей скрипт повноважень, що працює в Vista. https://github.com/webstersprodigy/PowerSploit/blob/Portscan/Recon/Invoke-Portscan.ps1

Я також пропоную отримати доступ до Linux CLI за допомогою Linux cd / usb, подвійного завантаження або vm у VirtualBox. (Встановіть VirtualBox, додайте новий vm, встановіть Debian.) Linux CLI є неоціненним.

З CLI Linux запустіть наступне:

На основі PING сканування

for ip in 172.10.1.{1..254}; do ping -c 1 -w 1 $ip > /dev/null && echo $ip "$(nslookup $ip | grep 'name = ' | awk -F ' = ' '{print $2}')"; done

Налаштуйте свій діапазон мережі (частина "172.10.1"), і ви вимкнетесь. Це забезпечить перелік усіх хостів у мережі, які відповідають на запити ехо (ping) ICMP та вирішить їх щодо вашого DNS-сервера.

Примітка. Це не найнадійніший спосіб перевірити живі хости, оскільки у них може бути заблокований ICMP.

сканування на основі nmap

nmap -sP 192.168.1.0/24

Примітка: Nmap є більш надійним, оскільки це сканер портів та заснований на результатах діяльності на більш ніж просто відповідях ICMP. Він сильно використовується пентестерами і варто його вивчити.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.