Note also that if you collect MAC addresses from different network segments, you may find MAC addresses aren't unique (some OSses use the same MAC address for all their interfaces by default), or that different MAC addresses map to the same IP address.
There's a reason that 1) ARP caches expire quickly, and 2) MAC addresses are used on a level below routable IP.