Subject: Re: User-level ARP handling
To: None <thorpej@nas.nasa.gov>
From: Ignatios Souvatzis <ignatios@cs.uni-bonn.de>
List: tech-net
Date: 09/02/1996 10:59:40
Jason Thorpe wrote:

   Umm .. I don't see why we'd need an "ARP socket" ... arp(8) already uses 
   the routing socket to add and delete ARP entries (they are just routes, 
   after all :-)

You don't need an ARP socket to get RTM_MISS messages and add the
routes, this would be done through routing sockets. You need it to get
the actual ARP packets in and out; else you have to do BPF, which is
ugly (you see it in the rarpd code, which is hardwired to RARP over
Ethernet, and will look even uglier once support for ARCnet and AX25
is added.)

    > Now, one final note: despite all the above, I don't really like the
    > notion of moving ARP out into user-land.  It feels too much like
    > something that really belongs in the Ethernet device drivers, and was
    > pulled out of them only to improve code sharing...and then got re-used
    > for similar address resolution protocols on other media.

   The only thing that really bothers me about moving ARP into userland is 
   that one would have to actually start the ARP daemon in order to be able 
   to use the network ... not really a biggie, but in some circumstances, 
   it's really nice to be able to boot into single-user mode (maybe off of a 
   floppy), just ifconfig the interface, and go... I don't want to have to 
   rely on an ARP daemon or /usr/sbin/arp ...

   ...or, did I miss something?

Make it /sbin/arp. :-)

Regards,
	Ignatios