ARP Extension - UNARP
RFC 1868

Document Type RFC - Experimental (November 1995; No errata)
Was draft-malkin-unarp (individual)
Last updated 2013-03-02
Stream Legacy
Formats plain text pdf html
Stream Legacy state (None)
Document shepherd No shepherd assigned
IESG IESG state RFC 1868 (Experimental)
Telechat date
Responsible AD (None)
Send notices to (None)
Network Working Group                                          G. Malkin
Request For Comments: 1868                                Xylogics, Inc.
Category: Experimental                                     November 1995

                         ARP Extension - UNARP

Status of this Memo

   This memo defines an Experimental Protocol for the Internet
   community.  This memo does not specify an Internet standard of any
   kind.  Discussion and suggestions for improvement are requested.
   Distribution of this memo is unlimited.


   The Address Resolution Protocol allows an IP node to determine the
   hardware (datalink) address of a neighboring node on a broadcast
   network.  The protocol depends on timers to age away old ARP entries.
   This document specifies a trivial modification to the ARP mechanism,
   not the packet format, which allows a node to announce that it is
   leaving the network and that all other nodes should modify their ARP
   tables accordingly.


   Thanks to James Carlson/Xylogics for reviewing this document and
   proposing the backwards compatibility mechanism.

1. Introduction

   The primary purpose of the Address Resolution Protocol, as defined in
   [1], is to determine a node's hardware address based on its network
   address (protocol address in ARPspeak).  The ARP protocol
   specifically states that nodes should not periodically advertise
   their existence for two reasons: first, this would generate a lot of
   network traffic and table maintenance overhead; second, it is highly
   unlikely that all nodes will need to communicate to all other nodes.
   Since a node does not advertise its existence, neither does it
   advertise its imminent departure.  This is not a serious problem
   since most ARP implementations maintain timers to age away old
   entries, and departing nodes seldom depart gracefully in any case.

   Over time, an additional use has been found for ARP: Proxy ARP.
   While there are those who believe Proxy ARP is an evil thing, it does
   serve a purpose; that is, it allows for communication in ways never
   considered in the original IP architecture.  For example, allows
   dial-in hosts to connect to a network without consuming a large

Malkin                        Experimental                      [Page 1]
RFC 1868                         UNARP                     November 1995

   amount of the IP address space (i.e., all of the hosts contain
   addresses on the same subnet, even though they are not directly
   attached to the physical network associated with that subnet address.
   It is this use of Proxy ARP which produces the problem addressed by
   this document.

2. The Problem

   Consider the following topology:

                    | Host A |
      ======================================== LAN
          |                             |
      +--------+                    +--------+
      |  CS1   |   comm. servers    |  CS2   |
      +--------+                    +--------+
        |    |                        |    |
       +-+  +-+                      +-+  +-+
       | |  | |       modems         | |  | |
       +-+  +-+                      +-+  +-+

   Assume that all of the modems are on the same rotary; that is, when a
   remote host dials in, it may be assigned a modem on either of the
   communication servers.  Further assume that all of the remote hosts'
   IP addresses have the same subnet address as the servers and Host A,
   this in order to conserve address space.

   To begin, a remote host dials into CS1 and attempts to communicate
   with Host A.  Host A will assume, based on the subnet mask, that the
   remote host is actually attached to the LAN and will issue an ARP
   Request to determine its hardware address.  Naturally, the remote
   host will not hear this request.  CS1, knowing this, will respond in
   the remote host's place with its own hardware address.  Host A, on
   receiving the ARP Reply, will then communicate with the remote host,
   transparently through CS1.  So far everything is just fine.

   Now, the remote host disconnects and, before Host A can age its ARP
   cache, reconnects through CS2.  Herein lies the problem.  Whenever
   Host A attempts to send a packet to the remote host, it will send it
   to CS1 because it cannot know that its ARP cache entry is invalid.
   If, when the remote host disconnects, the server to which it was
   attached could inform other nodes on the LAN that the protocol
   address/hardware address mapping was no longer valid, the problem
   would not occur.

Malkin                        Experimental                      [Page 2]
RFC 1868                         UNARP                     November 1995
Show full document text