What happens when a computer does not know its IP address since, for example, it doesn’t have the possibility to store it? In a case like this, the Reverse Address Resolution Protocol (RARP) can be helpful, as it is a protocol for the reverse request for addresses. In this way, RARP is the counterpart of the Address Resolution Protocol (ARP).
Although the Reverse ARP has fallen into disuse, since new protocols such as Bootstrap (BOOTP) or Dynamic Host Configuration (DHCP) have replaced it, knowing this older technology is also useful. On the one hand, even today, you can find applications that work with RARP. On the other hand, knowing the previous technologies helps to a better understanding of emerging technologies.
First, RARP is a protocol that was published in 1984 and included in the TCP / IP protocol stack. RARP is in the network access layer (the most basic and elementary level of the stack) and thus represents a technology that allows transmission between two points within a network. Each user of a network has two (more or less) unique addresses: a logical one, the IP address, and a physical one, the MAC (Media Access Control) address. While the IP address is determined by the software, the MAC address is linked to the hardware and is obtained from the network card provided by the manufacturer.
It may be the case that one does not know his or her IP address, for example, because the device in question does not have its own storagein which to store said address. In this type of situations the Reverse ARP protocol comes into play. Based on the known MAC address, the protocol can determine the device’s IP address. Therefore, it serves a different purpose than the ARP protocol. In this last protocol the IP address is known and with the help of ARP the hardware address is determined.
How does Reverse Address Resolution Protocol work?
Who can know the IP address of a user on the network, if he does not know it himself? The answer: a specialized RARP server. This server, which response to RARP requests, can also be a simple computer connected to the network. However, you must have all MAC addresses associated with the IP addresses saved. When a network user sends a RARP request to the system, only such a server will be able to respond to it.
Since the requesting user does not know his IP address, he must send the data packet (the request) to the lower layers of the network as broadcast. It means that the package will send to all users at the same time. However, only the RARP server responds. If there are several answers, the applicant only uses the first answer that arrives. The request and response formats are very similar in their construction, something that already happens in ARP Working.
Problems with RARP:
The RARP has some disadvantages that have made it eventually replaced by a newer one. For example, to use the protocol correctly, the RARP server must be on the same physical network. The computer sends the RARP request to the lowest level of the network layer. Therefore, it difficult for a router to transmit the packet. Besides, RARP is not able to manage sub-netting, since no subnet mask can send. For suppose, the network is divided into multiple subnets; in each of them, there must be a RARP server available.
Also, with the request, the user only knows what his IP address is. As we have already mentioned above, it does not include a subnet mask, nor does it allow obtaining information about the gateway.
Therefore, it is not possible to configure the computer in a new network. These inconveniences are those that have finally led to the development of BOOTP and DHCP.