Reply two years after asking, it is not feasible relying only on the Mac address.
Since you mention monitoring the network traffic, The best approach would be to listen Bonjour traffic (multicast dns).
By default, machines are called 'jannies-iphone.local', 'gregs-macbook.local', 'peters-imac.local'...
Bonjour is pretty talkative and generate noise for AFP, SMB, VNC, RAOP, DAAP and other services/protocols. I would suggest you to use "Bonjour Browser" then script something with Tshark (Wireshark command line) to automatize the process.
Without remote scans, you can manage your devices by :
Running an agent (or profile) on each OS X and iOS devices to fetch 'sysctl hw.model' or its serial number. 'Mac Tracker' can help you to see the different models of Mac and their spec and serial number pattern.
Using Profile Manager, Configurator or any MDM solutions. (But this does not address your question).
Find iOS and OS X running on the network :
Also you could use a network tool such as nmap with the option -A, -O, or -sV (Active Fingerprinting and service version) and filter Apple mac addresses prefix using a network anylizer.
Looking at the service version, port numbers [tcp 65xxx being a iphone-sync port, tcp 548 AFP (OS X)] will help you to determine OS X version and Hardware but not precisely. (You will not be able to differentiate, iPad, iPhone, and iPod, or Mac Model).