Uzyskaj nazwy urządzeń w sieci


14

Chciałem poznać nazwy wszystkich urządzeń w sieci. Próbowałem już bez wielkiego sukcesu wielu poleceń znalezionych w sieci, ale nic nie działało tak, jak chciałem.

Zasadniczo po wprowadzeniu ustawień routera mogę uzyskać nazwy urządzeń podłączonych do mojej sieci. Mogę to również uzyskać w niektórych aplikacjach, więc myślę, że można to zrobić w jakiś sposób.

Chcę listę nazw wszystkich urządzeń podłączonych do mojej sieci Wi-Fi za pomocą wiersza polecenia.

Dzięki


pi@raspberrypi ~ $ nmap -sP 192.168.4.0/24

Starting Nmap 6.00 ( http://nmap.org ) at 2015-03-05 13:55 UTC
Nmap scan report for 192.168.4.1
Host is up (0.0055s latency).
Nmap scan report for 192.168.4.2
Host is up (0.42s latency).
Nmap scan report for 192.168.4.4
Host is up (0.045s latency).
Nmap scan report for 192.168.4.5
Host is up (0.47s latency).
Nmap scan report for 192.168.4.6
Host is up (0.0032s latency).
Nmap scan report for 192.168.4.7
Host is up (0.79s latency).
Nmap scan report for 192.168.4.8
Host is up (0.0024s latency).
Nmap scan report for 192.168.4.9
Host is up (0.038s latency).
Nmap scan report for 192.168.4.10
Host is up (0.034s latency).
Nmap scan report for 192.168.4.11
Host is up (0.029s latency).
Nmap scan report for 192.168.4.22
Host is up (0.12s latency).
Nmap scan report for 192.168.4.27
Host is up (0.031s latency).
Nmap scan report for 192.168.4.28
Host is up (0.012s latency).
Nmap scan report for 192.168.4.100
Host is up (0.0038s latency).
Nmap done: 256 IP addresses (14 hosts up) scanned in 49.30 seconds

Odpowiedzi:


8

Zazwyczaj używam do tego palca , jest to skaner, który skanuje podsieć, na której jesteś, i próbuje wyodrębnić nazwy hostów i wyświetlić je obok adresów IP i MAC.

Dawny:

14:19:05 > Discovery profile: Default discovery profile
14:19:05 > Discovery class:   data-link (data-link layer)
14:19:05 > Discovery on:      192.168.1.0/24

14:19:05 > Discovery round starting.
14:19:05 > Host is up:   192.168.1.151
           HW Address:   XX:XX:XX:XX:XX:XX
           Hostname:     My-laptop-hostname

14:19:05 > Host is up:   192.168.1.1
           HW Address:   YY:YY:YY:YY:YY:YY
           Hostname:     router.asus.com

14:19:06 > Discovery progress 25%
14:19:07 > Discovery progress 50%
14:19:08 > Discovery progress 75%
14:19:05 > Host is up:   192.168.1.10
           HW Address:   AA:BB:CC:DD:EE:FF (ASUSTek COMPUTER)

14:19:05 > Host is up:   192.168.1.11
           HW Address:   GG:HH:II:JJ:KK:LL

14:19:06 > Host is up:   192.168.1.99
           HW Address:   MM:NN:OO:PP:QQ:RR (Apple)
           Hostname:     iPhoneOfSomeone

Jak widać, nie wszystkie urządzenia podają swoją nazwę hosta; na przykład niektóre urządzenia peryferyjne, takie jak drukarki, nie zawsze podają nazwy hostów, ale większość urządzeń to robi. Próbuje nawet odgadnąć producenta, analizując część identyfikacyjną MAC

Działa na Raspberry Pi, jakiś czas temu zainstalowałem go na moim i działa zgodnie z oczekiwaniami.


1
Jak zainstalować palec? Twój link jest martwy i nie znajduje się w żadnym repozytorium Raspberry Pi.
Patrick Cook

5
Podaj, jak wywołałeś palec, aby uzyskać ten wynik. Bez polecenia odpowiedź jest niepełna.
user666412

2
Użyłem a, apt-get install libpcap-dev ; wget https://www.fing.io/wp-content/uploads/2016/10/overlook-fing-3.0.deb ; dpkg -i overlook-fing-3.0.deb aby zainstalować, a następnie finggo uruchomić. Nie zgłosił nazwy hosta dla mojego Rpi, ale rozpoznał go jako HW Address: B8:27:EB:1B:E6:0C (Raspberry Pi Foundation).
Dave X

1
Nie wykryto nawet jednej nazwy hosta w sieci 22 urządzeń w pierwszej sieci testowej. To samo z innymi 24 hostami. Fing, jak na razie (Febr 2018) wydaje mi się bałaganem.
Sopalajo de Arrierez

5
Czy link jest nadal poprawny? Wygląda teraz na produkt IoT, a nie narzędzie wiersza polecenia.
Venryx

8

Żadna z powyższych odpowiedzi nie działała dla mnie, więc zacząłem bawić się arp-scan. Znalazłem więc takie działanie:

arp-scan -I [WIFI INTERFACE] -l

arp-scan skanuje sieć i wyświetla listę urządzeń. -I wybiera interfejs i -l mówi arp-scan, aby spojrzał na sieć lokalną. Następnie wpisz

arp

Spowoduje to zwrócenie właśnie zlokalizowanego urządzenia arp-scan oraz wyświetlenie nazw hostów i adresów MAC.


6

Myślę, że musisz dokładniej określić swój problem, zwłaszcza definicję nazwy urządzenia .

Niestety w tej chwili nie mam dostępu do Raspberry Pi, więc wszystko tutaj wyświetlane pochodzi z mojej skrzynki Debian 7.

nmap -sP wykonuje odwrotne wyszukiwania DNS, więc jeśli twoje urządzenia mają odwrotne wpisy DNS, ich dane wyjściowe wyglądają następująco:

> nmap -sP 192.168.4.0/24
Starting Nmap 6.00 ( http://nmap.org ) at 2015-03-12 06:24 CET
Nmap scan report for device1.local (192.168.4.1)
Host is up (0.0021s latency).
Nmap scan report for device2.local (192.168.4.2)
Host is up (0.014s latency).
…

Hosty blokujące sondy ping nie pojawią się na wyjściu. Nie będą też hosty, które nie oferują usług na portach, które skanujesz za pomocą tej -popcji. Skanowanie całego zakresu portów przy -p 0-65535jednoczesnym generowaniu znacznego obciążenia sieci, nadal nie pokazuje hostów, które po prostu nie mają żadnych otwartych portów.

Jedynymi wiarygodnymi informacjami na temat hostów w sieci są adresy MAC i IP. Twój serwer DHCP zna oba, ponieważ przypisał adresy IP. Ponadto wielu klientów DHCP wysyła nazwę hosta zawartą w żądaniu DHCP, więc serwer DHCP ma nazwę dla tego urządzenia, nawet jeśli nazwa ta nie pojawia się nigdzie indziej (DNS, SMB,…).

Niestety wydaje się, że twój serwer DHCP nie zgłasza dynamicznie przypisanych adresów IP Twojemu serwerowi nazw, więc nie możesz pobrać tych informacji.

Aby znaleźć wszystkie urządzenia w sieci, możesz zrzucić tabelę ARP po pingowaniu wszystkich hostów (np. Przy użyciu nmap -sP):

> arp -vn
Address               HWtype  HWaddress           Flags Mask            Iface
192.168.4.1           ether   12:34:56:78:9a:bc   C                     wlan0
192.168.4.2           ether   11:22:33:44:55:66   C                     wlan0
…

Dzięki adresom MAC i IP masz jedyne spójne informacje o swoim otoczeniu sieciowym. Próbowanie otwartego portu 445 pokaże urządzenia, które najprawdopodobniej obsługują SMB (tj. Sieć Windows) - a zatem mają nazwę systemu Windows.

Łączenie z innymi otwartymi portami (np. 21 / ftp, 22 / ssh, 23 / telnet,…) może również oferować nazwy hostów, ale zawsze w sposób zależny od protokołu - a hosty teoretycznie mogą wywoływać się inaczej na wszystkich portach.

Alternatywnie możesz skonfigurować własny serwer DHCP i DNS na Pi i zapewnić działającą usługę odwrotnego DNS.

Jeśli wszystkie Twoje urządzenia obsługują Zeroconf , być może będziesz mógł wykonać wykrywanie urządzeń w ten sposób.


3

Aby uzyskać nazwę urządzenia hostów Windows, użyj

nmap --script smb-os-discovery -p 445 192.168.1.0/24

(źródło: http://www.blackbytes.info/2013/07/finding-windows-host/ )


Ciao Simone! Działa to tylko w przypadku hostów systemu Windows, ale muszę odkryć wszystkie nazwy urządzeń w mojej sieci.
Federico Ponzi

1
Mogę się mylić, ale nie jestem pewien, jaka byłaby koncepcja „nazwy urządzenia” dla maszyny z systemem Linux. Najbliższa rzecz, o której mogę pomyśleć, to nazwa hosta zdefiniowana w / etc / HOSTNAME lub / etc / hostname, ale nie wiem, czy możesz ją uzyskać, pytając maszynę (chyba że serwer DNS ją podaje) .
rand

1

W systemie Linux możesz użyć, nbtscanaby osiągnąć to, czego szukasz.

Uruchom, sudo apt-get install nbtscanaby zainstalować.

Aby wyświetlić nazwy hostów urządzeń podłączone do sieci,

biegać sudo nbtscan 192.168.0.1-192.168.0.255,

zakładając, że host jest w 192.168.0.1i używa maski podsieci o wartości 255.255.255.0. Dostosuj zakres IP zgodnie z konfiguracją sieci.


To może rozwiązać tylko nazwy NetBIOS.
Pierz

A dla moich testów wydaje się, że nie pokazuje wszystkich nazw NetBIOS w sieci.
Sopalajo de Arrierez

0

Trzy odpowiedzi tutaj odnoszą się, nmapale znalazłem prefiks sudo(który nie robi żadna z odpowiedzi) robi różnicę na świecie:

$ nmap -sP 192.168.1.0/24

Starting Nmap 7.01 ( https://nmap.org ) at 2019-07-13 14:55 MDT
Nmap scan report for 192.168.1.65
Host is up (0.00037s latency).
Nmap scan report for 192.168.1.66
Host is up (0.00035s latency).
Nmap scan report for 192.168.1.67
Host is up (0.00028s latency).
Nmap scan report for 192.168.1.68
Host is up (0.00025s latency).
Nmap scan report for 192.168.1.70
Host is up (0.017s latency).
Nmap scan report for 192.168.1.254
Host is up (0.00070s latency).
Nmap done: 256 IP addresses (6 hosts up) scanned in 6.86 seconds

$ sudo nmap -sP 192.168.1.0/24

Starting Nmap 7.01 ( https://nmap.org ) at 2019-07-13 14:56 MDT
Nmap scan report for 192.168.1.65
Host is up (0.00050s latency).
MAC Address: 99:99:99:99:99:A6 (Unknown)
Nmap scan report for 192.168.1.66
Host is up (0.00016s latency).
MAC Address: 99:99:99:99:99:D9 (Sony)
Nmap scan report for 192.168.1.70
Host is up (-0.087s latency).
MAC Address: 99:99:99:99:99:36 (Unknown)
Nmap scan report for 192.168.1.254
Host is up (0.0020s latency).
MAC Address: 99:99:99:99:99:00 (Actiontec Electronics)
Nmap scan report for 192.168.1.67
Host is up.
Nmap scan report for 192.168.1.68
Host is up.
Nmap done: 256 IP addresses (6 hosts up) scanned in 2.41 seconds

Natknąłem się na to pytanie, ponieważ badam projekt, w jaki sposób wyświetlać nazwy czytelne dla ludzi, a nie zakodowane komputerowo adresy IP i adresy MAC urządzeń.

W szczególności chcę, aby „Toshiba 43” telewizor 4K był wyświetlany zamiast „(nieznany)” dla MAC 99:99:99:99:99:36(nie rzeczywisty adres) powyżej.

Później chcę rozszerzyć projekt poza sieć lokalną do Internetu, gdzie zamiast „ Stack Exchange ” wyświetli się 999.999.9.99lub „ Ask Ubuntu ” zamiast 999.999.9.99kiedy patrzę na zewnętrzne adresy IP, z którymi współpracuje moja maszyna.


-1

jcbermu jest bardzo blisko, ale ze strony podręcznika nmap:

-sL (List Scan) .
       The list scan is a degenerate form of host discovery that simply lists each host of the network(s) specified, without sending any packets to the target hosts. By default, Nmap still does
       reverse-DNS resolution on the hosts to learn their names.

Jeśli jest przechowywany we wpisie rDNS, znajdzie go, w przeciwnym razie może być konieczne nasłuchiwanie żądań DHCP i przechwytywanie ich.


-2

Potrzebujesz nmap . Wydaj polecenie takie jak:

nmap -sP 192.168.1.0/24

i przeprowadzi wykrywanie sieci w podsieci, 192.168.1.0 - 192.168.1.255pokazując nazwy i adresy IP wszystkich urządzeń w tej sieci.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.