Hi,
almost 6 years later I faced the same problem in my network. A linux server machine responding to all ARP requests (and all Arping for all IP's) in the net. This may cause ALL Windows Vista (and a CentOs Linux) to be unable to get an IP (even static IP's). At least, Windows XP's machine ignore this problem.
The solution is to change a single archive that specifies how the machine will respond to ARP requests:
sysctl net.ipv4.conf.all.arp_ignore=1
or
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
The default (and problematic) is 0 for that parameter.
arp_ignore - INTEGER
Define different modes for sending replies in response to
received ARP requests that resolve local target IP addresses:
0 - (default): reply for any local target IP address, configured
on any interface
1 - reply only if the target IP address is local address
configured on the incoming interface
2 - reply only if the target IP address is local address
configured on the incoming interface and both with the
sender's IP address are part from same subnet on this interface
3 - do not reply for local addresses configured with scope host,
only resolutions for global and link addresses are replied
4-7 - reserved
8 - do not reply for all local addresses
The max value from conf/{all,interface}/arp_ignore is used
when ARP request is received on the {interface}
Similar problem here:
http://alt.awesometrousers.net/artic...rp_ignore.html
Hope this help a future similar problem
Cheers