web-dev-qa-db-fra.com

Commande Windows pour afficher toutes les adresses IP

Je sais qu'il existe une seule ligne de commande et ses arguments qui peuvent aider à afficher toutes les adresses IP de l'ordinateur (celles qui sont utilisées) sur un réseau local, et mon ordinateur est également un client, comme l'un de ceux affichés, mais j'ai oublié. Qu'Est-ce que c'est?

31
Bé Vú Sữa 1

Vous pouvez utiliser la commande arp -a pour afficher toutes les entréesARPde la table concernant les ordinateurs de votre réseau.

La source

28
GigabitP

Tout ce qui a une adresse IP n’est pas nécessairement un ordinateur - j’ai trouvé qu’aucune de ces suggestions ne renvoyait toutes les adresses IP actives - en fait, la plupart en renvoyaient très peu. Mon réseau domestique combine des périphériques filaires et sans fil et deux routeurs, des téléphones portables, une télévision, un enregistreur vidéo numérique, Apple AirPort et probablement quelques petites choses que j'ai oubliées. J'ai utilisé ce qui suit pour analyser toutes les adresses du sous-réseau 192.168.1.xxx:

for /L %i in (0,1,255) do ping -n 1 -w 250 192.168.1.%i>>ipaddress.txt

Le fichier résultant ipaddress.txt contient les résultats du ping pour toutes les adresses. J'ai cherché celles avec "Received = 1" - actuellement, 16 adresses ont renvoyé un résultat - je n'ai que 4 ordinateurs dans la maison - et ils n'étaient pas tous allumés.

19
Clifford

Il existe la commande net view /all qui répertorie tous les noms d’ordinateur connectés au même réseau local.

À partir de là, vous pouvez récupérer les adresses IP individuelles à l’aide de la commande nslookup <computer name> ou écrire un script batch pour le faire à votre place.

Voici un exemple de lot que j'ai rassemblé pour illustrer mon propos.

@echo off
setlocal EnableDelayedExpansion
set "xNext="
set "xComputer="
for /f %%A in ('net view /all') do (
    set "xComputer=%%~A"
    if "!xComputer:~0,2!"=="\\" for /f "tokens=2,* delims=. " %%X in ('nslookup %%A') do (
        if "!xNext!"=="1" (
            echo.!xComputer! = %%X.%%Y
            set "xNext=0"
        )
        if "!xComputer:~2!"=="%%~X" set "xNext=1"
    )
)
endlocal
pause
13
David Ruhmann

Mis à part arp -a, net view /all ou l'écriture d'un script batch, il n'y a pas de ligne de commande native/intégrée pour le faire (du moins, pas que je sache).

Si vous souhaitez utiliser une commande non native, je suggérerais d'utiliser Nmap . Vous pouvez exécuter nmap -sn 192.168.0.0/24 (en remplaçant le sous-réseau par celui qui convient pour votre réseau local) pour obtenir ce que vous recherchez, de manière plus fiable que net view /all ou arp -a à mon avis.

5
Drew Chapin

ipconfig /all (utilisez la barre oblique, pas vers l'arrière)

2
Unnikrishnan
echo ls %USERDNSDOMAIN%|nslookup
0

Comme indiqué par quelqu'un d'autre, vous pouvez utiliser arp -a, mais assurez-vous d'abord d'envoyer une requête ping à une adresse de diffusion afin que ARP signale tous les périphériques. Par exemple, ping 192.168.0.255

vous obtenez une liste de tous les périphériques connectés au réseau par leurs adresses IP et MAC. Vous pouvez rechercher les adresses MAC sur un site Web tel que https://aruljohn.com/mac.pl pour savoir qui est le fournisseur du NIC. Cela devrait vous aider à préciser ce que sont la plupart des appareils. i.e. ordinateurs, imprimantes, télévision, téléphone portable, etc.

0
Sean

afficher toutes les adresses IP de l'ordinateur (celles qui sont utilisées)

Je pense que vous pourriez vouloir dire netstat -a cela vous donne une liste active. Si vous voulez connaître le programme en utilisant l'adresse IP, utilisez netstat -b (ouvert en tant qu'administrateur).

0
TarranJones

Ceci est ma solution rapide. Il vous indique quel type de périphérique est connecté à chaque adresse IP:

netstat -r 
0
DR_WHO