it-swarm-ru.tech

Как я могу пинговать диапазон IP-адресов одновременно

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

Я использую Windows Vista .

37
Jon Cage

Самый быстрый способ - использовать Angry IP Scanner

alt text

Я использую это так же, как вы хотите!

27
William Hilsum

Nmap доступно для Windows:

# nmap -sP 10.0.10.1-100
36
David Mackintosh

Я использовал эту команду

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

в командном файле по аналогичной причине

13
Col

Бесплатный IP Scanner 1.6

Вот диапазон IP-адресов, которые вы можете заметить в:

Alt text

11
user3864

Вместо того, чтобы вручную пропинговать все 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
7
user33927

попробуйте fping

6
akira

Вы можете просто написать скрипт Bash , который перебирает диапазон IP-адресов и проверяет их связь. Пример, который проверяет адреса в диапазоне от 10.1.1.1 до 10.1.1.255 (включительно):

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

Сохраните приведенный ниже скрипт на сервере с расширением .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 

Это довольно просто запустить, и это должно сэкономить вам массу времени.

3
GSA

Angry IP Scanner - это здорово, но я предпочитаю инструменты CLI. Посмотрите, сможете ли вы запустить этот скрипт powershell в Vista. https://github.com/webstersprodigy/PowerSploit/blob/Portscan/Recon/Invoke-Portscan.ps1

Я также предлагаю получить доступ к Linux CLI с помощью Linux Live CD/USB, двойной загрузки или виртуальной машины в VirtualBox. (Установите VirtualBox, добавьте новый vm, установите Debian.) Линукс CLI неоценим.

Из linux CLI запустите следующее:

Сканирование на основе 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»), и вы отключены. Это предоставит список всех хостов в сети, которые отвечают на эхо-запросы ICMP (ping), и сопоставит их с вашим DNS-сервером.

Примечание. Это не самый надежный способ тестирования живых хостов, поскольку у них может быть заблокирован ICMP.

сканирование на основе nmap

nmap -sP 192.168.1.0/24

Примечание: Nmap является более надежным, так как это сканер портов и основывает свои результаты на активности не только на ответах ICMP. Он активно используется пентестерами и заслуживает изучения.

2
Alex Atkinson