Sa PING-uim cu NMAP

By Andrei Ungureanu - Last updated: Monday, October 5, 2009 - Save & Share - Leave a Comment

 

Un scenariu de care m-am lovit in ultimul timp a fost sa monitorizez via script daca anumite sisteme sunt online. Numele sau IP-urile sistemelor le aveam intr-un fisier TXT. Am facut si scriptul, nici o problema pana aici, doar ca lista continea cateva sute de sisteme iar scriptul facut in VBscript rula pentru minute bune pana cand termina toata lista, asta si pentru ca nu poti sa lucrezi multithread in VBscript 🙁 Un coleg a refacut scriptul in Python si ca sa vezi … aveam outputul in cateva secunde, nu in 15 minute.

Zic, il fac in Powershell, m-am lasat pagubas in scurt timp (nu de tot ca vreau sa-mi fac propriul cmdlet care sa faca asa ceva).

Dupa asta un alt coleg mi-a adus aminte de NMAP, si se pare ca daca nu vrei sa ai de-a face cu scripturi in Python, cam asta e cea mai buna solutie. Iata si un exemplu:

image

Ceva mai rapid ar fi cu –v in loc de –R (fara –v sau –R output-ul arata doar hosturile care sunt UP)

image

NMAP are si parametri prin care poti influenta paralelismul, doar ca eu nu i-am vazut sa functioneze si pentru ping scans. Oricum functioneaza multithreading, insa eu nu am reusit sa-l optimizez dupa bunul meu plac; de fiecare data incepe cu o grupa mica de 5 IP-uri.

De fapt a mers cu –max-parallelism 1 cand a facut aceeasi scanare in 60 de secunde.

Si putem sa trimitem totul catre |findstr down pentru a vedea doar host-urile care nu raspund la ping:

image

PS:In continuare folosesc scriptul facut in Python. Poate o sa-mi termin si cmdlet-ul ca sa am mai multe variante.

Posted in Management and monitoring, Networking • • Top Of Page

Write a comment