Commande Windows pour afficher toutes les adresses IP


31

Je sais qu'il y a 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?


Je ne pense pas que cela soit possible d'une manière aussi générique.
theglauber

Vous devrez effectuer une analyse ping du sous-réseau local, puis utiliser la commande arp -a répertoriée ci-dessous.
cpt_fink


Il est préférable de vérifier toutes les adresses IP en utilisant «Adresse IP en colère».
vembutech

Réponses:


28

Vous pouvez exécuter la arp -acommande pour afficher toutes les entrées ARP du tableau concernant les ordinateurs de votre réseau.

La source


6
Cela montre tous les systèmes dont votre ordinateur est au courant / à qui vous avez parlé - cependant, ce n'est peut-être pas complet - j'ai exécuté une expérience rapide avec arp -a et il n'a pas montré un ou deux de mes systèmes jusqu'à ce que je le fasse cingler.
Journeyman Geek

Ya, comme le lien que j'ai posté a dit, il ne montrera pas tout sauf s'il les a stockés dans les tables afin que les machines ne soient pas affichées mais cela fait une assez bonne liste.
GigabitP

Welcone à Stack Exchange, Gigabit Pony! Lorsqu'un lien constitue l'essentiel de votre réponse, vous devez toujours citer les parties importantes au cas où il mourrait plus tard. Voir aussi le howto sur la rédaction de bonnes réponses .
Blacklight Shining

21

Tout ce qui a une adresse IP n'est pas un ordinateur - je n'ai trouvé aucune de ces suggestions qui renvoyait toutes les adresses IP actives - en fait, la plupart n'en renvoyaient que très peu. Mon réseau domestique a une combinaison d'appareils filaires et sans fil et de deux routeurs, téléphones mobiles, TV, PVR, Apple AirPort et probablement quelques petites choses que j'ai oubliées. J'ai utilisé ce qui suit pour analyser toutes les adresses sur le 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 de ping pour toutes les adresses et j'ai cherché ceux 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.


Une modification suggérée (annulée) for /L %i in (0,1,255) do ping -n 1 192.168.1.%i -4 | findstr -m "bytes=32" >> ipaddress.txta du mérite, mais n'est pas fondamentale pour la réponse, n'est pas cohérente avec le reste de la réponse qui l'a utilisée Received = 1plutôt que bytes=32, et n'est pas nécessairement la façon dont je l'aurais fait. J'ajoute ce commentaire si quelqu'un trouve la suggestion utile.
Clifford

1
for /L %i in (1,1,254)pourrait être plus approprié, car il xxxxxx.0s'agit de l'adresse de l'ensemble du réseau et de xxxxxx.255l'adresse de diffusion.
Scott

13

Il existe la net view /allcommande qui répertorie tous les noms d'ordinateurs connectés au même réseau local.

De là, vous pouvez récupérer les adresses IP individuelles à l'aide de la nslookup <computer name>commande ou écrire un script de commandes pour le faire pour vous.

Voici un exemple de lot que j'ai jeté ensemble pour illustrer.

@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

5

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

Si vous êtes prêt à utiliser une commande non native, je vous suggère 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 à votre réseau local) pour obtenir ce que vous recherchez, de manière plus fiable que net view /allou arp -aà mon avis.


1

ipconfig /all (utilisez une barre oblique, pas en arrière)


20
ipconfig répertorie les interfaces du PC lui-même et non les adresses IP utilisées sur le LAN.
Christian

1

Comme indiqué par quelqu'un d'autre, vous pouvez arp -acependant vous assurer que vous cochez d'abord 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 appareils connectés au réseau par leurs adresses IP et MAC. vous pouvez rechercher les adresses MAC sur un site Web comme https://aruljohn.com/mac.pl pour savoir qui est le fournisseur de la carte réseau. Cela devrait vous aider à préciser la plupart des appareils. ie ordinateurs, imprimantes, TV, téléphone portable, etc.



0

Ceci est ma solution rapide. Il vous indique quel type d'appareil est connecté à chaque adresse IP:

netstat -r 

0

afficher toutes les adresses IP des ordinateurs (celles qui sont utilisées)

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


Techniquement parlant, netstat -avide une liste des connexions réseau actuelles. La colonne d'adresse IP de gauche contient l'interface locale.
Ben N
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.