Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I am using arping -D to detect duplicate IP addresses within a network when setting up servers. (The network is controlled by someone else, and we have had many issues with IP allocation in the past.) It works fine as long as my host has a single NIC on a given VLAN, but when my host has more than one (I have one with 9 NICs on one VLAN and 1 on the other), arping -D always returns false collisions.

The problem is that all 9 of my NICs respond to an ARP request for any of the IPs on those NICs. (These are real physical NICs, not aliases or anything.) I send out one ARP request packet, and get 9 ARP is-at ARP replies, one for each MAC address.

I could implement my own solution by sniffing packets and checking for any replies with a MAC address other than the local NICs', but it seems like there ought to be an easier way.

share|improve this question
add comment

1 Answer

up vote 2 down vote accepted

First, don't have nine NIC's on the same subnet, if you want bandwidth use bonding, if you need addresses use ip addr.

To fix the arp issue just set the following sysctl's:

net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
share|improve this answer
    
This looks right. You might want to add a pointer to Documentation/networking/ip-sysctl.txt for explanation, though it's hard to follow. Also, I'm not bonding because I can't place any restrictions on the switch that the NICs are plugged into, and bonding doesn't do me any good anyway -- I am sending out 1000s of independent video streams, each to a different destination host:port. I need the (outgoing) bandwidth, not the IPs. The multiple IPs are a bit of a nuisance. Am I doing something dumb? In quickly skimming bonding docs, balance-tlb might be what I want. Is that right? Thx. –  sfink Jan 2 '10 at 7:40
    
If you're high bandwidth it's in your interest to work with the switch as the topology there needs to be right. I assume you've already considered multicast? –  LapTop006 Jan 2 '10 at 13:25
    
We're placing our server into other people's networks, and our experience so far has been that they might get the basic setup right on the 3rd or 4th try, but then they'll screw it up every few months. That's where the original question came from -- we want to check for duplicate IPs in self-defense. I shudder to think of what they'd do with a bonding configuration. The topology is straightforward -- from 1 of our 3-6 servers to 1 of their 10-30 servers (and from there to RF). Multicast doesn't help because these are 1000s of completely different video streams, no two the same. –  sfink Jan 2 '10 at 23:32
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.