El protocolo ARP es un protocolo de apoyo al nivel de red (Internet Layer) que efectúa la resolución de la dirección IP a la dirección física (dirección MAC en LAN) para los datagramas IP salientes. Está definido en el RFC-826. Existen dos tipos de paquetes ARP (Request y Reply)
Cuando una máquina (que conoce la dirección IP de otra máquina) desea conocer la dirección física de la otra máquina, difunde una trama, que contiene un paquete ARP Request, a todas las máquina conectadas a esa red (broadcast). Con este paquete se solicita a la máquina con dirección IP que responda indicando su dirección física. Todas las máquinas reciben el paquete ARP Request, pero sólamente la máquina que reconoce su dirección IP responde a dicha petición en forma de paquete ARP Reply (encapsulado en otra trama) que contiene su dirección física. Cuando la primera máquina recibe el paquete ARP Reply, usa la dirección física de otra para enviar datagramas IP (encapsulados en tramas), directamente a ella. Para reducir el envío continuo de paquetes ARP por la red, cada máquina mantiene una tabla ARP cache, donde se encuentran parejas de direcciones IP y fisicas que ya conoce mediante dicho sistema.
Cuando una máquina se conecta a una red, envía un paquete ARP request con su dirección IP en el campo dirección IP destino (gratuitous ARP). Con dicho paquete indica al resto de máquinas de la red sus direcciones IP y físicas para que puedan añadirse a la tabla que ya tienen creada.
Además, si alguna máquina comprueba que ambas tienen asignada la misma dirección IP, responderá a dicho paquete cona la detección de duplicidad de direcciones IP dentro de la red.
El protocolo RARP es un protocolo de apoyo al nivel de red (Internet Layer) que efectúa la resolución de la dirección física a la dirección IP. Está definido en el RFC-903. La unidad de datos del protocolo a nivel RARP se denomina paquete RARP, que se encapsula en tramas del nivel de enlace (campo “Tipo de Trama” = 8035H). Existen dos tipos de paquetes RARP (Request y Reply).
Cuando una máquina que conoce su dirección física necesita conocer su dirección IP, difunde una trama que contiene un paquete RARP Request a todas las máquinas de su red (broadcast). Con este paquete se solicita al servidor RARP que tiene la tabla que relaciona direcciones físicas e IP, le corresponde a esa dirección física que respondan indicando su dirección IP. Esto se da en los casos en los que dicha máquina no puede guardar su dirección IP, como máquinas sin unidades de disco, por lo que no pueden generar y guardar dichas tablas que relacionan direcciones físicas e IP de cada máquina de la red a la que pertenecen.