Puis-je utiliser nmap pour découvrir les adresses IP et mac?

11

Lorsque j'ai besoin de localiser les adresses IP des appareils par leur adresse mac sur un système Windows, j'utilise normalement Advanced IP Scanner (de radmin.com) pour analyser le réseau, puis j'utilise arp -a pour répertorier les adresses mac.

Est-il possible d'utiliser nmap pour effectuer la même fonction sous Linux et éventuellement sous Windows? Peut nmap à l'analyse et produire des adresses IP et MAC?

J'ai essayé arp -a sous Linux mais il ne semble pas fonctionner aussi rapidement que sous Windows ou semble nécessiter une entrée d'utilisation.

/ vfclists

vfclists
la source
nmap -sP 192.168.1.1/24
Iraklis

Réponses:

6

Vous pouvez utiliser les analyses Ping, qui commencent par le drapeau P. Cependant, j'utilise personnellement -sL pour ce travail.

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

Shyam
la source
5
+1 J'utilise également -sP. Mais attention, pour pouvoir obtenir des adresses mac, vous devez être sur le même lan (pas de routeurs entre les deux).
PiL
1
J'ai testé avec l'option -sP et c'est exactement ce que je recherche, grâce à Pier et Iraklis. Il s'agit de rechercher des éléments obtenant leur IP via DHCP ou statique dans le réseau local.
vfclists
13

En utilisant nmap, beaucoup d'informations peuvent être trouvées.

nmap -A -v -v 192.168.1.0/24 donne beaucoup d'informations, même SO dans certains cas

nmap -sn 192.168.1.0/24donne les adresses MAC et IP. Très utile aussi

sudo nmap -PU 192.168.1.0/24 explique chaque adresse IP

AAlvz
la source
5
Selon la page de manuel nmap, -sPest désormais connue sous le nom de-sn
Alastair McCormack
8

La commande suivante avec nmap avec les privilèges root (ou en utilisant sudo ):

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

résulte en:

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
...
Antonio Saco
la source
1
Cela colle beaucoup de lignes. L'autre réponse est meilleure: serverfault.com/a/669862/284568 .
Velkan
2
@Velkan L'autre réponse manque sudo et ne me donne également que IP: MAC, cette réponse vous donne IP / nom d'hôte: MAC, tout dépend de vos besoins. Merci!
Antonio Saco
Merci d'avoir précisé qu'il a besoin des privilèges root.
mszmurlo
7

Cette commande analyse toutes les adresses IP dans une plage et affiche l'adresse MAC de chaque adresse IP. Il le fait dans un format greppable, ou en d'autres termes; affiche l'adresse IP et MAC sur une seule ligne. C'est pratique si vous souhaitez exporter vers Excel ou exécuter un grep dessus.

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

Il semble également fonctionner pour les IP / MAC qui ne sont pas déjà dans la table ARP des hôtes. C'est une bonne chose.

La commande se traduit par:

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..
Jaspe
la source
Pour référence future, -oG -ou similaire devrait être beaucoup plus facile à analyser.
Duncan X Simpson
En fait, au bail -oGne préserve pas les adresses mac. Wtf?
Duncan X Simpson
0

Ajout à la réponse d'Antonio-Saco. Je voulais également répertorier le fournisseur à la sortie. Pour ce faire, vous souhaitez imprimer le 3e index (adresse MAC) à la fin de la ligne.

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

Résulte en:

10.10.10.24 => B0:5A:DA:EB:2A:C4 (Hewlett Packard)
DDI Guy
la source