How can I find all MAC addresses connected to a LAN network? Is there a way or protocol to do this?
Just take a look at the MAC table (also source address table) in your managed switch - each device having transmitted a frame within the mac aging period shows up in there.
Other than that there's no way to see each and every address. There are several ways to get most addresses though, including the most trivial methods, just listening to broadcasts for a while or running an ARP sweep. If your devices use DHCP then you see the leases on your DHCP server.