To najprostszy sposób na wykonanie wykrywania hostów za pomocą nmap.
nmap -sP 192.168.2.1/24
Dlaczego to nie działa cały czas?
Po uruchomieniu tego polecenia nmap próbuje pingować podany zakres adresów IP, aby sprawdzić, czy hosty żyją. Jeśli ping nie powiedzie się, próbuje wysłać pakiety synchronizacji do portu 80 (skanowanie SYN). Nie jest to w stu procentach niezawodne, ponieważ nowoczesne zapory ogniowe oparte na hostach blokują ping i port 80. Zapora systemu Windows domyślnie blokuje ping. Hosty, które masz w sieci, blokują ping, a port 80 nie akceptuje połączeń. Dlatego nmap zakłada, że host nie działa.
Więc czy istnieje obejście tego problemu?
Tak. Jedną z dostępnych opcji jest użycie flagi -P0, która pomija proces wykrywania hosta i próbuje wykonać skanowanie portów na wszystkich adresach IP (w tym przypadku zostaną przeskanowane nawet wolne adresy IP). Oczywiście ukończenie skanowania zajmie dużo czasu, nawet jeśli jesteś w małej sieci (20-50 hostów). ale da wyniki.
Lepszą opcją byłoby określenie niestandardowych portów do skanowania. Nmap umożliwia sondowanie określonych portów za pomocą pakietów SYN / UDP. Generalnie zaleca się sondowanie powszechnie używanych portów, np. TCP-22 (ssh) lub TCP-3389 (zdalny pulpit systemu Windows) lub UDP-161 (SNMP).
sudo nmap -sP -PS22,3389 192.168.2.1/24 #custom TCP SYN scansudo nmap -sP -PU161 192.168.2.1/24 # niestandardowe skanowanie UDP
Uwaga nawet po określeniu niestandardowych portów do skanowania możesz nie uzyskać aktywnego hosta. Wiele zależy od tego, jak skonfigurowany jest host i jakich usług używa. Więc musisz po prostu sondować z różnymi kombinacjami. Pamiętaj, nie skanuj sieci bez odpowiedniej autoryzacji.
aktualizacja : podczas skanowania sieci nigdy nie można być pewnym, że dane polecenie przyniesie wszystkie oczekiwane rezultaty. Podejście powinno polegać na rozpoczęciu od podstawowego przeglądania pingów, a jeśli to nie zadziała, spróbuj zgadnąć aplikacje, które mogą być uruchomione na hostach i zbadać odpowiednie porty. Ciekawy jest również pomysł wykorzystania Wireshark. Możesz spróbować wysłać pakiety ACK.
nmap -sP -PA21,22,25,3389 192.168.2.1/24 # 21 jest używane przez ftp
aktualizacja druga: flagi -sP i -P0 są teraz znane odpowiednio jako -sn i -Pn. Jednak starsze flagi nadal działają w nowszych wersjach.