ARP bug/feature in linux

From: S Ramesh (
Date: Sat Jul 26 2003 - 08:18:06 EST


While recv a ARP req to its IP, a linux machine responds with a ARP
response, but not updating its ARP cache.

Why is this behaviour? As per RFC if the ARP req is for the
interface's protocol address, it has to update the src protocol
address, source hardware address it in its ARP cache. This is a
violation of RFC right.

Actually tried to ping the linux box. Initially after recv the ARP req
linux responds with ARP reply and replies to further ICMP packets. But
it also initiates a fresh ARP request to the host. When tested with
one icmp echo pkt, it happened at the end of the icmp echo pkt reply.
With 4 pkts also at the end it happened. With 100 pkts it happens at
random intervals.

Is there any specific recommendations for hosts? because i tried the
same with a Cisco router which does not freshly initiates a ARP
request packet after ICMP echo replies. So when does the ARP cache is
updated in linux machine. My kernel version is 2.4.18-3.

Any reasons for this behaviour?


To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to
More majordomo info at

This archive was generated by hypermail 2b29 : Thu Jul 31 2003 - 22:00:01 EST