Subject: Re: Forcing an ARP flush from NetBSD box
To: None <netbsd-help@netbsd.org>
From: Wolfgang Rupprecht <wolfgang@wsrcc.com>
List: netbsd-help
Date: 02/18/2000 23:10:15
lainestump@rcn.com (Laine Stump) writes:
> Actually, now that you mention it, I recalled noticing that when I boot a
> machine, it sends out an ARP request for its own IP:
> 01:45:16.464695 0:40:5:a3:a0:26 ff:ff:ff:ff:ff:ff 
>                 0806 60: arp who-has 10.0.20.129 tell 10.0.20.129
> That should accomplish the same thing, shouldn't it? If so, the "program"
> you're looking for is something already done by a machine when it boots
> anyway.

Yup. You managed to capture what is called "a gratuitous arp".  Did
you see that on a netbsd machine???  I just rebooted a -current
machine and failed to see such an arp.  It is done exactly for the
reason you say, to let other machines know that one just appeared on
the scene and to flush any stale state out of other machines' arp
cache.  I like to think of it as the equivalent of the machine
politely coughing as it comes up on the net. ;-)

(Then there is also what I call the "jousting arp".  If some other
machine tries to steal one's IP, one can also send an arp-request for
one's own IP address and re-assert one's stake on that turf.  I
actually see that jousting on the athome cable/ether quite a bit.)
 
-wolfgang
-- 
       Wolfgang Rupprecht <wolfgang+gnus@dailyplanet.wsrcc.com>
		    http://www.wsrcc.com/wolfgang/
DGPS signals via the Internet  http://www.wsrcc.com/wolfgang/gps/dgps-ip.html