nmap trouve tous les noms d’hôte et adresses IP vivants dans le réseau local

83

Comment puis-je émettre une commande nmap qui me montre toutes les adresses IP des machines actives et les noms d'hôte correspondants dans le réseau local auquel je suis connecté? (si cela peut être fait d'une autre manière / d'un outil, nous vous invitons à y répondre)

şaloma
la source

Réponses:

90

Versions nmap inférieures à 5.30BETA1:

nmap -sP 192.168.1.*

versions plus récentes de nmap:

nmap -sn 192.168.1.*

Cela me donne des noms d’hôte ainsi que des adresses IP, et n’envoie que des pings aux hôtes pour les découvrir. Cela ne vous donnera les noms d’hôtes que si vous l’exécutez en tant que root.

EDIT: À partir de Nmap 5.30BETA1 [2010-03-29] -sP a été remplacé par -sncomme moyen privilégié d'effectuer des analyses ping, tout en ignorant l'analyse des ports, comme les commentaires l'indiquent:

Auparavant, les options -PN et -sP étaient recommandées. Ceci établit une syntaxe plus régulière pour certaines options qui désactivent les phases d'une analyse:

  • -n pas de DNS inversé
  • -Pn pas de découverte d'hôte
  • -sn pas d'analyse de port
Cheesebaron
la source
6
+1 avec l'avertissement que cela ne retourne que les machines qui répondent à ICMP. Toute machine bloquant spécifiquement ICMP ne sera pas visible
Matt Simmons
10
@MattSimmons Si nmap est exécuté en tant que rootet que les adresses IP proviennent d'un réseau local (le serveur est membre du sous-réseau), les demandes ARP sont envoyées. Donc , il va détecter les machines en vie parce que personne ne bloque vraiment ARP paquets. Oh, et avec les nouvelles nmapversions, c'est -sn(bien que -sPcela fonctionne aussi).
Hubert Kario
4
Je ne reçois aucun nom d'hôte avec cette commande. Suggestions?
daviesgeek
@daviesgeek Essayé de l'exécuter en tant que root?
Cheesebaron
3
@ Cheesebaron Ah. C'est ça. Je suggérerais d'ajouter que, sans cela, les noms d'hôtes ne seront pas affichés.
daviesgeek
9
nmap -sP 192.168.1.0/24

Notez que la résolution de noms n’est aussi bonne que la population reverse-dns. Notez également que cela n'obtiendra pas les systèmes protégés par un pare-feu contre le ping (ce qui est le cas de pratiquement tous les postes de travail Windows).

Si vous êtes local aux systèmes (c.-à-d. Sur le même sous-réseau), vous pouvez faire quelque chose comme:

for i in `seq 1 254` ; do arping -c 1 192.168.1.$i | grep reply ; done

... mais des choses étranges m'arrivent parfois quand je m'enroule en boucle. Aussi, vous devez faire la recherche vous-même, avec quelque chose comme

dig +short -x $IP
David Mackintosh
la source
La solution arp est lente mais fonctionne bien, la solution nmap ne trouve pas toutes les
adresses
5

Vous pouvez analyser un sous-réseau entier, vous pouvez également utiliser des caractères génériques.

nmap 192.168.8.*

ou

nmap 192.168.8.1/24
Jubal
la source
4

NMAP renverra la "recherche inversée" de l'adresse IP en question, il ne peut pas renvoyer l'adresse de recherche directe. Ou des adresses dans le cas de serveurs Web effectuant un hébergement virtuel basé sur un nom. Nmap n'est pas l'outil pour cela.

sysadmin1138
la source
2
quel outil dois-je utiliser alors?
şaloma
Je ne sais rien de ce qui fait ça.
sysadmin1138
2

nmap -sP 192.168.0.0/24 affichera quelque chose comme:

> nmap -sP 192.168.0.0/24

Starting Nmap 4.00 ( http://www.insecure.org/nmap/ ) at 2010-06-22 22:27 CEST
Host 192.168.0.0 appears to be up.
Host 192.168.0.1 appears to be up.
Host abcd.domain.tld (192.168.0.2) appears to be up.
Host def.domain.tld (192.168.0.3) appears to be up.
Host fdsf.domain.tld (192.168.0.4) appears to be up.
Host reht.domain.tld (192.168.0.5) appears to be up.
Host vcxbfd.domain.tld (192.168.0.6) appears to be up.
Host ezqs.domain.tld (192.168.0.7) appears to be up.
Host 192.168.0.8 appears to be up.
Host ilolio.domain.tld (192.168.0.9) appears to be up.
Host ipbd.domain.tld (192.168.0.10) appears to be up.
Host cdekf.domain.tld (192.168.0.11) appears to be up.
Host 192.168.0.12 appears to be up.
Host 192.168.0.13 appears to be up.
Host 192.168.0.14 appears to be up.
Host 192.168.0.15 appears to be up.
Host ainv.domain.tld (192.168.0.16) appears to be up.
Host 192.168.0.17 appears to be up.
Host 192.168.0.18 appears to be up.
Host wzdkz.domain.tld (192.168.0.19) appears to be up.
[…]
Nmap finished: 256 IP addresses (256 hosts up) scanned in 7.491 seconds
rayon
la source
1
Comment puis-je apprendre le nom de la machine? Je reçois les noms d’hôte comme suit: dhcp-186-241.abc.dk dhcp-186-250.abc.dk .... par exemple, lorsque hostnamej’émets sur un terminal Ubuntu, j’obtiens: infestor-pcmais nmap indique mon nom d’hôte sous le nom dhcp-186-250.abc.dk. y a-t-il un moyen de voir le nom d'hôte 'amical'?
şaloma
Pas le seul moyen serait d'enregistrer le nom de l'ordinateur dans le DNS
rayon
2

Vous pouvez utiliser la commande suivante:

nmap -v -A $IP
EviLiNsiDe
la source
0

Le moyen le plus rapide et le meilleur d'envoyer une requête ping à tous les Ips de Local Net est de désactiver la résolution DNS inversée

Utilisation :
NMAP -sn 192.168.1.1-255

cela analysera tous les 255 hôtes de la plage IP 192.168.1.1 - 192.168.1.255

Si vous voulez un fichier facilement analysable

Utilisation :
NMAP -sn -oG Name.txt 192.168.1.1-255

Spetzz
la source
0

si cela peut être fait d'une autre manière / d'un outil, nous vous invitons à y répondre

Vous pouvez simplement utiliser une arpcommande comme ceci:

$ arp -a
RousseauAlexandre
la source
-1

Je pense que vous devriez exécuter ceci:

sudo nmap -sU --script nbstat.nse -p137 10.10.10.*
sipcents
la source
Cela n'ajoute rien aux réponses existantes et, en outre, ne trouvera que les hôtes Windows avec le partage activé. Certainement plus spécifique que le PO voulait.
Scott Pack
Fonctionnera toujours avec le partage réseau désactivé. Seule la découverte du réseau doit être activée, valeur par défaut pour les réseaux privés.
John Homer
-1

Essayez ceci: Exemple Plage d'adresses IP: 10.1.0.0 - 10.1.255.255

nmap -sV -T4 -O 10.1.*.*
Elshan
la source