Lesson 10 | ARP and RARP |
Objective | Address Resolution Protocol and Reverse Address Resolution Protocol |
Purpose of Address Resolution Protocol
What is the purpose of Address Resolution Protocol and Reverse Address Resolution Protocol?
ARP is used to mediate between ethernet (or other broadcast link-level protocols) and the network layer, or IP protocols. Put more simply, ARP converts IP addresses to ethernet addresses.
Why ARP is necessary
ARP is necessary because the underlying ethernet hardware communicates using ethernet addresses, not IP addresses.
Suppose that one machine, with IP address 2 on an ethernet network, wants to speak to another machine on the same network with IP address 8.
The two machines use ARP to conduct the following dialogue:
- ARP Request - Machine 1: (IP=2) broadcasts to all machines on the network:
Question: Who has IP address 8?
- ARP Reply - Machine 2 (IP=8) replies: I do.
The reply of Machine 2 contains its ethernet address, so now Machine 1 knows it.
Machine 1 stashes that address temporarily in a
kernel memory area called the ARP cache. That way, if it needs to speak to Machine 2 again soon, it does not have to repeat the ARP request.
TCP/IP Illustration
The (ARP) Address Resolution Protocol feature performs a required function in IP routing. ARP finds the hardware address, also known as (MAC) Media Access Contro address, of a host from its known IP address and maintains a cache (table) in which MAC addresses are mapped to IP addresses. ARP is part of all Cisco systems that run IP. The ARP feature for IP routing and the optional ARP feature you can configure, such as static ARP entries, timeout for dynamic ARP entries, clearing the cache, and proxy ARP
are part of its standard feature set.
ARP Advice
Sometimes, ARP is the easiest way to find a machine's ethernet address. For example, the Solaris ifconfig
command will not tell you a device's ethernet address, but viewing the ARP cache on the machine will show it to you.
The arp command
The arp
command enables you to view the ARP cache, as well as to forcibly add and delete entries.
We will experiment with arp
in the next exercise, after a brief discussion of the (RARP) Reverse Address Resolution Protocol.
RARP
RARP is used for the opposite purpose; namely, to convert an ethernet address to an IP address. Its purpose is to enable diskless machines, such as X workstations, to find out their IP address at boot time.
Such a machine broadcasts a reverse-ARP request, such as: RARP request My ethernet address is such and such, what should my IP address be?
Answer: RARP reply
Your IP address is
3ffe:1900:4545:3:200:f8ff:fe21:67cf
The RARP reply must come from an RARP server, which contains a file (/etc/ethers) listing the mapping from ethernet addresses to IP addresses.
Address Resolution Protocol - Quiz