Geräte im LAN ermitteln

  Ralf Hersel   Lesezeit: 3 Minuten  🗪 5 Kommentare

IP und Name der Geräte im LAN ermitteln, unter Verwendung eines alternativen DNS-Resolvers.

geräte im lan ermitteln

Vorgestern wurde in unserem HELP-Raum ein Problem diskutiert, das ich seit einiger Zeit beim Ermitteln der Geräte im lokalen Netzwerk habe. Es empfiehlt sich ein kurzer Blick in diesen Artikel, worin der Anwendungsfall beschrieben wird. Das Problem lag darin, dass nmap zwar die IP der Geräte, jedoch nicht deren Namen ausgab. Das ist ungünstig, weil man der IP nicht ansieht, welches Handy oder welcher Raspi sich dahinter verbirgt.

Im Titelbild könnt ihr das Problem sehen; die IPs und der Up/Down-Status werden angezeigt, aber die Geräte-Namen (in den Klammern) fehlen. Im HELP-Raum konnten einige Teilnehmer:innen das Verhalten bei sich reproduzieren, andere jedoch nicht. Warum ist das so und wie löst man das Problem?

Um es vorwegzunehmen, die Ursache der fehlenden Namen lautet: DNS-Resolver. Zu dieser Thematik gibt es einen Artikel vom Dezember 2022. Das ist auch genau das Datum, seitdem bei mir die Namen nicht mehr angezeigt wurden. Ich hatte zu dieser Zeit auf allen Geräten einen alternativen DNS-Resolver eingetragen, nämlich dnsforge.de. An sich führt das zu keinen Problemen und ist sehr zu empfehlen, ausser beim nmap-Befehl.

Euer Router weiss, wie die Geräte im LAN heissen, falls ihr diese Namen gepflegt habt, oder die Geräte ihren Namen dem Router mitgeteilt haben. Von dort holt der nmap-Befehl die Geräte-Namen. Falls man nmap von einem Gerät aufruft, bei dem ein alternativer DNS-Resolver eingetragen ist, funktioniert es nicht mehr. Deshalb ist es ratsam, den alternativen DNS-Resolver nicht auf den einzelnen Geräten, sondern beim Router einzutragen. Moderne Router bieten diese Option an. Bei meinem Synology-Router sieht das so aus:

Die IP 9.9.9.9 zeigt auf Quad9 und die zweite IP auf DNSforge. Damit ist es überflüssig, auf den einzelnen Geräten andere DNS-Resolver einzutragen. Das gilt aber nicht für den DNS-Resolver-Eintrag im Webbrowser und auf dem Smartphone. Oder anders gesagt, nur das Gerät, auf dem der nmap-Befehl ausgeführt werden soll, darf keinen eigenen DNS-Resolver verwenden. Nachdem man diese Einstellungen korrigiert hat, funktioniert der nmap-Aufruf wieder:

Es empfiehlt sich, den Befehl in die Shell-Konfiguration (.bashrc, .zshrc, usw.) einzutragen, damit man sich bei der nächsten Verwendung nicht an den genauen Befehl erinnern muss:

alias scan='nmap -sn -oG - 192.168.1.0/24'

Statt "scan" könnt ihr einen beliebigen Namen wählen, z. B.: "Wer_lebt_in_meinem_LAN".

Tags

Nmap, DNS-Resolver, DNS, Router, Geräte

Naja
Geschrieben von Naja am 8. Februar 2023 um 10:24

Für nmap gibt es auch die Option "--dns-servers" , um einen Resolver beim Scan anzugeben. Dann ist auch klar, welcher aktuell verwendet wird.

Aus der man-page:

--dns-servers server1[,server2[,...]] (Server, die für Reverse-DNS-Anfragen benutzt werden)

Standardmäßig bestimmt Nmap Ihre DNS-Server (für die rDNS-Auflösung) aus Ihrer Datei resolv.conf (Unix) oder der Registry (Win32). Mit dieser Option können Sie alternative Server dazu angeben. Diese Option bleibt unbeachtet, falls Sie --system-dns oder einen IPv6-Scan benutzen. Oft ist es schneller, mehrere DNS-Server zu benutzen, besonders dann, wenn Sie für Ihren Ziel-IP-Raum maßgebende Server benutzen.

Diese Option kann auch die Heimlichkeit erhöhen, da Ihre Anfragen von fast jedem rekursiven DNS-Server im Internet abprallen können.

tux
Geschrieben von tux am 8. Februar 2023 um 11:21

Vielen herzlichen Dank für diesen tollen Beitrag! Bezüglich mal schnell ein alias erstellen: hab ich gleich in meine Toolkiste gepackt:)

PS: warum ist nmap so extrem langsam? Für den scan von 256 IP addressen (auf macOS sorry) benötigt bei mir nmap ca. 20 sec. LanScan (ein GUI tool) nicht mal 1 sec.

Ist nmap auf Linux auch so langsam?

Bei der Gelegenheit möchte ich auch noch euren tollen Podcast loben, weiter so!

Naja
Geschrieben von Naja am 8. Februar 2023 um 16:05

Wenn das so schnell geht, dann würde ich tippen, dass LanScan per default gar nicht scannt, sondern die Routingtables abfragt (arp-scan o.ä.).

Gaga
Geschrieben von Gaga am 8. Februar 2023 um 16:47

Nimm als Option --min-parallelism evtl 100 oder so.

Allgemein, nmap ist ein Portscanner und macht viel mehr als nur das Netzwerk scannen, das braucht halt Zeit.

akf
Geschrieben von akf am 8. Februar 2023 um 11:53

Wenn man die MAC-Adressen sehen will, kann man »arp -a« eingeben. Dafür muss man eventuell root sein.