RE: [2.4 PATCH] bugfix: ARP respond on all devices
From: Richard Underwood <hidden>
Date: 2003-08-19 18:01:27
Also in:
lkml
David S. Miller wrote:
quoted
When a HOST sends out an ARP request, it's NOT associated with a single connection, it's associated with the host. Whyshould it pick aquoted
"random" IP number to send as the source address?It's not "random", it is using the IP address it intends to use as the source in packets it will output once the ARP completes. In fact, if you look at the code in arp_solicit(), the source address is coming directly from the packet we are trying to output.
Which nicely sums up the bug, really. 1) The ARP response (or lack thereof) will be used for more than that connection, using a single packet's source IP address is meaningless and just a little aribtrary. 2) Depending on which ARP request or reply gets seen first, packets may get routed over different interfaces or not sent out at all. 3) The code is over-complex. There must already be perfectly good code to pick up the interface's IP address as this would HAVE to be the case when a packet has been routed from another host. This sort of randomness is not acceptable in a reliable network. Richard