Comando de Windows para mostrar todas las direcciones IP

31

Sé que hay una sola línea de un comando y sus argumentos que pueden ayudar a mostrar todas las direcciones IP de la computadora (las que se están utilizando) en una LAN, y mi computadora también es un cliente, como se muestra, pero lo olvidé. ¿Qué es?

Bé Vú Sữa 1
fuente
No creo que esto sea posible de una manera tan genérica.
theglauber
Tendría que hacer un escaneo de ping en la subred local y luego usar el comando arp -a que se detalla a continuación.
cpt_fink
Es mejor verificar toda la dirección IP usando 'Dirección IP enojada'.
vembutech

Respuestas:

28

Puede hacer el arp -acomando para mostrar todas las entradas ARP en la tabla sobre computadoras en su red.

Fuente

GigabitP
fuente
66
Muestra todos los sistemas de los que su computadora conoce / habló; sin embargo, puede que no esté completo. Realicé un experimento rápido con arp -a y no mostró uno o dos de mis sistemas hasta que lo pellizqué.
Journeyman Geek
Sí, como decía el enlace que publiqué, no mostrará todo a menos que los tenga almacenados en las tablas, por lo que las máquinas no se mostrarán, pero sí una buena lista.
GigabitP
¡Bienvenido a Stack Exchange, Gigabit Pony! Cuando un enlace constituye la mayor parte de su respuesta, siempre debe citar las partes importantes en caso de que muera más tarde. Vea también el tutorial sobre cómo escribir buenas respuestas .
Blacklight Shining
21

No todo lo que tiene una dirección IP es una computadora. Encontré que ninguna de estas sugerencias devolvió todas las direcciones IP activas; de hecho, la mayoría devolvió muy pocas. Mi red doméstica tiene una combinación de dispositivos con cable e inalámbricos y dos enrutadores, teléfonos móviles, TV, PVR, Apple AirPort y probablemente algunas cosas que he olvidado. Usé lo siguiente para escanear todas las direcciones en la subred 192.168.1.xxx:

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

El archivo resultante ipaddress.txt contiene los resultados de ping para todas las direcciones y busqué aquellos con " Received = 1" - actualmente 16 direcciones arrojaron un resultado - solo tengo 4 computadoras en la casa - y no estaban todas encendidas.

Clifford
fuente
Una edición sugerida (revertida) for /L %i in (0,1,255) do ping -n 1 192.168.1.%i -4 | findstr -m "bytes=32" >> ipaddress.txttiene mérito, pero no es fundamental para la respuesta, no es coherente con el resto de la respuesta que se utilizó en Received = 1lugar de bytes=32, y no es necesariamente la forma en que lo habría hecho. Estoy agregando este comentario si alguien encuentra útil la sugerencia.
Clifford
1
for /L %i in (1,1,254)podría ser más apropiado, ya que xxxxxx.0es la dirección de toda la red y xxxxxx.255es la dirección de difusión.
Scott
13

Existe el net view /allcomando que enumerará todos los nombres de computadora que están conectados a la misma LAN.

A partir de eso, puede recuperar las direcciones IP individuales con el nslookup <computer name>comando o escribir un script por lotes para que lo haga por usted.

Aquí hay un lote de ejemplo que reuní para ilustrar.

@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
David Ruhmann
fuente
5

Aparte de arp -a, net view /allo al escribir un script por lotes, no hay una línea de comando nativa / incorporada para hacer esto (al menos no que yo sepa).

Si está dispuesto a usar un comando no nativo, sugeriría usar Nmap . Puede ejecutar nmap -sn 192.168.0.0/24(en sustitución de la subred con el apropiado para su LAN) para lograr lo que está buscando, más fiabilidad, de manera que net view /allni arp -aen mi opinión.

Drew Chapin
fuente
1

ipconfig /all (use barra diagonal, no hacia atrás)

Unnikrishnan
fuente
20
ipconfig enumera las interfaces de la PC en sí y no las direcciones IP utilizadas en la LAN.
Christian
1

Según lo indicado por otra persona, puede usar arp -asin embargo, asegúrese de hacer ping a una dirección de transmisión primero para que ARP informe todos los dispositivos. Por ejemplo,ping 192.168.0.255

obtienes una lista de todos los dispositivos conectados a la red por sus direcciones IP y MAC. puede buscar las direcciones MAC en un sitio web como https://aruljohn.com/mac.pl para averiguar quién es el proveedor de la NIC. Esto debería ayudarlo a reducir lo que son la mayoría de los dispositivos. es decir, computadoras, impresoras, TV, teléfono celular, etc.

Sean
fuente
0
echo ls %USERDNSDOMAIN%|nslookup
Eric Douglas Miller
fuente
8
Bienvenido a SU. ¿Puedes explicar qué hace el comando?
Martin Prikryl
0

Esta es mi solución rápida. Le dice qué tipo de dispositivo está conectado en cada dirección IP:

netstat -r 
DR. QUIEN
fuente
0

mostrar todas las direcciones IP de la computadora (las que se están utilizando)

Creo que puede querer decir que netstat -aesto te da una lista activa. Si desea conocer el programa utilizando la dirección IP, use netstat -b(abrir como administrador).

TarranJones
fuente
Técnicamente hablando, netstat -avuelca una lista de conexiones de red actuales. La columna de la dirección IP izquierda contiene la interfaz local.
Ben N