MAC y ARP: dos piezas distintas del mismo problema
En una red IPv4 sobre Ethernet aparecen dos tipos de dirección con funciones diferentes. La dirección IP identifica una interfaz dentro del esquema lógico de Capa 3; la dirección MAC se utiliza para entregar tramas dentro del enlace Ethernet local.
ARP (Address Resolution Protocol) conecta ambos mundos: permite que un nodo que conoce una dirección IPv4 de un vecino averigüe qué dirección de enlace debe utilizar para enviarle una trama.
Qué es una dirección MAC
En Ethernet es habitual utilizar identificadores de 48 bits, representados como seis grupos hexadecimales. Por ejemplo: 00:1c:42:7a:10:ff. IEEE gestiona bloques de identificadores EUI que los fabricantes pueden utilizar para asignar direcciones.
Sin embargo, “MAC” no significa necesariamente “identificador grabado para siempre en el hardware”. Existen direcciones localmente administradas y sistemas que pueden cambiar o aleatorizar la dirección presentada en una interfaz. Por eso una MAC debe entenderse como un identificador de enlace, no como una identidad absoluta del dispositivo o de la persona que lo usa.
| Tipo | Uso |
|---|---|
| Unicast | Identifica una interfaz concreta dentro del ámbito de Capa 2. |
| Multicast | Identifica un grupo de receptores. |
| Broadcast | ff:ff:ff:ff:ff:ff, todos los nodos del dominio de broadcast. |
Cuándo necesita ARP un equipo IPv4
Supón un host con IP 192.168.10.20/24 y puerta de enlace 192.168.10.1.
Destino 192.168.10.80
Está dentro de 192.168.10.0/24. El host necesita resolver la MAC asociada a 192.168.10.80.
Destino 8.8.8.8
Está fuera de la subred local. El host no busca por ARP la MAC de 8.8.8.8; resuelve la MAC de 192.168.10.1 y entrega la trama al gateway.
La decisión “local o remoto” depende del prefijo y máscara. ARP entra después, cuando ya se sabe qué siguiente salto debe recibir la trama.
ARP Request y ARP Reply paso a paso
- El host consulta su caché ARP para comprobar si ya conoce la asociación IPv4 ↔ MAC.
- Si no la conoce, envía una ARP Request dentro de una trama broadcast Ethernet.
- La petición incluye la IPv4 objetivo: en esencia pregunta quién utiliza esa dirección.
- El nodo que posee esa IPv4 responde con una ARP Reply, normalmente dirigida al solicitante.
- El solicitante guarda temporalmente la asociación y ya puede construir la trama Ethernet hacia esa MAC.
ARP opera en el enlace local. Los routers no reenvían una petición ARP broadcast a Internet. Cada segmento resuelve sus propios vecinos y siguientes saltos.
Qué información contiene un mensaje ARP
El formato definido por RFC 826 incluye campos para describir el tipo de hardware y protocolo, la longitud de sus direcciones, la operación y las direcciones del emisor y del objetivo.
| Campo conceptual | Para qué sirve |
|---|---|
| Hardware type | Identifica el tipo de red de enlace. |
| Protocol type | Identifica el protocolo de red cuya dirección se está resolviendo. |
| HLEN / PLEN | Indican la longitud de las direcciones de hardware y protocolo. |
| Operation | Distingue, entre otras operaciones, petición y respuesta. |
| Sender addresses | Dirección de hardware y protocolo del emisor. |
| Target addresses | Dirección de hardware y protocolo del objetivo. |
En el caso cotidiano de IPv4 sobre Ethernet, esto permite transportar pares de dirección IPv4 y dirección MAC.
La caché o tabla ARP
Resolver cada paquete mediante broadcast sería ineficiente. Los sistemas mantienen una caché ARP con asociaciones aprendidas recientemente. Esas entradas pueden caducar, actualizarse o estar configuradas de forma estática según el sistema operativo.
Los nombres de comandos cambian entre plataformas. En muchos sistemas puedes inspeccionar vecinos con herramientas como arp o ip neigh. Más adelante, la guía de comandos de red agrupará los equivalentes de Windows, Linux y macOS.
Gratuitous ARP y Proxy ARP
Además de la resolución básica existen usos adicionales:
- Gratuitous ARP: un equipo anuncia o consulta información sobre su propia dirección IPv4. Puede ayudar a actualizar cachés, detectar conflictos o acompañar procesos de alta disponibilidad.
- Proxy ARP: un dispositivo responde a ARP en nombre de otra dirección, haciendo que el solicitante entregue tráfico al proxy como si el destino estuviera directamente alcanzable en el enlace.
Son mecanismos útiles en escenarios concretos, pero no sustituyen un diseño de direccionamiento y routing bien entendido.
ARP spoofing y por qué ARP necesita protección
ARP fue diseñado para un entorno de confianza y no incorpora autenticación criptográfica de las asociaciones que anuncia. Un atacante dentro del mismo dominio de Capa 2 puede intentar enviar información ARP falsa para asociar una IPv4 legítima —por ejemplo la puerta de enlace— con otra MAC.
Ese problema se conoce como ARP spoofing/poisoning y puede utilizarse para desviar o interrumpir tráfico. Las defensas dependen del entorno: segmentación adecuada, controles de acceso, inspección ARP dinámica en equipos que la soportan, DHCP snooping como fuente de confianza y protección física/lógica del acceso a la LAN.
No conviene “solucionarlo” llenando toda una red de entradas ARP estáticas: eso introduce problemas operativos y no escala en la mayoría de entornos.
ARP no es lo mismo que la tabla MAC del switch
Es muy frecuente mezclar dos tablas distintas:
| Tabla | La mantiene | Relaciona | Para qué se usa |
|---|---|---|---|
| ARP/vecinos IPv4 | Hosts y routers | IPv4 ↔ MAC | Construir la trama hacia un vecino o siguiente salto. |
| Tabla MAC/CAM | Switch | MAC ↔ puerto/VLAN | Decidir por qué puerto reenviar una trama Ethernet. |
El host puede saber que 192.168.10.1 corresponde a una MAC concreta, mientras que el switch aprende por qué puerto alcanza esa MAC. Son problemas complementarios en capas distintas de la entrega local.
IPv6 no utiliza ARP
IPv6 no usa ARP. La resolución de direcciones de enlace y varias funciones adicionales se integran en Neighbor Discovery (ND), definido sobre ICMPv6. ND permite descubrir vecinos, routers y parámetros del enlace, mantener información de alcanzabilidad y realizar detección de direcciones duplicadas.
Por eso no debes buscar una “tabla ARP IPv6” en sentido estricto. Los sistemas suelen mostrar una tabla de vecinos que puede contener estados y entradas aprendidas mediante Neighbor Discovery.
La diferencia completa se desarrolla en la guía de IPv6.
Ejemplo completo: enviar tráfico a Internet
Un portátil tiene 192.168.50.25/24 y gateway 192.168.50.1. Quiere enviar un paquete a 203.0.113.20.
- Con su /24 determina que
203.0.113.20no pertenece a la red local. - Consulta la tabla de routing y selecciona la puerta de enlace
192.168.50.1. - Busca en su caché ARP la MAC de
192.168.50.1. - Si no existe, envía una ARP Request y aprende la MAC del router.
- Construye una trama Ethernet con MAC destino = MAC del gateway.
- Dentro de la trama, el paquete IP continúa teniendo como destino
203.0.113.20. - El router retira la cabecera de enlace, toma una decisión de routing y crea una nueva encapsulación apropiada para el siguiente enlace.
Este ejemplo une Ethernet, ARP, direccionamiento y routing sin confundir las direcciones de cada capa.
Qué estudiar después de MAC y ARP
- IPv6 para comparar ARP con Neighbor Discovery.
- Direccionamiento IP para dominar la decisión local/remoto.
- Subnetting para entender cómo los prefijos definen los dominios IP.
- Protocolos de red para situar ARP dentro del conjunto de protocolos usados por una red.