Is it possible the IP address was in your switch's arp cache? (You
mentioned /proc/net/arp in other hosts, but did you look at switches?
Did you run "clear arp-cache" or equivalent?)
How did you measure the "insistence on sending ARP replies claiming
it"? If you used Ethereal (er, "Wireshark") on the remote hosts, they'd
see those replies from the switch's cache.
Also, it's possible for a computer to die in a way that the NIC will
still respond to its last known IP address. H.A. systems sometimes use
arp spoofing (or "hostile arp takeover") to grab an IP address from a
zombied NIC. So, perhaps your NIC got into a bad state, or is dying.
If you are sure it wasn't the switch's cache, I'd replace the NIC.
--Derek
On 12/29/2009 09:55 AM, John Baxter wrote:
We routinely use ifdown to remove IP addresses from machines when we
(manually) switch active machines in a pair. (We then remove the
relevant ifcfg-... files from the network-scripts directory.)
Last evening, we had problems with some of our network insisting that
the machine (CentOS 4.8) from which we removed the IP still had it
according to their ARP tables (even after removing it from those
tables by hand, those machines would relearn it). /proc/net/arp
"confirmed" the wrong information on those machines.
The machine in question did not show the address in
ip addr show
or in
ifconfig
However, ping times suggested that some part of the machine thought it
had the address, as did its insistence on sending ARP replies claiming
it.
A reboot has tamed the machine. This has not happened in dozens of
prior similar adventures. The latest round of updates from CentOS were
applied between the prior good transitions and this one (and were the
reason for the machine switches and reboots).
Quite strange from our point of view.
--John