Dynamic network lookup

Does anyone know of a network lookup script that returns available machines, shares, and IP numbers on a local network…?
I have studied several Unix books, without success.

However, Apple built (part of) this functionality into the Finder (-> Network:Connect button) so there MIGHT be a hook into that…

What kind of service are you scanning for? FTP, WWW, Machines with AFP Shares? Is Rondevous running on all these machines?

Check out…


I used this
do shell script “mDNS -B _ssh._tcp local. > ~/Desktop/SSHService.txt 2>&1 &”
do shell script “killall mDNS”

and then read the info out of the text file. I wasn’t happy with the solution, but it worked.

If you’re still running appletalk (not many do these days) you can use
atlookup -a

This app is interesting… You might ask him to make the app scriptable…

jj may weigh in on the topic?

The mDNS thing didn’t issue anything useful (probably requires preload of some routines)
Following your hints and some of then discussions at Apple, I was able to compile the following script
that works out-of-the box.
(it relies on the arp-call, that only returns reliable results after a broadcast ping)
It returns all the IP number of all active network machines (whatever the services) incl router.

getIPs("") --broadcastAddress

on getIPs(broadcastAddress)
	set myResults to do shell script "ping -c 1 -q " & broadcastAddress
	set IPs to paragraphs of (do shell script "arp -a | awk '{print $2}' | tr -d '()'")
	return IPs
end getIPs

Side note: iRoster goes a step further and implements a Services Search.
It offers applescripts, but they obviously do not call the iRoster app and I can’t determine what their use is.