Skip to content →

HOWTO: Instantly change your MAC address


There’s a C++ command-line utility called Macshift that allows Windows XP users to change their MAC address to any other valid address. I’ve written about how to use it and how to create shortcuts to change your MAC address on-the-fly. I’ll first explain how to use Macshift for any MAC change, then I’ll show you how to make Windows shortcuts using the command-line options. I’ve also made a small script to make it easier to use, but the script isn’t necessary.
Macshift usage

Macshift is a command-only utility, so you need to learn the options to use it.

-i [adapter name] tells what adapter in Network Cnnections to change
-r tells the program to use a random MAC
-d restores the original MAC
--help shows the Help menu

Example usage:
macshift -i "Wireless Network Connection" 001122334455
This would change your wireless MAC to the one above. Your adapter will be disconnected and reset immediately.

macshift -i "Wireless Network Connection" -d
This would restore your MAC address to the original.

The adapter name must appear exactly as it does in your Network Connections. By default, a wired connection should be “Local Area Connection” and wireless should be “Wireless Network Connection” — you can rename these to make it easier.

Create Windows shortcuts

The first thing you should do is find a permanent place to keep Macshift. Make a folder in Program Files or just throw it in the Windows directory. Right-click it and choose Send to -> Desktop to make a shortcut. Now, just use the command options in the path field of the shortcut. Create as many shortcuts to the Macshift exe as you want. Below are some shortcut examples.

Generates a random MAC.

Restores the original MAC.

As you can see, I have macshift.exe in my C:\WINDOWS\ folder. All I did was add some options to the end of the path to tell it what to do. You can manually tell it what MAC to use also. Instead of using the -r option, you can put a valid MAC at the end like:
macshift -i "Local Area Connection" 001143641222

Use a script to specify a MAC
I’ve written a simple script to ask you for the MAC you want to change to. Just run the script, enter your desired MAC and adapter, then hit enter. It’s pretty simple. Here it is:

set /P newmac="Enter your desired MAC: "
set /P adapter="Enter the adapter name: "
macshift -i %adapter% %newmac%

If you use this script, you need to place the macshift.exe program in a PATH folder (i.e. a folder that can be run from the command line; see the PATH variable in Environmental Variables). If you’re not sure waht that means, put macshift.exe in either C:\WINDOWS\ or C:\WINDOWS\system32. The script is very unnecessary, but if you want to use it, go for it.

Why would you want to change your MAC address?

You tell me. People change their MAC addresses for a number of reasons. Why do you? Let me know in the comments or by email.

Published in time savers windows


  1. Mark Mark

    Why would anyone want to change mac address?

  2. Mark Mark

    If you’re behind a network that requires you to register devices by their MAC address, you can change your local MAC to register the device, then restore your original. I’ve personally used this to register a wireless router in a matter of 10 seconds.

  3. p.srinivas p.srinivas

    I do have a thin client software which works on a MAC ADDRESS but unfortunately my client system is intel dot station which has a built in ethernet port. now my intel dot station is crashed out. Now i have purchased one more intel dot station system but the MAC ADDRESS of this intel dot station is different.

    Now if you have any software which i can change the mac address permanently to my old mac address. If could help me in this regard i would be thankful to you.

    pabba srinivas

  4. Kalin Kalin

    how do i change the MAC addres of a wireless router? It may be simple, but i just have no knowledge…

  5. Mark Mark

    Good question. A router will probably have an internal function in the management page to change the MAC. It will probably be called MAC Clone. If there is no function like that in the admin area, then I’m afraid you can’t do it.


  6. Johnathin M. Johnathin M.

    did you know:
    not all MAC address that are random generated are valid.
    You can very easily change your mac address yourself in windows XP without the need for third party software
    Why would you use third party software anyhow for such a thing..

  7. ty ty

    i tried this to get unbanned from Second Life,works kind of…but how can i change my mac address and still have internet connectivity? everytime i do it i dont >

  8. Mark Mark

    Not all NICs support that feature through the OS. I know mine doesn’t, so I opt for Macshift to do it.

    You probably need to register that new MAC address with your ISP or maybe on your router if you’re using MAC filtering.

  9. Mark Mark

    I would not download this program nore trust it.
    If your nick doesnt support MAC clonning, and this program tells you your MAC is different, then I would question this program greatley.

  10. Mark Mark

    To the other Mark,
    Your MAC can be changed in the registry. That’s how this program does the change — it speeds up a process of finding the right key and changing it. What’s there to question?

  11. Cueks Cueks

    My campus have internet connection. That requires login. Users have quota of using internet. It’s about 50 MB/day. So I use this macshift to change my mac address so I can login for different users.

    My broadcom based wifi card have error when I random the mac address. I don’t know why it happen. I use Acer Aspire 5051ANWXWi.

  12. sawahab sawahab

    Can i change mac address permanently.


    Yes you can change your MAC permanently. Replace your NIC…

  14. Chris Chris

    This can be used to get around the download times on RapidShare. RapidShare notes down what EXTERNAL IP address you have and my modem generates this by using the MAC address it is connected to.

    So, change your MAC address, reboot the modem and voila, new external IP address.

    No need for a premium account. Hope this helps 🙂

  15. What other ways I can be filtered or banned by ISP (not on MAC or IP)???

  16. lee lee

    gamespy arcade issue lifetime bans based on mac addresses

    just incase you needed an excuse to change it 😉

  17. nag nag

    i want to know mac address of the systems connected to the network to which am connected to

  18. rage3010 rage3010

    To jump the MAC filtering in an Access Point.

  19. Dan Dan

    I have a computer hooked to a router, that is hooked to a modem. I also have some wireless adapters that connect wirelessly to the router. If i were to change the Mac Address of my router would I get a new Internet IP Address? Also, would changing the MAC Address possibly mess up the home network that I stated above?

  20. Mark Mark

    Depending on the router you have, they often give you an option in the router admin to use a different MAC. Since the router connects to the modem (cable I assume), your IP won’t change since the MAC of the modem stays the same. You can’t change this MAC and your ISP knows the exact MAC of the modem. So, you basically will not be able to get a different IP. If you buy a new modem, the MAC changes, but then you need to call your ISP and tell them the new MAC.


    I tried this and all it says is: could not find adapter name ‘local area connection’. Please make sure this is the name you gave it in network connections.

    I don’t get it.

  22. Vamsi Vamsi

    Even I’m getting error saying:

    Could not find adapter name ‘Ethernet adapter Local Area Connection’. please make sure this is the name you gave it in Network Connection.

  23. Mark Mark

    Well make sure you typed in the exact same name as the adapter in Network Connections.

  24. Bryan Bryan

    Firstly, in the most genuine and sincere way, Nate True is my hero. There are a number of reasons why someone would need and/or want to change a MAC addy, and subsequently, the IP address. The reality is…I’m no programmer and I’ve spent the better part of several months and months trying to figure out how to change my IP n such. We all know proxy’s suck and almost never work.
    I no longer have DSL and since I’ve moved, I’ve been subjected to Comcast Cable internet. Its the only option. Needless to say, historically changing IP’s has been impossible because cable internet, as I understand it, swears by static IP addys. Whereas DSL, tends to offer Dyanmic IP’s, that change frequently. I recently read that comcast utilizes Dyanmic IP addresses. Hell if I know. I checked my ip for weeks on end with never seeing a change. I suppose if this were true, its because Comcast is the 2nd largest internet provider and as such has access to millions of IP addy’s.
    That said, I accidentally came across the “Free” MACshift program, by our hero and inventor Nate True. His instructions for non-pc guru’s can be a little confusing at first, so I figured all this out by trial and error. In order to get it to work, I started simple. No routers, etc. Straight connection from ethernet card (pc) to modem.
    [Dan I feel your pain, I have no idea how to use the program with a router — wireless or otherwise. As you see I have a cable modem as well and it works for me. I hope to know how to use it with a router soon!]
    A few have mentioned the adapter error. I got the same thing, until I physically went into network connections and renamed the connection. I changed it from LAN to the word “ethernet”. (You choose what you want)
    If your running Win XP and have Cable internet, specifically comcast, this process might work for you. Assuming that hardware and modems, could be different, there is no guarantee. Nonetheless, the following works for me! (For reference — my modem is a Motorola SBV5220)
    Note: Reading and understanding the macshift page as much as possible is really important!!
    1) Created a Desktop Folder for the Macshift Program. (Program must be installed to go further hehe)
    2) Created a Notepad “macshiftcmds” file with my commands to use in the command or “dos” prompt.
    There’s only two commands for me:
    a) cd C:\Documents and Settings\*****\Desktop\macshift (initates the program)
    b)” macshift -i ethernet ” (whereas “ethernet” is the name of my connection)

    Do an [ ipconfig /all ] in your command prompt and your ip should be changed! BUT!!.for me it will only do this “automatically” and resets/connects by itself with the new IP twice, in a 24 hr period.
    This is probably comcast related, but I don’t know. If I need to change IP more than twice in a day, I then have to do the following:

    1) Same process as above (you’ll notice computer is trying to reconnect to internet but won’t)

    2) Physically remove power cord and comcast cable from back of modem. Hold the reset button (on top for me) for 20+ Seconds. The lights blink and do their thing and modem resets.

    3) Reconnect cords, modem will boot up, and XP should automatically recognize and connect back to internet!! Done!

    I hope this helps some folks out. I even created a “MACshift for Dummies” for a few friends. I’m still hoping to add a router section….as soon as I find out how to do it! Perhaps Mark could elaborate on this?
    Take care now!

  25. Bryan Bryan

    Referring to my post above, does anyone know how to utilize the macshift program with a wireless router?

  26. Joe Schmo Joe Schmo

    There are many reasons why you would want to change your MAC address, here are my to reasons:

    1). Because you CAN
    2). If you are testing DHCP static Address allocations, you could test a specific MAC address to see if the DHCP allocated IP Address works.
    3). For wireless MAC reasons 😉 that’s all I’ll say about that

  27. EasternWall EasternWall

    I have changed successfully MAC address in Amilo Pi1505 notebook without any problems. However “macshift” failed to accomplish this task in another notebook built on the basis of barebone S96. After invocation of “macshift” final message suggests that all is OK. However checking MAC with “ipconfig” command shows, that no change occurs. I suspect that this failure may be attributed to a bit complex structure of network interface. Part of the output of “ipconfig” command follows:

    Ethernet Card Eth:

    Card state . . . . . . . . . . : disconnected
    Opis . . . . . . . . . . . . . . : Realtek RTL8169/8110 Family Gigabit Ethernet NIC
    Hardware address. . . . . . . . . : 00-18-F3-3D-6E-6C

    Tunelling card Teredo Tunneling Pseudo-Interface:

    DNS connection suffics :
    Description. . . . . . . . . . . : Teredo Tunneling Pseudo-Interface
    Hardware address . . . . . . . . : FF-FF-FF-FF-FF-FF-FF-FF

    DHCP on . . . . . . . . . . : No
    IP address. . . . . . . . . . . . . : fe80::ffff:ffff:fffd%6

    Default port . . . . . . . . . . :
    NetBIOS through Tcpip . . . . . . : off

    Can You kindly extend “macshift” capabilities in order to handle such cases.

    BTW Linux “macchanger” has similar problems. It changes (!) MAC, but after system reboot once again hardware MAC is valid.

  28. Mathew Cahill Mathew Cahill

    So I am trying to get around the one modem/customer policy of my ISP. I have a Motorola Sufrboard modem with a MAC address that is obviously not the one registered with my ISP. I have yet to find any way around this, as my modem is the ultimate MAC source. Am I correct in saying toying with any other MAC address (e.g. router, NIC) would not make a difference?

  29. You MIGHT be able to do the following:

    1. Find out the MAC of your modem (probably on a stick on the thing.)
    2. Unplug your PC from the modem/any WAN.
    3. Change the PC’s MAC to the one from the modem, using the information in the article.
    4. Plug in your router and use its MAC cloning feature (all good routers will have this feature, I know Linksys ones do.)
    5. Try to connect to the internet using the router.

  30. Bryan Bryan

    I’m Back…..
    As seen above, I’ve had no issues changing mac’s and subsequently IP’s when my pc is wired to my cable modem.

    I’ve gone wireless, Linksys (wrt54gs). Changed things accordingly in network connections and my commands. My ip changes, 101, 102, 103 and so on. The real IP on the cable modem doesn’t change however.

    Can someone please explain in the simplest of terms how one changes mac/ip with a wireless connection. Please

  31. Angus Angus

    I am connected to a hub in LAN, i cannot access to internet in order to connect i need to change my mac address.what would i do?i am using win20000.thanks.

  32. I’m a networking guru. I’ve seen, heard, and done just about everything there is to do, see, and hear about PC’s.

    I’ve heard of ISP’s cutting off user’s access to the Internet for downloading a lot of information…probably movies, music, etc.

    If you could change your MAC address, with ISP’s utilizing DHCP (90% of the time) how would they ever know how much info you had downloaded? That’s probably the best reason I can come up with to change you MAC.

    Another reason, if nothing else, is hackers like me. If I can’t get to your PC I can’t hack into it.

    I change my MAC religiously. (Time Warner Cable is my ISP) Every time I change it, I get a new IP address. What sucks about it is I have to go to my domain hosting company and change all of that info. (Not that I really give a shit but the process could be better) Web site is usually down about 12 hours after I change IP addresses.

    I don’t worry about hackers. I built the network from the ground up. (Routers, computers, both wired and wireless.) I’ve tried to hack it from the outside and I can’t get into it. I’d challenge anyone else to as well.




    Mark, I have a new wireless router, but dont know how to change the mac addresss….I know its simple. Any advice. Its a Linksys wireless router. —- thanks

  34. IronMike IronMike

    I tried using this to change the MAC of my laptop’s internal Broadcom wireless adapter, but it didn’t work. A registry entry was created with the changed MAC address, but running ipconfig/all showed no change from the original hard-coded MAC. I’m running Vista Home Premium. This Broadcom adapter also allows you to change its MAC using Device Manager/Properties/Advanced tab, but again such a change is not manifested according to ipconfig/all. I even opened up Vista’s Administrator acct to make the changes, but again to no avail.
    Any ideas anyone???

  35. Jimmy Jimmy

    ange your mac address via your router and reset your cable modem and you got an new ip, 90% of the time.

  36. Tom Tom

    Question … I know nothing about networking but can you change the mac address to an external modem? Thanks

  37. John John

    When i open macshift.exe i see a cmd window then closes right away in less than a second can someone help me please?

  38. Abraxas Abraxas

    The questions on this thread are pretty funny. OK, first:
    1) To the guy above me–this is a command-line tool. There is not pretty interface, which was the whole point of this page.
    2) This changes the address on your network card. It can’t change the address on your wireless router. If you want to do that, log in to your router and read the menus. It’s easy to do as well.

    Why would you want to change your MAC? To get by other people’s MAC filters on their wireless routers. And that little command-line program makes it a lot easier than doing it through the registry all the time, as I was previously doing, particularly when you switch access points that require different MACs. The fact that it resets the connection is a big saver.

    Finally, for those who are worried about viruses. . .the author includes the source code! You can read it from start to finish and see all the steps–it’s quite short and clear (if you wrote software, anyway). If you are really concerned, compile the source code yourself. Maybe you can add a GUI for the guy above!

  39. You can change your MAC address becouse you love the wireless free conection

  40. israel israel

    I downloaded this utility and hve had no luck figuring it out. I am not the computer savvy guy, I just want to hide my MAC. I downloaded the untility, extracted it, created a short cut to my desk top. I click the shortcut and the commandcom box flashes and thats it. Am I doing something wrong here? Can you guys help??

  41. israel israel

    Alright, I think I got it figured out???? I did look in ipconfig/all and see that it has not changed in there. Is it suppose too?

    Is there another way to view my MAC address, say, on the internet?


  42. Yoshi Yoshi

    Does this only works for XP or wil italso work in vista?

  43. dag dag

    I think I used this app a long time ago and it worked great. I just got a new Dell laptop and it has Vista and a wireless interface. The commandline response makes it seem like it’s working but ipconfig shows it’s not. I also did a disable/enable cycle just for kicks. Hmm…?

  44. Mike Mike

    Depending on the router you have, they often give you an option in the router admin to use a different MAC. Since the router connects to the modem (cable I assume), your IP won’t change since the MAC of the modem stays the same. You can’t change this MAC and your ISP knows the exact MAC of the modem. So, you basically will not be able to get a different IP. If you buy a new modem, the MAC changes, but then you need to call your ISP and tell them the new MAC”

    To let you know, the above is false. The CMTS in a cable plant does know the MAC address of the Cable Modem, and it gives the modem an internal IP from the cable plant.

    However, the Public IP (the one you surf the web with) is given out based on the MAC address of the device attached to the modem, IE your router or NIC.

    Unplug your Cable modem, change your MAC, plug in the cable modem, and get a new IP.

    This happens because the cable modem will report the MAC address of your router/NIC back to the CMTS. The CMTS will check it’s scopes to see if your MAC has an active lease for an IP address. Since it will not, the CMTS will make a new extry in it’s table and assign a new IP to the MAC.

    I work the second largest Cable Company in the US, so trust me on this. 🙂


    “If you could change your MAC address, with ISP’s utilizing DHCP (90% of the time) how would they ever know how much info you had downloaded? That’s probably the best reason I can come up with to change you MAC.”

    As I mentioned above, the Modem has an internal IP address that is assigned to it by the CMTS. This is based on the MAC address of the Modem, which you cannot change without serious modifications. (MacShift will not allow you to do this.) Traffic and bandwidth caps are not monitored by public IPs, they are monitored by this Internal IP/Modem MAC.

    So, changing your Router/NIC MAC to change your Public IP will not throw off the bandwidth monitoring that is done by your ISP.

  45. Bx Bx

    2 issues in XP:

    1) Intel 3945abg need to use driver from Sep/2007 … newer drivers appear to no longer support the NetworkAddress field

    2) MS doesn’t appear to clean up old network connection entries contains keys to every connection ever created … macshift worked up until I updated my drivers … while troubleshooting the resulting failure I had uninstalled the drivers several times which results in adding new keys to this network path … the problem is if you use the same name for all the network connections macshift has the potential to find the wrong key … it uses this key to locate the path to add the NetworkAddress … to fix this I manually located the current key in the registry and either change all the names of the old keys, Delete the old keys, or Rename the current connect with a unique name

  46. qs qs

    How to find WAN (PPP/SLIP) Interface, like a UMTS modem?

  47. Matt Matt

    I am a High School student who is trying to use his laptop for school work while at school. I have managed to stumble across the network key and I very much enjoyed having access to the resources needed for some of my school work. My school district has managed to find a way to periodically black list any MAC address that isn’t registered as a teacher’s laptop, however, leaving me without any connection at school. I am hoping to find a way to change the MAC address of my laptop that is running on Windows 7 ultimate and have found nothing but dead ends as of yet, as I know a limited amount of java, but no C++ with which to use your suggested code…. I would really appreciate some help, whether it be another solution or just an explanation of how to implement the code in this article

Comments are closed.