Esiste un modo per cercare IP gratuiti sulla rete? Io uso nmap -sP 192.168.1.0/24
ma questo in realtà mostra host che sono attivi.
Esiste un modo per cercare IP gratuiti sulla rete? Io uso nmap -sP 192.168.1.0/24
ma questo in realtà mostra host che sono attivi.
Risposte:
Usare Nmap in questo modo è un modo abbastanza preciso di fare ciò che hai chiesto, a condizione che alcune condizioni preliminari siano vere:
Per ottenere gli indirizzi "disponibili", è necessario ottenere l'elenco di indirizzi che Nmap riporta come "inattivo". Puoi farlo con un semplice comando awk:
sudo nmap -v -sn -n 192.168.1.0/24 -oG - | awk '/Status: Down/{print $2}'
Riepilogo delle opzioni Nmap utilizzate:
-v
opzione, Nmap stamperà gli indirizzi che trova come "giù" oltre a quelli che sono "su".-sP
, ho sostituito l'ortografia più recente -sn
, che esegue ancora la stessa scansione, ma significa "salta la scansione della porta" invece della "Ping scan" fuorviante (poiché la fase di scoperta dell'host non significa necessariamente una scansione dell'eco o un ping ICMP ).-n
opzione salta le ricerche DNS inverse, il che ti fa guadagnare un po 'di tempo, poiché non sei interessato ai nomi ma solo agli indirizzi IP.-oG
opzione dice a Nmap di produrre un formato grepable , che è più facile da elaborare per awk. L'argomento " -
" gli dice di inviare questo output a stdout.Il comando awk quindi cerca "Stato: Giù" e stampa il secondo campo, contenente l'indirizzo IP.
Naturalmente, se si ha accesso alle configurazioni in esecuzione dello switch o ai contratti di locazione del server DHCP, è possibile ottenere questa risposta in modo molto più autorevole senza eseguire una scansione che potrebbe far scattare allarmi di sicurezza.
Non sono sicuro di n-map, ma si potrebbe ragionevolmente supporre che se si scrive uno script ping che invia 1 ping a ciascun indirizzo che gli host che ritornano con "destinazione non raggiungibile" non sono occupati e tutto ciò che ritorna "timeout richiesta" è occupato ma non risponde al ping. La differenza tra le due risposte è che "destinazione non raggiungibile" non ha ricevuto una risposta alla sua richiesta ARP. "Timeout richiesta" indica che qualcosa ha risposto alla richiesta ARP, ma non al pacchetto ICMP.
Eccone un altro ispirato ad Anders Larsson
per ip nel 172.18.5. {129..254}; fai {ping -c 1 -W 1 $ ip; } &> / dev / null || echo $ ip e fatto | ordinare
Il che significa: "Prova a eseguire il ping di tutti gli Ip nell'intervallo. Se il" ping "non riesce, stampa quell'IP"
Se fate
nmap -v -sn -n 192.168.1.0/24 -oG - | awk '/Status: Down/{print $2}'
Funziona velocemente, ma ho notato che alcuni host segnalati come "Giù" in realtà sono "Su"