In terminal type "arp -a" it will list all the MAC addresses that your computer knows about - which implies things that your computer is currently talking to since the arp table entries expire.
Just to add to bear's info, arp maintains a cache of ip<->mac addresses. If a node on the local network hasn't been active lately, while others have, it may drop out of the cache. If you want to see every node that has a link up, you can 'ping' your network's broadcast address, then do the 'arp -a' command. This should give you ever node.
And to daveL and Bear's posts, I would also like to add that your arp cache won't contain any entries for machines beyond your subnet.
At least it shouldn't. Routers aren't supposed to pass that kind of info to computers, only to each other.