arp - Comprobar la relación entre IP y MAC
Tabla de contenidos
El comando arp muestra y edita la tabla que relaciona las direcciones IP con las direcciones MAC (la tabla ARP).
Cuando se comunica con un dispositivo de la misma red (LAN), Windows busca la dirección MAC del otro dispositivo a partir de su dirección IP y guarda el resultado temporalmente en la tabla ARP. El comando arp permite comprobar lo que se ha guardado.
Sintaxis básica del comando arp
arp -a [<dirección IP>] [-N <dirección IP de la interfaz>]
arp -s <dirección IP> <dirección MAC> [<dirección IP de la interfaz>]
arp -d <dirección IP | *> [<dirección IP de la interfaz>]
| Opción | Descripción |
|---|---|
-a | Muestra la tabla ARP (-g hace lo mismo) |
-s | Agrega una entrada estática |
-d | Elimina entradas (con * se eliminan todas las entradas) |
-N | Muestra solo las entradas de la interfaz especificada |
Mostrar la tabla ARP
arp -a
Los valores de las direcciones IP y MAC varían según el entorno. Se muestra un bloque por cada interfaz, como un adaptador de LAN.
| Columna | Significado |
|---|---|
| Dirección de Internet | La dirección IP del dispositivo |
| Dirección física | La dirección MAC del dispositivo (hexadecimal separado por -) |
| Tipo | dinámico (aprendida automáticamente al comunicarse) o estático (dirección fija o especial) |
ff-ff-ff-ff-ff-ff es la dirección de difusión (broadcast) y las direcciones que empiezan por 01-00-5e- son de multidifusión (multicast); ninguna es un dispositivo normal.
La tabla ARP solo incluye los dispositivos con los que se ha comunicado hace poco. Además, las entradas dinámicas se eliminan automáticamente si no se usan durante cierto tiempo (unos minutos). Si un dispositivo de su LAN no aparece, comuníquese primero con él mediante ping y vuelva a comprobarlo.
Consultar la dirección MAC de una dirección IP concreta
Si especifica una dirección IP, solo se muestra la entrada de ese dispositivo.
ping -n 1 192.168.1.20
arp -a 192.168.1.20
Al comunicarse con el dispositivo mediante ping, este se registra en la tabla ARP. El truco es ejecutar ping antes de arp -a.
ARP solo funciona dentro de la misma red. Aunque especifique la dirección IP de un dispositivo situado más allá del router, como un servidor de Internet, no se muestra su dirección MAC, sino el mensaje «No se encontraron entradas ARP.». Cuando se comunica con un dispositivo externo, lo que aparece en la tabla ARP es la entrada con la dirección IP del router (la puerta de enlace predeterminada).
Mostrar una interfaz concreta
Si tiene varios adaptadores, como Wi-Fi y cable, puede usar -N para limitar la interfaz que se muestra. Especifique la dirección IP asignada a ese adaptador (se usa junto con -a).
arp -a -N 192.168.1.10
Eliminar entradas
Si queda una relación antigua después de cambiar de router o reasignar una dirección IP y no puede comunicarse, al eliminar la entrada Windows la volverá a aprender. Ejecute el comando en un Símbolo del sistema ejecutado como administrador.
arp -d 192.168.1.20
arp -d *
Si especifica *, también se eliminan las entradas estáticas agregadas con -s. Aunque las elimine, una entrada dinámica se vuelve a registrar automáticamente la próxima vez que se comunique.
arp -d y arp -s requieren permisos de administrador. Sin ellos aparece el error «La operación solicitada requiere elevación». Consulte los artículos relacionados para obtener más información.
Agregar una entrada estática
Con -s puede registrar manualmente la relación entre una dirección IP y una dirección MAC. Especifique la dirección MAC en hexadecimal separado por -.
arp -s 192.168.1.20 aa-bb-cc-44-55-66
Las entradas estáticas se eliminan al reiniciar. Además, la dirección IP debe ser una a la que el equipo pueda llegar directamente (de la misma subred). Para conservarlas de forma permanente se necesita otro método, como netsh interface ipv4 add neighbors. En el uso normal casi nunca hace falta agregar una entrada estática, y registrar un valor incorrecto puede impedir la comunicación, así que tenga cuidado.
Cuando quiere consultar su propia dirección MAC
arp muestra las entradas de otros dispositivos; su propia dirección MAC no aparece. Puede consultar su dirección MAC en «Dirección física» de ipconfig /all.
ipconfig /all
Extraer una dirección MAC en un archivo por lotes
Combinado con for /f, puede guardar en una variable la dirección MAC de una dirección IP determinada.
@echo off
setlocal
set TARGET=%~1
if "%TARGET%"=="" (
echo Uso: get-mac.cmd direccion_IP
exit /b 1
)
ping -n 1 %TARGET% >nul
set MAC=
for /f "tokens=2" %%m in ('arp -a %TARGET% ^| findstr /r "[0-9a-f][0-9a-f]-[0-9a-f][0-9a-f]-"') do set MAC=%%m
if "%MAC%"=="" (
echo No se encontro la direccion MAC de %TARGET%.
exit /b 1
)
echo Direccion MAC de %TARGET%: %MAC%
findstr limita la salida a las líneas que contienen el formato de una dirección MAC (una secuencia como aa-bb-) y tokens=2 extrae el segundo elemento (la dirección física) de la línea dividida por espacios.
Resumen
| Qué quiere hacer | Comando |
|---|---|
| Mostrar la tabla ARP | arp -a |
| Mostrar la entrada de una IP concreta | arp -a 192.168.1.20 |
| Eliminar una entrada | arp -d 192.168.1.20 |
| Eliminar todas las entradas | arp -d * |
| Agregar una entrada estática | arp -s <IP> <MAC> |
| Consultar su propia dirección MAC | ipconfig /all |