28 votos

¿Hay alguna forma de hacer ARP ping en Windows?

En Linux y otros sistemas, existe una utilidad llamada arping que puede utilizarse para enviar peticiones ARP ("pings") y mostrar las respuestas, de forma muy parecida a la utilidad "ping" pero utilizando ARP en lugar de ICMP.

¿Hay alguna forma de hacer lo mismo en Windows? (Yo uso Windows 7)

16voto

Si borras la caché arp de Window ( arp -d ) y luego intentas hacer ping a la dirección ip, emitirá un arp broadcast.

Compruébalo con Wireshark.

0 votos

¿Está garantizado este comportamiento?

2 votos

@Pacerier: Sí, ya que el ICMP (ping) está construido sobre la capa IP. La capa IP necesita la dirección de hardware para una dirección IP dada para saber a quién enviar su paquete. Si la caché ARP está vacía, la capa IP no tendrá más remedio que emitir una petición ARP antes de poder enviar el paquete.

1 votos

Este comportamiento es NO garantizado. Sólo ocurrirá si la dirección IP es alcanzable según las reglas de subred; de lo contrario, utilizará la dirección IP de la puerta de enlace predeterminada para emitir una solicitud ARP.

15voto

jeremcc Puntos 3720

Arping para Windows existe realmente.

http://freshmeat.net/projects/arping/

Corrección: esto es para Linux, MAC OSX, etc... pero se puede instalar en Windows a través de cygwin.

0 votos

Para ser claros, cualquier cosa en la red hoy en día necesita responder a ARP, por lo tanto casi cualquier cosa "soporta" el ping ARP. La cuestión es si tienen o no una bonita utilidad empaquetada para hacerlo.

9voto

sparks Puntos 131

Una forma integrada de hacer esto en Windows:

cmd /V /C "set "IP=10.0.2.2" & FOR /L %i in () do @ping -n 1 -w 1000 "!IP!" >NUL & arp -a | findstr /c:"!IP! "  

Si quiere mostrar un resultado ARP fresco cada vez (Necesita ejecutarse como administrador)

cmd /V /C "set "IP=10.0.2.2" & FOR /L %i in () do @arp -d & @ping -n 1 -w 1000 "!IP!" >NUL & arp -a | findstr /c:"!IP! "

0 votos

Guau, esto es duro ¡me encanta! Y casi funciona aquí. En realidad tuve que añadir un espacio entre -n y 1 por lo que se convirtió: ... @ping -n 1 ...

0 votos

Este bucle es eterno. Creo que lo que pretendías es cmd /V /C "set "IP=10.0.2.2" & FOR /L %i in (1,1,2) do @ping -n 1 -w 1000 "!IP!" >NUL & arp -a | findstr /c:"!IP! " que se ejecuta dos veces y así recoge direcciones MAC duplicadas.

0 votos

¿Podría explicar qué hace este comando?

6voto

El comando ARP de WinXP es sólo para mostrar datos. Pruebe Nmap, es gratis y bastante fácil para este tipo de escaneo. Nmap está disponible en insecure.org.

5 votos

Eso es probablemente lo más parecido a la utilidad arping (usando nmap -PR -sP <host>). Enhorabuena, has ganado.

1 votos

@e-t172 Con las nuevas versiones de nmap, el comando nmap -PR -sn <host> es preferible. -sP está obsoleto. Además, esto sólo me funcionó cuando lo ejecuté como root.

5voto

Valamas Puntos 140

Prueba con "arp-ping.exe"

Pensé en añadir esta herramienta que se ejecuta directamente desde el símbolo del sistema:

Opciones de la línea de comandos de arp-ping.exe

Usage: arp-ping.exe [options] target
        -s ip : specify source ip
        -n X  : ping X times
        -t    : ping until stopped with CTRL-C
        -x    : exit immediately after successful ping
        -i X  : ping every X seconds
        -d    : do an 'arp -d *' between pings (requires Administrator)
                (-d prevents cached ARP responses on Windows XP.)
        -c    : include date and time on each line
        -m X  : ignore failures that take less than X milliseconds
        -.      : print a dot (.) for every ignored failure
        -l    : print debug log
        -v    : print version and exit

Frente a las opciones de la línea de comandos "arping" de Linux

Usage: arping [-fqbDUAV] [-c count] [-w timeout] [-I device] [-s source] destination
-f : quit on first reply
-q : be quiet
-b : keep broadcasting, don't go unicast
-D : duplicate address detection mode
-U : Unsolicited ARP mode, update your neighbours
-A : ARP answer mode, update your neighbours
-V : print version and exit
-c count : how many packets to send
-w timeout : how long to wait for a reply
-I device : which ethernet device to use (eth0)
-s source : source ip address
destination : ask for what ip address

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: