Share via


Address Resolution Protocol

A version of this page is also available for

Windows Embedded CE 6.0 R3

4/8/2010

Address Resolution Protocol (ARP) performs IPv4 address-to-Media Access Control (MAC) address resolution for outgoing packets. As each outgoing IP datagram is encapsulated in a frame, source and destination MAC addresses must be added. Determining the destination MAC address for each frame is the responsibility of ARP.

ARP translates IP addresses to network interface hardware addresses. Each network interface has a unique hardware address. Address resolution maps a host IP address to its unique network interface hardware address. An ARP request is sent to the network; the node that has the IP address returns its hardware address.

Note

ARP is used to refer to the process of finding the hardware address and its opposite, Reverse Address Resolution Protocol (RARP). RARP finds the IP address using the hardware address. ARP is transparent to Winsock applications, but when address resolution fails, it usually causes a Winsock function error.

ARP compares the destination IP address on every outbound IP datagram to the ARP cache for the NIC that frame will be sent through. If there is a matching entry, then the MAC address is retrieved from the cache. If not, ARP broadcasts an ARP Request Packet on the local subnet, requesting that the owner of the IP address in question reply with its MAC address. If the packet is going through a router, ARP resolves the MAC address for that next-hop router rather than the final destination host. When an ARP reply is received, the ARP cache is updated with the new information, and the new information is used to address the packet at the link layer.

In Windows CE 3.0 and later, the time-out value for the ARP cache is 2 minutes. You cannot change this default behavior.

Windows-based desktop OS provide a utility that allows you to add, delete, or view entries in an ARP table. Windows Embedded CE does not provide this utility; however, ISVs, OEMs, and others can implement such a utility by using the Winsock interface and IP Helper APIs.

For information about IPv6 Address Resolution and determining neighboring nodes on IPv6, see Neighbor Discovery (ND).

See Also

Tasks

Core Protocols of IPv4

Concepts

Internet Protocol Helper APIs
Winsock 2.2