299
ï‚· Target protocol address: This field specifies the protocol address of the device the message is being
sent to.
ARP operation
Suppose that Host A and Host B are on the same subnet and Host A sends a packet to Host B, as shown
in Figure 266. The resolution process is as follows:
ï‚· Host A looks into its ARP table to see whether there is an ARP entry for Host B. If yes, Host A uses
the MAC address in the entry to encapsulate the IP packet into a data link layer frame and sends
the frame to Host B.
ï‚· If Host A finds no entry for Host B, Host A buffers the packet and broadcasts an ARP request, in
which the sender IP address and the sender MAC address are the IP address and the MAC address
of Host A respectively, and the target IP address and the target MAC address are the IP address of
Host B and an all-zero MAC address respectively. Because the ARP request is a broadcast, all hosts
on this subnet can receive the request, but only the requested host (Host B) will respond to the
request.
ï‚· Host B compares its own IP address with the destination IP address in the ARP request. If they are the
same, Host B saves the source IP address and source MAC address in its ARP table, encapsulates
its MAC address into an ARP reply, and unicasts the reply to Host A.
ï‚· After receiving the ARP reply, Host A adds the MAC address of Host B to its ARP table. Meanwhile,
Host A encapsulates the IP packet and sends it out.
Figure 266 ARP address resolution process
If Host A is not on the same subnet with Host B, Host A first sends an ARP request to the gateway. The
target IP address in the ARP request is the IP address of the gateway. After obtaining the MAC address
of the gateway from an ARP reply, Host A sends the packet to the gateway. If the gateway maintains the
ARP entry of Host B, it forwards the packet to Host B directly; if not, it broadcasts an ARP request, in which
the target IP address is the IP address of Host B. After obtaining the MAC address of Host B, the gateway
sends the packet to Host B.
ARP table
After obtaining the MAC address for the destination host, the device puts the IP-to-MAC mapping into its
own ARP table. This mapping is used for forwarding packets with the same destination in future.
An ARP table contains ARP entries, which fall into one of two categories: dynamic or static.