How can I scan the local network for connected devices? (Mac OS)

119

70

I'm basically looking for something like this but available on Mac.

I am trying to connect a new workstation to our wireless multifunction printer and I'm having a hell of a time getting the device to spit out an IP for me to connect to.

Is there a way I can scan the network somehow?

If it makes a difference, the new workstation is using Mac OS X 10.6.

macek

Posted 2010-03-26T15:17:27.330

Reputation: 5 157

Answers

186

  1. Ping the broadcast address
    (you can find it with ifconfig | grep broadcast)

  2. and then do an arp -a

Hasaan Chop

Posted 2010-03-26T15:17:27.330

Reputation: 4 224

13Can someone explain why/how this works? You ping the broadcast and this causes all the other connected clients to commit network activity which is then visible to arp ?? – deweydb – 2014-12-28T18:28:21.560

24Best answer. You can do it one line too: ifconfig | grep broadcast | arp -a – Codeversed – 2015-01-21T13:16:02.933

Best answer because it required no software download. Thanks, NSD :) – macek – 2010-03-29T16:00:47.597

2@deweydb when you're on LAN, connecting to an IP involves resolving the IP into a mac address. ARP keeps a cache of all resolved IP addresses. Doing a broadcast ping indirectly triggers a resolution for all IPs on the network. Now... how can we resolve the list of IPs into DNS (or other) names? – Rolf – 2016-10-25T10:24:37.917

2I use: arp -a | grep -v '^?' under Macosx. – Mirko Ebert – 2016-12-29T23:11:30.347

What do the ? (192.168.1.15) at <incomplete> on eth0 mean? there is nothing (and AFAIK there has never been) anything on my lan at that address – Gaia – 2018-10-16T20:30:28.817

2Great tip.. I filtered out the results to only show the ip's that are not incomplete (and are present) with..

arp -a | grep : – Jas Panesar – 2013-07-17T02:46:08.833

8

Where x.x.x is the first three numbers in your ip address.

for ip in $(seq 1 254); do ping -c 1 x.x.x.$ip -o ConnectTimeout=5; [ $? -eq 0 ] && echo "x.x.x.$ip UP" || : ; done

ow3n

Posted 2010-03-26T15:17:27.330

Reputation: 196

Right. First of all, x.x.x only works for netmasks that are /24(=0xffffff00). One should verify this using ifconfig. Second of all, this takes 21 minutes to run serially. Can do this in parallel by terminating the for loop using & instead of ;. On MacOS, this looks like: for ip in $(seq 1 254); do ping -c 1 -t5 192.168.1.$ip > /dev/null ; [ $? -eq 0 ] && echo "x.x.x.$ip UP" || : & done

– ijoseph – 2019-11-27T23:35:37.423

3On a Mac here, had to slightly adjust your answer as the timeout is set using the -t option (for instance -t 5 for a 5 seconds timeout) – pabuisson – 2013-08-02T19:03:22.497

1Right, that also didn't work for me. On the Mac you not only need to use the -t 5 option, but also move it to be before the ip. i.e. -c 1 -t 5 x.x.x.$ip. Otherwise it'll error and bomb out. – Matt H – 2014-02-24T04:06:42.960

6

Single Line Answer: http://nmap.org/download.html [Use NMAP] or Angry IP Scanner

adeelx

Posted 2010-03-26T15:17:27.330

Reputation: 1 248

1

The Angry IP Scanner download link has changed. Better just to use the domain address: http://angryip.org

– user3439894 – 2017-12-25T14:12:27.850

5

Your printer provides a file share for dropping files into or are you just trying to locate the printer on your network?

Does your new multifunction printer support Bonjour/ZeroConf? (Most new network based printers do) If so you can use a program such as Bonjour Browser to see what is available on your network.

On your router does it appear on the DHCP Clients Table (you may have to consult your manual to see how to see this table) - as this will also give you the IP but will also let you know for certain that your printer is actually connected to your network.

From your Mac itself you can use a program such as Nmap from the command line or use a GUI based app (eg. Zenmap - GUI for Nmap or AngryIPScanner) to scan your network and then see what ports are available.

Chealion

Posted 2010-03-26T15:17:27.330

Reputation: 22 932

1To add to @Chealion's answer, if your printer supports Bonjour, you should see it in the "Nearby printers" list on the "Printer" pop-up menu of the "File > Print..." dialog sheet, or in the printer browser you see when you go to "Add Printer...".

So many multifuction printers from the major manufacturers support Bonjour nowadays, that I'm surprised when a printer doesn't just automatically show up on those places I mentioned. – Spiff – 2010-03-26T20:03:17.333

4

NMAP [nmap] is your best friend for all sorts of network devices scans. Use Zenmap if you need GUI [zenmap].

Assuming your local network is 192.168.0.0/24 (where 24 means netmask 255.255.255.0) this will give you online hosts with their IP and MAC addresses:

nmap -sP 192.168.0.0/24

You can download the package from project website or build yourself from sources with MacPorts [macports]. Enjoy! :-)

[nmap] https://nmap.org/

[zenmap] https://nmap.org/zenmap/

[macports] https://www.macports.org/

CeDeROM

Posted 2010-03-26T15:17:27.330

Reputation: 51

1

Fing (mostly known as a mobile network scanner for android/ios) has a freely available macos console version which additionally does some fingerprinting via built-in mac address manufacturer tables. It appears to be faster than nmap and easier to use.

Once installed you can run it with:

sudo fing

It is apparently closed source so I don't know how safe it is to use. Make sure you are aware of potential risks.

Also available as a homebrew cask:

brew cask install fing

ccpizza

Posted 2010-03-26T15:17:27.330

Reputation: 5 372

0

Works:

$ for ip in $(seq 1 254); do ping -c 1 192.168.0.$ip; done

or

$ for ip in $(seq 1 254); do ping -c 1 192.168.0.$ip -W 1; done

Description:

loop from 1 till 254
on each loop ping the ip one after another, to skip press CTRL + C
or
on each loop -W 1 means auto skip after 1 second

YumYumYum

Posted 2010-03-26T15:17:27.330

Reputation: 1 399

-2

On the Mac, there is IP Scanner, which looks has a GUI that aggregates arp, bonjour, NBT and some other network scanning technologies.

ecume des jours

Posted 2010-03-26T15:17:27.330

Reputation: 121

6IP Scanner is useless as it has a 6 device limit, then they want $30. Avoid this. – JohnnyVegas – 2015-08-24T18:57:21.310

7Hi! Per the [FAQ], please disclose any affiliation with products you recommend. And please don't let that be the only reason you're on Super User—otherwise your posts may be considered spam. – slhck – 2012-12-31T19:20:56.517