The differences between ARP and RARP:
Address Resolution Protocol (ARP) is utilized for mapping IP network address to the hardware address that uses data link protocol.
Reverse Address Resolution Protocol (RARP) is a protocol using which a physical machine in a LAN could request to find its IP address from ARP table or cache from a gateway server.
IP address of destination to physical address conversion is done by ARP, by broadcasting in LAN.
Physical address of source to IP address conversion is done by RARP.
ARP associates 32 bit IP address with 48 bit physical address.
Allowing a host to discover its internet address after knowing only its physical address is done by RARP.