tech stuff.

What MAC address should I use for my virtual server?

with 2 comments

I’m creating a new virtual server, and I need a MAC address to assign to it.  (My provisioning/build system requires pre-allocated MACs.)  Instead of pulling one out of thin air, I thought I’d look up what address range I should be using.  It seems surprisingly difficult to find a straight answer on this one, though.

Locally Administered Addresses

It looks like the 802 standard includes provisions for locally administered addresses versus universally administered addresses.  If the second bit transmitted on the wire is a 1, then the address is considered locally administered.  If the second bit is a 0, then address is globally administered and the first 24-bits must be a globally unique OUI assigned by the IEEE.

Note that this is the second bit on the wire.  It would be the second least-significant bit of the most significant byte when represented in hex.  That is, 02:xx:xx:xx:xx:xx is local while 04:xx:xx:xx:xx:xx is universal.

Great, so half of the entire MAC address space is available for me to choose from, right?  I think so, but I haven’t really seen used with virtual servers.

IEEE Private OUI

The IEEE is the authority responsible for keeping the first 24 bits of the address unique.  Vendors apply for an Organizationally Unique Identifier (OUI) which becomes the first 24 bits.  The IEEE has assigned AC-DE-48 to “PRIVATE”.  This looks to be the MAC address equivalent of RFC1918 private IP addresses (,,

Which should I use?

As best as I can tell, locally administered addresses were intended for the purpose of overriding a burned-in/firmware-provided assigned address.  In my case of assigning to a virtual server, I’m trying to emulate an assigned address, not override one.  Using the IEEE private OUI seems like a better fit.

Then I still have the option of overriding my privately unique address with a locally assigned address.  Because that seems like a good idea.  Or something.

Update: Xen Virtuals

It looks like XenSource has registered 00-16-3E with IEEE for use with Xen Virtuals as well.  XenSource recommends using this range.  ymmv.

Written by Lee Verberne

2008-09-05 at 15:23

Posted in Internet

Tagged with , , ,

2 Responses

Subscribe to comments with RSS.

  1. Cheers Lee,

    Did you figure out a solution? I have 8 machines each running 3 virtual machines. Each virtual machine has two NICs. So I have 48 NICs to configure. I want to configure static MACs. All of my VMs have internal IP addresses so I though of converting my internal IP address to Hex and adding the prefix 02-00. For IP address the new static MAC would be 02-00-C0-A8-00-0D.

    This begs the question, if I change the IP address for a NIC in a VM, do I also change its MAC as well? At any rate, this is what I did.


    Tim Meredith

    2008-11-08 at 18:04

  2. […] 00:16:3e:XX:XX:XX pool will be a safe bet as these are registered to be used by VMs. This blog post here has some more information if you are […]

Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: