ARP - Address Resolution Protocol

Woman using laptop in bedroom
Compassionate Eye Foundation/Steven Errico/Digital Vision/Getty Images

ARP (Address Resolution Protocol) converts an Internet Protocol (IP) address to its corresponding physical network address. IP networks including those that run on Ethernet and Wi-Fi require ARP in order to function.

History and Purpose of ARP

ARP was developed in the early 1980s as a general-purpose address translation protocol for IP networks. Besides Ethernet and Wi-Fi, ARP has also been implemented for ATMToken Ring, and other physical network types.

ARP allows a network to manage connections independent of the specific physical device attached to each one. This enabled the Internet Protocol to work more efficiently than if it had to manage addresses of all different kinds of hardware devices and physical networks itself.

How ARP Works

ARP operates at Layer 2 in the OSI model. Protocol support is implemented in the device drivers of network operating systems. Internet RFC 826 documents technical details of the protocol including its packet format and the workings of request and response messages

ARP works on modern Ethernet and Wi-Fi networks as follows:

  • Network adapters are produced with a physical address embedded in the hardware called the Media Access Control (MAC) address. Manufacturers take care to ensure these 6-byte (48-bit) addresses are unique, as IP relies on these unique identifiers for message delivery.
  • When any device wishes to send data to another target device, it must first determine the MAC address of that target given its IP address These IP-to-MAC address mappings are derived from an ARP cache maintained on each device.
  • If the given IP address does not appear in a device's cache, that device cannot direct messages to that target until it obtains a new mapping. To do this, the initiating device first sends an ARP request broadcast message on the local subnet. The host with the given IP address sends an ARP reply in response to the broadcast, allowing the initiating device to update its cache and proceed to deliver messages directly to the target.

Inverse ARP and Reverse ARP

A network protocol called RARP (Reverse ARP) was also developed in the 1980s to complement ARP. As its name implies, RARP performed the opposite function of ARP, converting from physical network addresses to the IP addresses assigned to those devices. RARP was made obsolete by DHCP and is no longer used.

A separate protocol called Inverse ARP also supports the reverse address mapping function. Inverse ARP is not used on Ethernet or Wi-Fi networks either although it can sometimes be found on other types.

Gratuitous ARP

To improve the efficiency of ARP, some networks and network devices use a method of communication called gratuitous ARP where a device broadcasts an ARP request message out to the entire local network to notify the other devices of its existence.