Kann ich mit nmap IPs und Mac-Adressen ermitteln?


11

Wenn ich die IPs von Geräten anhand ihrer Mac-Adresse auf einem Windows-System suchen muss, verwende ich normalerweise den erweiterten IP-Scanner (von radmin.com), um das Netzwerk zu scannen, und verwende dann arp -a, um die Mac-Adressen aufzulisten.

Ist es möglich, mit nmap dieselbe Funktion unter Linux und möglicherweise unter Windows auszuführen? Kann nmap dem Scannen zuordnen und sowohl IPs als auch MAC-Adressen erzeugen?

Ich habe arp -a unter Linux ausprobiert, aber es scheint nicht so schnell zu funktionieren wie unter Windows oder erfordert eine Verwendungseingabe.

/ vfclists


nmap -sP 192.168.1.1/24
— Iraklis

Antworten:


6

Sie können die Ping-Scans verwenden, die mit dem P-Flag beginnen. Ich persönlich benutze -sL jedoch für diesen Job.

http://nmap.org/book/man-host-discovery.html


5
+1 Ich benutze auch -sP. Aber um Mac-Adressen zu erhalten, müssen Sie sich auf derselben LAN-Adresse befinden (keine Router dazwischen).
— PiL

1
Ich habe mit der Option -sP getestet und es ist genau das, wonach ich suche, dank Pier und Iraklis. Es dient zum Scannen nach Elementen, die ihre IPs über DHCP oder statisch im lokalen Netzwerk erhalten.
— vfclists

13

Mit nmap können viele Informationen gefunden werden.

nmap -A -v -v 192.168.1.0/24 gibt viele Informationen, in einigen Fällen sogar SO

nmap -sn 192.168.1.0/24gibt die MAC- und IP-Adressen an. Sehr nützlich auch

sudo nmap -PU 192.168.1.0/24 erklärt jede IP-Adresse


5
Laut der nmap Manpage -sPist jetzt bekannt als-sn
— Alastair McCormack

8

Der folgende Befehl mit nmap mit Root- Rechten (oder mit sudo ):

sudo nmap -sP 172.31.201.0/24 | awk '/Nmap scan report for/{printf $5;}/MAC Address:/{print " => "$3;}' | sort

Ergebnisse in:

172.31.201.80 => 00:50:56:AF:56:FB
172.31.201.97 => 00:26:73:78:51:42
server1.company.internal.local => 3C:D9:2B:70:BC:99
...

1
Dies klebt Linien viel. Die andere Antwort ist besser: serverfault.com/a/669862/284568 .
— Velkan

2
@Velkan Die andere Antwort fehlt sudo und gibt mir auch nur IP: MAC, diese Antwort gibt Ihnen IP / Hostname: MAC, alles hängt von Ihren Bedürfnissen ab. Vielen Dank!
— Antonio Saco

Vielen Dank, dass Sie klargestellt haben, dass Root-Berechtigungen erforderlich sind.
— Mszmurlo

7

Dieser Befehl durchsucht alle IP-Adressen in einem Bereich und zeigt die MAC-Adresse jeder IP-Adresse an. Dies geschieht in einem greifbaren Format oder mit anderen Worten. Zeigt die IP- und MAC-Adresse in einer einzelnen Zeile an. Das ist praktisch, wenn Sie nach Excel exportieren oder ein Grep darauf ausführen möchten.

nmap -n -sP 10.0.3.0/24 | awk '/Nmap scan report/{printf $5;printf " ";getline;getline;print $3;}'

Es scheint auch für IPs / MACs zu funktionieren, die nicht bereits in der ARP-Tabelle des Hosts enthalten sind. Das ist gut.

Der Befehl führt zu:

10.0.3.100 B8:27:EB:8E:C5:51
10.0.3.101 00:26:B6:E1:4B:EB
10.0.3.112 00:01:29:02:55:25
etc..

Zum späteren Nachschlagen -oG -oder ähnliches sollte es viel einfacher zu analysieren sein.
— Duncan X Simpson

Wie sich herausstellt, werden -oGdie Mac-Adressen zumindest nicht beibehalten. Wtf?
— Duncan X Simpson

0

Hinzufügen zur Antwort von Antonio-Saco. Ich wollte auch den Anbieter zur Ausgabe auflisten. Dazu möchten Sie den 3. Index (MAC-Adresse) bis zum Zeilenende drucken.

sudo nmap -sn 10.10.10.0/24 | awk '/Nmap scan report for/{printf $5;}/MAC Address:/{print " => "substr($0, index($0,$3)) }' | sort

Ergebnisse in:

10.10.10.24 => B0:5A:DA:EB:2A:C4 (Hewlett Packard)
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.