NIC replying to wrong address
I had a server, with one nic answering to 172.25.9.3 for local users and
x.y.x.t , public address for hosts with a public address. (this server
hosts the DNS for the subnet)
It worked fine, until i decided to improve bandwidth, adding a second NIC
to serve just the public address, and leaving the first one for the
private, of course since the hosts are mixed on the physical network the
two nics are connected to two posrts of the same switch.
After a few days someone told me that some HP and brother printers (having
a public address) stopped working (while canons continude to work).
The log from the printer show an outrageous ly hig number of incoming
packets. Sniffing on the network i fount that there were two (and only
two) windows XP hosts having a public address that sent an arp who_has
This was odd either because only that two hosts did, and because since
these are on x.y.x.0 subnet these shound have asked for x.y.z.t and nopt
for the private address they knew nothing about it !
but the problem was that my host replied with two replies, giving as the
address for 172.25.9.3 both NIC. The requiring host were confused and sent
again the request, my hsot replied again with two addresses, they were
unhappy and sent agin the request, about 3000 times per second ...
Net result was:
1. the request being broadcast were sent to every host in the subnet,
be3ing unnoticed by someone, but hogging the printers;
2. even 172.25.9.3 was unappy, and at sometimes was actually slower than
when it had only one nic.
What could be the solution ?
( ifconfig give a correct attribution NIC<->IP address,
only that two machines, out of about 200 [70% XP, 10% W2k, 20% Linux]
have this behaviour )