ARP (Address Resolution Protocol)
El Protocolo de Resolución de Direcciones (ARP) es un protocolo fundamental en las redes TCP/IP, especialmente en entornos Ethernet. Su función principal es resolver direcciones lógicas (IP) a direcciones físicas (MAC). En otras palabras, ARP permite que un dispositivo que conoce la dirección IP de otro dispositivo en la misma red local pueda descubrir su dirección MAC, que es necesaria para la entrega directa de tramas en la Capa 2.
El proceso de ARP se puede dividir en dos mensajes principales:
ARP Request (Solicitud ARP):
-
Un dispositivo (el remitente) necesita la dirección MAC de otro dispositivo (el objetivo) cuya IP conoce.
-
El remitente crea una solicitud ARP que contiene su propia dirección MAC e IP, y la dirección IP del objetivo. La dirección MAC de destino en la solicitud se establece como la dirección MAC de broadcast (
FF:FF:FF:FF:FF:FF). -
Esta solicitud se encapsula en una trama Ethernet y se envía a todos los dispositivos en el segmento de red local.
-
En pocas palabras: “¡Hola a todos! ¿Quién tiene la dirección IP
192.168.1.10? Por favor, díganme su dirección MAC, mi MAC esAA:BB:CC:DD:EE:FF.”
ARP Reply (Respuesta ARP):
-
Cuando el dispositivo objetivo que posee la dirección IP solicitada recibe el ARP Request (porque es de broadcast), reconoce su propia IP en la solicitud.
-
El dispositivo objetivo crea una respuesta ARP que contiene su propia dirección MAC y su dirección IP. Esta respuesta se envía directamente (unicast) a la dirección MAC del remitente original (que se obtuvo del ARP Request).
-
En pocas palabras: “¡Soy yo! Mi dirección MAC es
11:22:33:44:55:66.”
Para evitar tener que enviar un ARP Request cada vez que se necesita la dirección MAC de un dispositivo, los sistemas operativos mantienen una caché ARP. Esta caché es una tabla temporal que almacena las asignaciones de IP a MAC que se han aprendido recientemente. Cada dirección MAC se borra de esta tabla después de 5 min de inactividad.
Debido a su naturaleza basada en la confianza y el broadcast, ARP es vulnerable a ataques como el ARP Spoofing o ARP Poisoning. En estos ataques, un atacante envía ARP Replies falsificados para asociar su propia dirección MAC con la dirección IP de otro dispositivo (como la puerta de enlace predeterminada o un servidor), interceptando así el tráfico.