Windows VM MAC Address Change

Sometimes moving a server into a Virtual Infrastructure is not straightforward. Consider a server that has software on it that is licensed based on a MAC address for instance. MAC addresses start with a vendor ID and the rest of the address is made up with hexadecimal numbers to make each MAC address unique. VMware's vendor ID is 00:50:56, all VM NICs will have MAC addresses starting with it.

So, suppose you have a piece of software installed on a Windows server that is licensed to a MAC address of 00:0B:CD:6D:17:D9. How do you P2V that server and still have the software work? One option is purchase a new license. Another is to request that the license is moved to a new server / MAC address. However this would require you to manually specify the VM's MAC address so that it is not changed by ESX. It also assumes that the software vendor is still doing business, willing to issue or change the license without forcing an upgrade or able to do it in a timely manner.

Let's suppose that they aren't. What is the alternative? It is only possible to specify a VMware MAC address (starting 00:50:56) in the VM's configuration. Anything else will prevent the VM from being powered on. The only to achieve what you want is to configure the MAC address in Windows itself.

To do this, start by opening the Properties for the Network Connection:


Click the Configure button for the Network Adapter:


Find the “NetworkAddress” property and enter the desired MAC address without any seperating characters ( : or – usually ). Click OK to apply the change but beware that contact with the server will be temporarilty interrupted.

If you then ping the server from another server on the same subnet and perform an ARP cache check ( “arp -a” at the command line ) you should see that the change is successful. The new MAC address will also show up when using “ipconfig /all” on the modified server. Your software won't know the difference.