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?
Vous pouvez utiliser la commande arp -a
pour afficher toutes les entréesARPde la table concernant les ordinateurs de votre réseau.
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.
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
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.
ipconfig /all
(utilisez la barre oblique, pas vers l'arrière)
echo ls %USERDNSDOMAIN%|nslookup
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.
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).
Ceci est ma solution rapide. Il vous indique quel type de périphérique est connecté à chaque adresse IP:
netstat -r