Our network gave an error that there was an IP address conflict and I'd like to find what all the device IP addresses are. (I've also had need of that before). (update/clarification:I'm looking for a Windows-based too.)

Any suggestions?

I've read suggestions for various tools (Look@Lan, Angry IP Scanner) and I'm looking for suggestions from people who have used these or other tools.

link|improve this question

feedback

15 Answers

up vote 20 down vote accepted

Using nmap to do a sweep of the subnet is one quick and simple way to do this that I've used before, the various options will allow you to do a more detailed inspection also.

link|improve this answer
feedback

If there's a unix box on the network, you could try arp-scan:

http://linux.die.net/man/1/arp-scan

$ arp-scan --interface=eth0 192.168.0.0/24
Interface: eth0, datalink type: EN10MB (Ethernet)
Starting arp-scan 1.4 with 256 hosts (http://www.nta-monitor.com/tools/arp-scan/)
192.168.0.1     00:c0:9f:09:b8:db       QUANTA COMPUTER, INC.
192.168.0.3     00:02:b3:bb:66:98       Intel Corporation
192.168.0.5     00:02:a5:90:c3:e6       Compaq Computer Corporation
192.168.0.6     00:c0:9f:0b:91:d1       QUANTA COMPUTER, INC.
192.168.0.12    00:02:b3:46:0d:4c       Intel Corporation
192.168.0.13    00:02:a5:de:c2:17       Compaq Computer Corporation
192.168.0.87    00:0b:db:b2:fa:60       Dell ESG PCBA Test
192.168.0.90    00:02:b3:06:d7:9b       Intel Corporation
192.168.0.105   00:13:72:09:ad:76       Dell Inc.
192.168.0.153   00:10:db:26:4d:52       Juniper Networks, Inc.
192.168.0.191   00:01:e6:57:8b:68       Hewlett-Packard Company
192.168.0.251   00:04:27:6a:5d:a1       Cisco Systems, Inc.
192.168.0.196   00:30:c1:5e:58:7d       HEWLETT-PACKARD
13 packets received by filter, 0 packets dropped by kernel
Ending arp-scan: 256 hosts scanned in 3.386 seconds (75.61 hosts/sec).  13
responded
link|improve this answer
Very handy tool. – ring0 Dec 9 '10 at 12:04
feedback

A list of IP addresses on the LAN will be of limited help, as the issue is there are two machines trying to use the same IP.

I would suggest that you attempt to find the MAC addresses of the two machines that are clashing.

What device logged the IP address conflict? Was it a server, router etc? Some platforms (Solaris, BSD) will log the MAC address of the offending host along with the error message. If the IP in question is within one of your DHCP pools, it's also worth checking your DHCP server's logs for the MAC address it's attempting to assign that IP to.

Failing that, I would recommend logging on to the default router of the subnet that this problem is occurring on, and monitoring the ARP table. There should be one IP address that flips between multiple MAC addresses; again, those two MAC addresses represent the devices you are interested in.

Once you have the MAC addresses of the two devices, you should be able to tie them to specific switch ports. This question provides more information on how to do that. You can also use an OUI lookup tool to help identify the manufacturer of each device.

link|improve this answer
If there's a DHCP server trying to assign that IP, there should be a log entry containing the offending MAC address. – Kara Marfia May 21 '09 at 14:14
With the MAC address, you can also look up the manufacturer of the device or NIC using standards.ieee.org/regauth/oui/index.shtml – bk1e May 22 '09 at 7:06
@Kara,bk1e: both good points, answer updated accordingly. – Murali Suriar May 22 '09 at 7:25
feedback

I use Advanced IP Scanner

http://www.radmin.com/products/utilities/ipscanner.php

link|improve this answer
+1 for Advanced IP Scanner, very nice tool. – mh. Jun 23 '09 at 16:13
feedback

Quick and dirty (on Linux):

$ ping -b 192.168.1.255
$ arp -a
link|improve this answer
just tried that out. could it be some hosts do not respond to broadcasts ? or is this a sure thing I misconfigured the subnetmask on them ? – lImbus May 20 '09 at 23:38
No, some could not be responding (firewall?). – Ivan May 20 '09 at 23:50
It is true that many hosts won't respond to broadcasts, but +1 for running arp -a after running nmap. :) – jns May 21 '09 at 10:31
I meant ping, not nmap – jns May 21 '09 at 10:32
Thanks for the tip. – ring0 Dec 9 '10 at 12:05
feedback

As mentioned nmap (http://nmap.org/) is probably a good, quick and free option. Just be careful with it, there are some very aggressive options that could crash machines.

This command will do a simple ping sweep of the selected subnet and should be completely safe.

nmap -rP 192.168.1.1/24

Obviously, replace with your own network information.

You mentioned that a duplicate IP address was identified. Both machines should have generated a warning screen, which should allow you to identify the machines. If DHCP is used, then another request should have been generated and the problem may have self resolved.

link|improve this answer
feedback

NMap should give you what you're looking for (or ZenMap if you want a friendlier interface). As an added bonus, it'll also detect all the services that the other computers are running, and possibly make your IDS freak out.

link|improve this answer
Zenmap is a good choice :) – Pitto Dec 9 '10 at 11:46
feedback

I've always been a fan of Angry IP Scanner.
Yes, not as full featured as NMAP, but can show quite a bit of data quickly.

link|improve this answer
feedback

You don't say if it has to be a Linux app. If you can use Windows then Advanced IP Scanner (http://www.radmin.com/products/utilities/ipscanner.php) is free and works very well.

John Rennie

link|improve this answer
feedback

I'm not aware of any sure-fire way of getting device names but your switch's CAM table will list ever MAC on your LAN and you can then run a RARP lookup on that to find out IP details for each device.

link|improve this answer
RARP won't give you that information. It is the precursor to DHCP. When you rarp you're asking a server for an IP address assignment. What you are describing is Inverse Arp, rfc2390 (tools.ietf.org/html/rfc2390). – Scott Pack May 25 '09 at 13:47
feedback

There is a little app I use called "kiss the net" that scans and generates a pdf network map for you.

It's based on a server monitoring/management product called "The Dude" made by mikrotik.

http://www.mikrotik.com/download/KTN_1.0beta1.zip
Requirements: Windows XP/2000/2003/Vista with Internet Exporer 6 or better.

link|improve this answer
feedback

If you have access to the router that's acting as the default gateway for the subnet in question, then listing the ARP cache on the router (I believe it's just "show arp" on a Cisco IOS device) is the best way to go.

The other answers in this thread (ping sweeps, nmap, broadcast pings, etc) are likely to be inadequate these days with so many systems running personal/host based firewalls that block pings, etc.

The router arp cache may still not be 100%. It won't show any hosts that haven't communicated within the arp timeout period, or at least that haven't communicated off subnet within the arp timeout period. But in most cases it's much more likely to get you more complete results than any other method.

link|improve this answer
feedback

From the good (bad?) old days, I used to use a tool called WS_PING - from the same people who provided the venerable WS_FTP.

It's only a trial, but you can grab it from http://www.whatsupgold.com/products/ws_ping-propack/ - it'll do everything you want and do it from Windows 95!

link|improve this answer
feedback

Colasoft Mac Scanner is one way to do it. Delivers IP, name and MAC.

link|improve this answer
feedback

The easiest way I've found is in windows if you type

ping -a 1.1.1.1 (ip address with confilct)

The -a resolves addresses to hostnames which gives you the computer name as well as the ip address. Was able to find the exact computer causing the problem on my network.

Hope this helps. I was looking for this solution for months.

link|improve this answer
feedback

Your Answer

 
or
required, but never shown

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