What range of MAC addresses can I safely use for my virtual machines?

I want to assign my virtual machines MAC addresses so that I can configure DHCP reservations for them so that they always get the same IP address regardless of which host hypervisor they are running on or operating system they are running.

What I need to know is what range of MAC addresses can I use without fear that one day some device may be connected to our network with that MAC?

I have read the Wikipedia article on MAC addresses and this section seems to indicate that if I create an address with the form 02-XX-XX-XX-XX-XX then it is considered a locally administered address.

I would assume this means that no hardware manufacturer would ever use an address starting with 02 so I should be safe to use anything that starts with 02 for my virtual machines?

Thanks for the help.


There are actually 4 sets of Locally Administered Address Ranges that can be used on your network without fear of conflict, assuming no one else has assigned these on your network:

x2-xx-xx-xx-xx-xx
x6-xx-xx-xx-xx-xx
xA-xx-xx-xx-xx-xx
xE-xx-xx-xx-xx-xx

Replacing x with any hex value.


The complete list of assigned mac prefixes can be found here:

http://standards-oui.ieee.org/oui/oui.txt

There are several prefixes marked private on that list, 02 is not one of them. If you use one of those, you should be relatively safe. Keep in mind that other devices, software, etc. may also use that prefix, in which case your chance of a conflict goes up slightly.

If you are using randomly generated suffixes, your odds of collision are pretty astronomical.