Come posso pingare una serie di indirizzi IP simultaneamente

Ho un sacco di macchine su un intervallo di indirizzi IP che voglio ping simultaneamente come un modo veloce e sporco di dire quali sono accesi. Quale software (gratuito) posso utilizzare per eseguire questa operazione?

Sto utilizzando Windows Vista .

Il modo più veloce è quello di utilizzare Angry IP Scanner

alt text

Lo uso per lo stesso modo che vuoi!

Nmap è disponibile per Windows:

# nmap -sP 10.0.10.1-100 

Ho usato questo command

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

in un file batch per un motivo analogo

Scanner IP gratuito 1.6

Ecco la gamma degli indirizzi IP come si può notare in:

Alt testo

provare fping

Invece di pingare manualmente tutti gli indirizzi IP sulla LAN, è ansible effettuare quanto segue:

Aprire un prompt dei comandi e digitare:

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

-n 1 significa che solo un pacchetto ping verrà inviato a ciascun computer.

Cambiare 192.168.0 per 192.168.0 all'ID di networking.

Questo ping tutti gli indirizzi IP nel segmento di networking 192.168.0.0 e crea un file di text denominato ipaddresses.txt in C: \, where elenca solo gli indirizzi IP che hanno dato una risposta.

È inoltre ansible aggiungere -a al command ping per risolvere tutti gli indirizzi IP rispondenti ai nomi host, ma in tal modo lo script richiede un tempo considerevole per finire:

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

Potresti solo scrivere uno script Bash che lo attraversa attraverso un intervallo di indirizzi IP e li pinga. Un esempio che pings indirizzi nell'intervallo da 10.1.1.1 a 10.1.1.255 (incluso):

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

Salvare lo script riportto di seguito sul server con un'estensione di .bat o .cmd e call il file dal prompt dei comandi. Dovrebbe richiedere l'accesso all'intervallo di indirizzi IP.

Inserisci solo tre ottetti dell'indirizzo 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 

Una volta che il command è stato eseguito, creerà un nome di file di text pingnet.log nella radice dell'unità C. Quel file dovrebbe fornire un elenco di indirizzi IP usati e in giù (liberi).

Per esempio:

 10.2.214.1 UP 10.2.214.2 UP 10.2.214.3 UP 10.2.214.4 DOWN 

È abbastanza semplice da eseguire e dovrebbe risparmiare un sacco di tempo.

Lo scanner IP Angry è ottimo, ma preferisco gli strumenti CLI. Vedi se è ansible get questo script powershell in esecuzione in Vista. https://github.com/webstersprodigy/PowerSploit/blob/Portscan/Recon/Invoke-Portscan.ps1

Suggerisco anche di accedere a un Linux CLI utilizzando un cd / usb live Linux, un avvio dual o un vm in VirtualBox. (Installare VirtualBox, aggiungere un nuovo vm, installare Debian.) Un CLI di linux è prezioso.

Da un CLI di linux, eseguire quanto segue:

Scansione basata su 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 

Regola per la tua gamma di networking (la parte '172.10.1') e sei spenta. Ciò fornirà un elenco di tutti gli host della networking che rispondono alle richieste ICMP echo (ping) e risolverli contro il server DNS.

Nota: questo non è il modo più affidabile per testare gli host live in quanto potrebbero essere bloccati da ICMP.

Scansione basata su nmap

nmap -sP 192.168.1.0/24

Nota: Nmap è più affidabile in quanto è uno scanner di port e basa i suoi risultati sull'attività su più risposte ICMP. È fortemente usato dai pentestri e vale la pena imparare.