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

429,936

Solution 1

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

  2. and then do an arp -a

Solution 2

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

Solution 3

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

Solution 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/

Solution 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.

Share:
429,936

Related videos on Youtube

macek
Author by

macek

Updated on September 17, 2022

Comments

  • macek
    macek over 1 year

    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.

  • Spiff
    Spiff about 14 years
    To 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.
  • macek
    macek about 14 years
    Best answer because it required no software download. Thanks, NSD :)
  • slhck
    slhck over 11 years
    Hi! 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.
  • Jas Panesar
    Jas Panesar almost 11 years
    Great tip.. I filtered out the results to only show the ip's that are not incomplete (and are present) with.. arp -a | grep :
  • Pierre-Adrien
    Pierre-Adrien almost 11 years
    On 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)
  • hookenz
    hookenz about 10 years
    Right, 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.
  • deweydb
    deweydb over 9 years
    Can 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 ??
  • Codeversed
    Codeversed over 9 years
    Best answer. You can do it one line too: ifconfig | grep broadcast | arp -a
  • JohnnyVegas
    JohnnyVegas over 8 years
    IP Scanner is useless as it has a 6 device limit, then they want $30. Avoid this.
  • Rolf
    Rolf over 7 years
    @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?
  • Mirko Ebert
    Mirko Ebert over 7 years
    I use: arp -a | grep -v '^?' under Macosx.
  • user3439894
    user3439894 over 6 years
    The Angry IP Scanner download link has changed. Better just to use the domain address: angryip.org
  • Gaia
    Gaia over 5 years
    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
  • ijoseph
    ijoseph over 4 years
    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