Protocolo ARP: qué es y cómo relaciona direcciones IP y MAC

Ilustración del protocolo ARP con un ordenador y una tarjeta de red conectados, junto a las etiquetas IPv4 y MAC.

En este episodio de Network Technology Podcast descubrirás cómo ARP permite que los dispositivos encuentren la dirección MAC asociada a una dirección IPv4. Puedes escuchar el episodio completo en Spotify mientras sigues esta guía.

Network Technology Podcast · Guía práctica

Comprende ARP paso a paso: de la IP a la MAC

ARP (Address Resolution Protocol) descubre la dirección MAC asociada a una IPv4 del siguiente salto en el enlace local. Consulta la caché y, si necesita resolver la asociación, envía una petición; el vecino responde con su MAC. En Ethernet, los mensajes ARP viajan directamente en tramas, sin puertos TCP ni UDP.

Equipo A192.168.1.10
00:11:22:33:44:55
ARP REQUEST→¿Quién tiene 192.168.1.20?
Equipo B192.168.1.20
AA:BB:CC:DD:EE:FF
Qué conseguirás: al terminar podrás explicar un ARP Request y un ARP Reply, interpretar una tabla ARP, entender qué ocurre cuando el destino está en otra red resolver ejercicios sobre el siguiente salto y reconocer los riesgos de ARP spoofing.

¿Qué es el protocolo ARP?

ARP son las siglas de Address Resolution Protocol, o protocolo de resolución de direcciones. Su función más habitual es descubrir qué dirección MAC corresponde a una dirección IPv4 dentro de la red local.

Cuando un equipo conoce la IP del siguiente destino, todavía necesita construir una trama Ethernet. Para hacerlo debe escribir una MAC de destino. Si esa asociación no está guardada, ARP pregunta por ella y almacena la respuesta temporalmente.

DATO CONOCIDODirección IPv4Identifica lógicamente al equipo o al siguiente salto.
DATO BUSCADODirección MACPermite entregar la trama en el enlace local.
RESULTADOEntrada en cachéLa relación IP–MAC queda guardada durante un tiempo.
¿En qué capa trabaja? ARP actúa en la frontera entre la capa de Internet y la capa de acceso a red del modelo TCP/IP. En el modelo OSI suele estudiarse junto a la capa de enlace, aunque no fue diseñado dentro del propio modelo OSI.

¿Por qué una red necesita direcciones IP y MAC?

Las dos direcciones cumplen funciones distintas. La dirección IP permite decidir la ruta lógica de un paquete entre redes. La dirección MAC se utiliza para mover una trama por el enlace local actual.

CaracterísticaDirección IPDirección MAC
FunciónDireccionamiento lógico y encaminamientoEntrega de tramas en el enlace local
Ejemplo192.168.1.20AA:BB:CC:DD:EE:FF
ÁmbitoPuede atravesar routersCambia en cada enlace del recorrido
Protocolo relacionadoIPv4Ethernet o Wi‑Fi

Una idea importante: la IP final del paquete puede mantenerse durante todo el trayecto, pero las direcciones MAC de la trama se sustituyen cada vez que el paquete pasa de un enlace a otro.


¿Cómo funciona ARP paso a paso?

Supongamos que el Equipo A, con IP 192.168.1.10, quiere comunicarse con el Equipo B, cuya IP es 192.168.1.20. Ambos están en la red 192.168.1.0/24.

El equipo comprueba su caché ARPBusca si ya conoce la MAC asociada a 192.168.1.20. Si la entrada existe y sigue siendo válida, no necesita preguntar.
Envía un ARP Request por broadcastLa trama utiliza como destino FF:FF:FF:FF:FF:FF. La pregunta equivale a: “¿Quién tiene 192.168.1.20?”.
Todos reciben la peticiónLos dispositivos del mismo dominio de broadcast la examinan, pero en el caso normal responde el que posee la IP solicitada. Más adelante veremos la excepción de Proxy ARP.
El Equipo B envía un ARP ReplyResponde normalmente por unicast: “192.168.1.20 está en AA:BB:CC:DD:EE:FF”.
El Equipo A actualiza su tabla ARPGuarda temporalmente la relación entre la IP y la MAC para evitar nuevas consultas inmediatas.
Comienza la comunicación realAhora puede encapsular el paquete IP dentro de una trama Ethernet dirigida a la MAC correcta.

Resumen del intercambio

ARP Request  · Broadcast
Origen:  192.168.1.10 / 00:11:22:33:44:55
Pregunta: ¿Quién tiene 192.168.1.20?

ARP Reply    · Normalmente unicast
Respuesta: 192.168.1.20 es AA:BB:CC:DD:EE:FF
ARP no busca equipos en Internet. Sus mensajes se quedan en el enlace local y los routers no reenvían un ARP Request a otras redes.

¿Qué dirección MAC busca ARP si el destino está en otra red?

Antes de usar ARP, el equipo consulta su tabla de rutas para elegir la interfaz y el siguiente salto. En una red sencilla, con una única interfaz y una ruta predeterminada, la IP y la máscara permiten distinguir un destino de la misma subred de otro situado fuera.

Destino en la misma red

El equipo pregunta directamente por la MAC del dispositivo de destino. Por ejemplo, para llegar de 192.168.1.10/24 a 192.168.1.20/24, busca la MAC de 192.168.1.20.

Destino en otra red

El equipo no busca la MAC del servidor remoto. Si no existe una ruta más específica, envía el paquete a su puerta de enlace predeterminada y, por tanto, utiliza ARP para descubrir la MAC de la interfaz local del router.

Destino IP final:        8.8.8.8
Siguiente salto local:   192.168.1.1
ARP pregunta por:        192.168.1.1
MAC usada en la trama:   la MAC del router
ARP resuelve la dirección del siguiente salto en la red local, no necesariamente la del destino final del paquete.

¿Qué es la tabla o caché ARP?

Consultar ARP cada vez generaría tráfico innecesario. Por eso los sistemas mantienen una tabla temporal con las asociaciones aprendidas. Las entradas dinámicas caducan o se actualizan según el sistema operativo.

Dirección IPv4Dirección MACInterfazTipo
192.168.1.13C:52:82:11:22:33EthernetDinámica
192.168.1.20AA:BB:CC:DD:EE:FFEthernetDinámica

Comandos para consultar la tabla

Windows
arp -a

Linux
ip neigh show

macOS
arp -a

El comando muestra lo que el equipo conoce en ese momento. Si acabas de iniciar el sistema, la tabla puede estar casi vacía. Tras hacer ping a otro dispositivo local, normalmente aparecerá una nueva asociación.

Campos principales de un paquete ARP

En Ethernet con IPv4, el mensaje ARP contiene la información necesaria para identificar el tipo de red, el protocolo, la operación y las direcciones del emisor y del objetivo.

HTYPETipo de hardware. Ethernet = 1.
PTYPEProtocolo. IPv4 = 0x0800.
HLENLongitud MAC: 6 bytes.
PLENLongitud IPv4: 4 bytes.
OPEROperación: 1 para Request y 2 para Reply.
SHA + SPADirecciones MAC e IP del emisor.
THA + TPADirecciones MAC e IP del objetivo.

EtherType 0x0806 pertenece a la cabecera Ethernet, no al mensaje ARP. No lo confundas con PTYPE 0x0800, que indica que se está resolviendo una dirección IPv4. En una petición, la MAC del objetivo todavía no se conoce: precisamente ese es el dato que se intenta obtener.



Ejemplo guiado

Del primer envío a una entrada en la caché

Partimos de dos equipos en la misma VLAN y subred. La caché de A no contiene una asociación para B. Las direcciones MAC de este ejemplo son ilustrativas.

DispositivoIPv4 / prefijoMAC
Equipo A192.168.1.10/2400:11:22:33:44:55
Equipo B192.168.1.20/24AA:BB:CC:DD:EE:FF
  1. Elegir la ruta: B es un vecino directamente alcanzable en 192.168.1.0/24.
  2. Consultar la caché: A todavía no conoce la MAC de .20.
  3. Resolver: A emite la petición; B devuelve su asociación IP–MAC.
  4. Enviar: A utiliza la MAC aprendida para la trama que transporta su paquete IPv4.
MomentoIP consultada / destinoMAC Ethernet de destino
Petición ARP de AConsulta por 192.168.1.20FF:FF:FF:FF:FF:FF
Respuesta ARP de BInforma a 192.168.1.1000:11:22:33:44:55
Datos IPv4 de ADestino IP: 192.168.1.20AA:BB:CC:DD:EE:FF
Resultado en A: una asociación dinámica para 192.168.1.20 con AA:BB:CC:DD:EE:FF. ARP ha permitido preparar la entrega local de los datos.

Ejercicios de ARP: de sencillo a avanzado

Antes de abrir cada solución, apunta tres cosas: destino IP del paquete, IP del siguiente salto y MAC que necesita la trama. Suponemos una red convencional sin Proxy ARP, rutas especiales ni direcciones duplicadas.

Nivel 1 · Identificar

Ejercicio 1: ¿Qué dato falta?

Tu ordenador conoce la IP 192.168.1.20, situada en su misma red Ethernet, pero no tiene una entrada ARP válida. ¿Qué busca y cómo pregunta?

Mostrar solución razonada

Busca la MAC asociada a 192.168.1.20. Envía una petición inicial ARP Request con MAC Ethernet de destino FF:FF:FF:FF:FF:FF. La respuesta normal llega por unicast.

Nivel 2 · Misma subred

Ejercicio 2: De un ordenador a una impresora

El PC tiene 192.168.1.10/24 y la impresora 192.168.1.50/24. No hay aislamiento entre ellos. ¿Por qué IP pregunta ARP?

Mostrar solución razonada

Ambos pertenecen a 192.168.1.0/24. La entrega es directa y ARP pregunta por 192.168.1.50. La trama de datos llevará la MAC de la impresora.

Nivel 3 · Otra red

Ejercicio 3: Acceder a un servidor externo

El PC es 192.168.1.10/24, su gateway 192.168.1.1 y el destino 203.0.113.20, una IP de documentación. Solo existe la ruta local y la predeterminada. ¿Qué MAC necesita?

Mostrar solución razonada

Necesita la MAC de 192.168.1.1. La IP de destino del paquete sigue siendo 203.0.113.20, pero la MAC de destino de la primera trama es la del router. No se consulta por ARP la MAC del servidor remoto.

Nivel 4 · La máscara importa

Ejercicio 4: Parecen vecinos, pero no lo son

El PC tiene 192.168.1.10/26, el destino es 192.168.1.70 y la puerta de enlace 192.168.1.1. ¿La coincidencia de los tres primeros octetos basta?

Mostrar solución razonada

No. Una /26 forma bloques de 64 direcciones. El PC está en 192.168.1.0/26 (.0 a .63) y .70 pertenece a 192.168.1.64/26 (.64 a .127). En este escenario, ARP busca la MAC del gateway .1. La máscara decide dónde termina la subred.

Nivel 5 · Interpretar la caché

Ejercicio 5: El segundo envío

Después de comunicarse con .20, el PC conserva una asociación válida 192.168.1.20 → AA:BB:CC:DD:EE:FF. ¿Debe repetir el broadcast para cada paquete?

Mostrar solución razonada

No. Puede reutilizar la asociación válida. La comprobación o renovación de una entrada depende del sistema y de su estado; no existe una petición broadcast obligatoria por cada paquete.

Nivel 6 · Diagnóstico

Ejercicio 6: ARP funciona y ping falla

La captura muestra un ARP Reply del vecino y su MAC aparece en la tabla, pero no hay respuesta al ping. ¿Demuestra eso que ARP está fallando?

Mostrar solución razonada

No. La resolución de la dirección se ha completado. El vecino puede filtrar ICMP, por ejemplo. Hay que distinguir la resolución ARP de la respuesta de protocolos superiores y revisar la conectividad y las reglas del equipo.

Si el ejercicio de la máscara te cuesta, repasa la guía de subnetting IPv4 paso a paso.

Simulador: ¿por quién pregunta ARP?

Elige un destino y el estado de la caché. El equipo de origen es 192.168.1.10/24 y su gateway 192.168.1.1. El modelo supone una ruta local y una predeterminada, sin otras rutas.

Ejemplo inicial: para llegar a 192.168.1.20 sin asociación en caché, A pregunta por esa IPv4 mediante broadcast y aprende la MAC del vecino antes de enviar los datos.

Simulación didáctica con direcciones de ejemplo; no envía tráfico ni consulta tu red.


Laboratorio práctico: observar ARP en tu equipo

Puedes comprobar el proceso con dos equipos de la misma red o con tu ordenador y el router. Utiliza únicamente dispositivos y redes que controles.

Inicia la captura antes del pingAbre Wireshark, selecciona la interfaz que realmente conecta a esa red e inicia la captura. Usa arp como filtro de visualización.
Consulta la tabla inicialEjecuta arp -a en Windows o macOS, o ip neigh show en Linux.
Localiza una IP de tu redLa puerta de enlace es un objetivo sencillo. En muchas redes domésticas puede ser 192.168.1.1, aunque debes comprobar la tuya.
Genera tráficoEjecuta un ping a esa IP. El sistema necesitará conocer su MAC antes de enviar la trama.
Consulta de nuevo la tablaCompara el resultado y busca la nueva relación IP–MAC.
Revisa y detén la capturaBusca el Request y el Reply correspondientes al objetivo. Compara la MAC de la respuesta con la tabla de vecinos.
Si no aparece una petición: puede que la asociación ya estuviera en la caché. Usa otro dispositivo autorizado que aún no figure en ella o espera a que la entrada necesite renovarse. Un ping no obliga a generar un ARP nuevo si ya existe una asociación utilizable.

Qué debes localizar en Wireshark

Filtro de visualización: arp

Request: Who has 192.168.1.20? Tell 192.168.1.10
Reply:   192.168.1.20 is at aa:bb:cc:dd:ee:ff

ARP gratuito y Proxy ARP

Gratuitous ARP o ARP gratuito

Un dispositivo anuncia su propia asociación IP–MAC sin esperar una consulta convencional. Puede servir para actualizar cachés después de un cambio o facilitar mecanismos de alta disponibilidad. Conviene distinguir el ARP Probe, que comprueba una IP candidata usando 0.0.0.0 como IP de origen, del ARP Announcement, que anuncia una dirección ya elegida. La detección de conflictos se detalla en RFC 5227.

Proxy ARP

Un router u otro equipo responde a una petición ARP en nombre de otro dispositivo. El solicitante cree que el destino es alcanzable directamente mediante la MAC recibida, mientras el equipo que respondió se encarga de reenviar el tráfico.

No confundas ARP con RARP. RARP buscaba obtener una dirección IP a partir de una MAC. Fue sustituido en la práctica por soluciones posteriores como BOOTP y DHCP.

ARP spoofing: el punto débil del protocolo

ARP fue diseñado para una red donde se confiaba en los participantes y no incorpora autenticación. Un atacante situado en la misma red local puede enviar respuestas falsas para asociar una IP legítima —por ejemplo, la del router— con su propia MAC.

Esta manipulación, conocida como ARP spoofing o ARP poisoning, puede provocar interceptación de tráfico, ataques de intermediario o denegación de servicio.

MedidaQué aporta
Dynamic ARP InspectionValida respuestas ARP en switches administrables usando información confiable.
DHCP SnoopingCrea una base de asociaciones legítimas que puede usar DAI.
Segmentación con VLANReduce el tamaño del dominio de broadcast y el alcance del ataque.
MonitorizaciónDetecta cambios inesperados o duplicados en las asociaciones IP–MAC.
Protocolos cifradosHTTPS, SSH o VPN ayudan a proteger el contenido aunque el tráfico sea interceptado.
Una entrada estática no es una solución universal. Puede ser útil en casos muy concretos, pero administrarla en una red grande resulta difícil y no sustituye a los controles del switch.

¿Se utiliza ARP en IPv6?

No. IPv6 realiza la resolución de vecinos mediante Neighbor Discovery Protocol o NDP, definido sobre ICMPv6. NDP cubre funciones equivalentes y añade otras, como el descubrimiento de routers y la detección de vecinos inaccesibles.

Por eso no debes buscar una “tabla ARP de IPv6”. En Linux se consulta normalmente con ip -6 neigh y en macOS con ndp -a.


Errores frecuentes al estudiar ARP

Decir que ARP convierte una IP en una MAC

Es una simplificación útil, pero más preciso es decir que descubre y mantiene una asociación. La dirección IP no se transforma matemáticamente en una MAC.

Pensar que el Request atraviesa routers

La petición es broadcast dentro del enlace local. Un router no la reenvía a otras redes.

Buscar la MAC del servidor remoto

Si el destino no está en la misma subred, el equipo necesita la MAC de la puerta de enlace, no la del servidor final.

Confundir broadcast con unicast

El Request suele enviarse a todos mediante broadcast. El Reply normalmente regresa directamente al solicitante mediante unicast.

Creer que la caché es permanente

Las entradas aprendidas dinámicamente tienen una duración limitada y pueden actualizarse.

Prueba rápida sobre ARP

1. ¿Qué dato busca normalmente ARP cuando ya conoce una IPv4?

La dirección MAC asociada a esa IPv4 dentro del enlace local.

2. ¿A qué MAC se envía un ARP Request?

A la dirección de broadcast Ethernet FF:FF:FF:FF:FF:FF.

3. Si el destino está en Internet, ¿por qué IP pregunta ARP?

Por la IP del siguiente salto local, normalmente la puerta de enlace predeterminada.

4. ¿Qué comando muestra la tabla de vecinos en Linux?

ip neigh show.

5. ¿Qué protocolo sustituye esta función en IPv6?

Neighbor Discovery Protocol, basado en ICMPv6.

Preguntas frecuentes sobre el protocolo ARP

¿ARP utiliza un puerto TCP o UDP?

No. ARP no funciona sobre TCP ni UDP y, por tanto, no utiliza números de puerto. Sus mensajes se encapsulan directamente en tramas del enlace.

¿Qué diferencia existe entre ARP Request y ARP Reply?

El Request pregunta quién posee una dirección de protocolo concreta. El Reply comunica la dirección hardware correspondiente.

¿Para qué sirve la caché ARP?

Evita repetir peticiones continuamente. Guarda durante un tiempo las asociaciones IP–MAC que el equipo ha aprendido.

¿Puede haber ARP en una red Wi‑Fi?

Sí. En una red Wi‑Fi IPv4 también es necesario resolver direcciones del enlace para alcanzar vecinos locales.

¿Qué significa EtherType 0x0806?

Es el valor del campo EtherType de Ethernet que identifica que la carga transportada es un mensaje ARP.

¿ARP busca la MAC del servidor cuando navego por Internet?

Normalmente busca la MAC de la puerta de enlace local, porque el servidor está en otra red. La tabla de rutas decide primero el siguiente salto; ARP resuelve su IPv4 en el enlace actual.

¿Qué diferencia hay entre ARP, DNS y DHCP?

ARP relaciona IPv4 y MAC en el enlace local. DNS resuelve nombres, como los de las webs, en registros de direcciones y otros datos. DHCP proporciona configuración de red, como IP, máscara y puerta de enlace.

ARP se entiende mejor junto a la capa 2: tramas y direcciones MAC, la capa 3: rutas y direcciones IP y las VLAN que delimitan la difusión local.


Conclusión

ARP trabaja casi siempre sin que el usuario lo note, pero es imprescindible para la comunicación IPv4 en una red local. Cuando un equipo conoce una IP y necesita enviar una trama, consulta su caché; si no encuentra la asociación, pregunta por broadcast, recibe una respuesta y guarda la relación IP–MAC.

La clave para comprenderlo es separar dos decisiones: primero se determina el siguiente salto consultando la tabla de rutas; después ARP descubre qué MAC permite alcanzar ese siguiente salto en el enlace actual.

La IP decide hacia dónde debe viajar el paquete; ARP descubre a qué dirección física debe entregarse en el siguiente tramo.

Fuentes y material de referencia

Sigue aprendiendo redes conmigo

Recibe los nuevos tutoriales y laboratorios de Network Technology Blog en tu correo.

Al suscribirte, recibirás las nuevas publicaciones por correo. Confirma tu suscripción desde el mensaje que recibirás. Puedes darte de baja cuando quieras desde cualquier correo.

¿Te resulta útil NTB? Invítame a un café.

Comentarios

3 respuestas a «Protocolo ARP: qué es y cómo relaciona direcciones IP y MAC»

  1. […] Puedes repasarlo con la entrada: Protocolo ARP: qué es y cómo relaciona direcciones IP y MAC. […]

  2. […] Para ver cómo encaja con el resto de niveles, repasa la guía general del modelo OSI y TCP/IP. Después puedes continuar con conceptos de enlace como ARP y la relación entre IPv4 y MAC. […]

Deja una respuesta