Search code examples
network-programmingcommunicationmac-addressarp

Why do we need Address Resolution Protocol?


I understand the mechanism of ARP but I am wondering why do we use it even if we have the recipient's IP address? Isn't it enough to rely on the recipient's IP address to send packets instead of taking extra steps of finding its matching MAC address?

Thank you.


Solution

  • An IP address is a layer-3 address. Layer-3 packets get encapsulated into layer-2 frames, and layer-2 also has addressing (MAC addresses) which needs to be supplied. ARP (Address Resolution Protocol) resolves the layer-3 IP address to a layer-2 MAC address so that the layer-3 packet can be encapsulated into a layer-2 frame which is then sent out the layer-1 interface.