Thanks to some lax record keeping by our (ex! :-) network manager I'm tasked with finding what QNAP and Synology NAS devices exist in our company. We have several hundred offices scattered across the UK and they are all separate networks and separate domains. They are all Windows based (a mixture of Server 2k3, 2008 and 2012). We run our own home brewed monitoring software that allows me to run any software I want remotely.
QNAPs and Synologies have distinctive MAC addresses, so if I can scan the network for MAC addresses and pipe the output to a file I can easily get the info I need. The question is how to get a list of all MAC addresses on the LAN.
The obvious first step is just to run arp -a, and I'll probably go ahead and do this anyway. However this will only show devices the server has seen within the arp cache timeout. Does anyone know an easy way to get all devices? By easy I mean something built into Windows - I'd prefer not to have to install any software as we're talking about hundreds of different offices. nmap tends to be mentioned on these occasions, but the Windows ports seem to need extra libraries installing. If I have to use an external scanner it would be nice to have an executable that can just be copied onto the server and run.
PS: a quick clarification:
The scanner needs to be a command line app so I can fire it off remotely and have the output go to a file for subsequent parsing. It can't rely on Java since there's no guarantee all servers have Java. I'm fairly certain all servers will have at least .Net 2.0 - I suppose at a pinch I could knock up a quick .Net 2.0 app to ping every possible address on the network and get the MAC address associated with any replies ...