Spoofing Leopard’s MAC address

posted in the early evening by Constantinos. Filed under Code, OS X, Terminal

This post was originally published in 2008
The tips and techniques explained may be outdated.

There are many legitimate reasons why someone would want to spoof a system’s MAC address. In my case, my University binds our network ports to a specific computer’s MAC address, and only allows you to reset that address once a week. My problems start when I want to switch my two computers for whatever reason, and connect my smaller iBook to the wall (let’s say I want to keep a web server online, but wish to take my MacBook Pro on the road).

In Tiger, it was very easy to spoof a MAC address:

sudo ifconfig en0 ether 00:00:00:00:00:00

where en0 is the network interface you wish to change the MAC address of, and 00:00:00:00:00:00 is the target MAC address. With Leopard, that line no longer works. No matter how much I searched, I couldn’t find a solid alternative. Turns out, it’s extremely simple:

sudo ifconfig en0 lladdr 00:00:00:00:00:00

That’s it!
Note: This has been tested under 10.5.1 with both en0 and en1, and at least for the wired interface it works as advertised.

64 Responses to “Spoofing Leopard’s MAC address”

  1. 1. Comment by Sam
    on 2008-01-22 @ 2.37 pm · Quote #2172 ·

    Hi, I was very excited by your post — I’ve been looking for something like this since Leopard came out. But I’ve had any success in applying it — it still doesn’t seem to work.

  2. 2. Comment by Constantinos
    on 2008-01-22 @ 3.54 pm · Quote #2173 ·

    I believe ifconfig will try to verify the mac address, and expects a somewhat reasonable one. Why don’t you try this: type ifconfig en0 | grep ether to get your current ethernet mac address, then use the above command to change the mac address by only 1 digit (the last one). So if your mac address is 00:16:cb:8e:54:d2 then try changing it to 00:16:cb:8e:54:d3 or something similar. Then check your current mac address again. If it still doesn’t work, then I’ll need to revisit the hint. Maybe you need the developers tools installed… Don’t know for sure.

    If it does work, then you need to supply it with a ‘real’ mac address, meaning it has to be possible, which is most likely defined by the first four characters (the brand id for the IC). Let me know how it works out!

  3. 3. Comment by Constantinos
    on 2008-01-22 @ 3.59 pm · Quote #2174 ·

    Or maybe not… This worked on an iBook G4, which is the one I needed to spoof the mac address of. Now I can’t get it to work on my MacBook Pro. Could be a hardware issue, needs re-examination.

  4. 4. Comment by pig345
    on 2008-01-24 @ 1.03 am · Quote #2176 ·

    Yes, I can’t get it to work on MacBookPro3,1 with 10.5.1 too!

  5. 5. Comment by Constantinos
    on 2008-01-24 @ 1.11 am · Quote #2177 ·

    And I just verified that en0 doesn’t spoof on MacBook Pro, or the new MacBooks (I’m guessing it won’t spoof on older MacBooks either…)

    However, en1 does spoof using this method. Intriguing. I wonder what kind of safeguards are in place.

  6. 6. Comment by nofxx
    on 2008-01-27 @ 12.33 pm · Quote #2187 ·

    On the same boat…. but Im trying with my usb dongles:
    Edimax / rt73 , and Alfa based on realtek 8187l .. both works great on leopard, but doesnt seems to change the mac….
    sad…

  7. 7. Comment by Matt Sayler
    on 2008-01-28 @ 4.42 pm · Quote #2191 ·

    “However, en1 does spoof using this method. Intriguing. I wonder what kind of safeguards are in place.”

    Given that it works in some cases, I’d put my money on the hardware not supporting/being programmed not to support changing MACs. There are certainly plenty of cards that don’t let you do so; OS X seems to just pass the request along to the hardware.

  8. 8. Comment by Constantinos
    on 2008-01-28 @ 4.49 pm · Quote #2192 ·

    Given that it works in some cases, I’d put my money on the hardware not supporting/being programmed not to support changing MACs. There are certainly plenty of cards that don’t let you do so; OS X seems to just pass the request along to the hardware.

    Actually, under Tiger, the same hardware could be spoofed using the first command. So I’m fairly certain that it’s a leopard thing, hence there has to be a way around it.

  9. 9. Comment by Jim B
    on 2008-01-29 @ 2.59 am · Quote #2194 ·

    I tested this *a lot* when I first upgraded to Leopard on a MBP 2,1. It’s undoubtedly a driver issue. I was able to downgrade to Tiger 10.4.11 network drivers and it all worked except the wired connection would be really unstable and eventually stop working to the point where only a reboot would fix it. Wireless worked without issues. I haven’t tried this trick again since updating to 10.5.1.

    Also: Leopard’s network drivers appear to be signed where Tiger’s weren’t. This may be a roadblock of indeterminate significance.

    DTrace might reveal why the ifconfig en0 lladdr isn’t doing anything but I haven’t been motivated enough to learn enough D to dig into it.

  10. 10. Comment by Constantinos
    on 2008-01-29 @ 1.54 pm · Quote #2197 ·

    I’ve heard that older versions of Intel Macbook and MBP can spoof the en0 mac address, so I am pretty sure that this is a driver issue.

    I have a first-gen MBP, 17″ 2.16GHz, and I could spoof the en0 address just fine under Tiger. I am certain it’s a driver issue, and if the drivers are signed then I guess there’s little to be done…

  11. 11. Comment by GMB
    on 2008-01-29 @ 1.04 pm · Quote #2196 ·

    I have a Macbook Pro 2.4 and I can’t spoof my en0 mac address in Tiger or Leopard. The funny thing is that I can spoof the address using a Windows Vista partition in bootcamp.

    Also, spoofing the mac address in en1 (wireless) works on Tiger and Leopapard.

    I’ve heard that older versions of Intel Macbook and MBP can spoof the en0 mac address, so I am pretty sure that this is a driver issue.

    I wonder if you could do this using the Macbook Air usb ethernet dongle. Or if samebody could change the current ethernet driver for Leopard…

  12. 12. Comment by Great Britain
    on 2008-02-14 @ 1.44 am · Quote #2223 ·

    This issue has yet to be resolved in 10.5.2. I hope apple eventually takes notice.

  13. 13. Comment by Nando Vieira
    on 2008-02-26 @ 5.11 pm · Quote #2238 ·

    Tried on a Macbook with 10.5.2, Xcode installed, without success. Used to work when I had Tiger installed.

  14. 14. Comment by nofxx
    on 2008-02-27 @ 2.30 pm · Quote #2240 ·

    Confirm, 10.5.2 doesnt solve this.

    Having to use linux in some places to connect… fix it apple!

  15. 15. Comment by shams
    on 2008-03-17 @ 3.25 pm · Quote #2258 ·

    do you have some (great) news about spoofing wired mac adress on leopard?

  16. 16. Comment by Constantinos
    on 2008-03-17 @ 3.31 pm · Quote #2259 ·

    do you have some (great) news about spoofing wired mac adress on leopard?

    Sorry, no…

  17. 17. Comment by diehortusxana
    on 2008-03-21 @ 4.45 pm · Quote #2261 ·

    hello You there!
    I also have a brand new MacBook Pro, 15″.
    And the point is, that I can spoof en1, but cannot en0.
    On Tiger, everithing was cool, the leopard hmmmmm

  18. 18. Comment by shams
    on 2008-04-02 @ 4.31 pm · Quote #2266 ·

    I can spoof en1, but cannot en0.
    On Tiger, everithing was cool, the leopard hmmmmm

    like everyone else here! It’s horrible, I have to launch XP through parallels desktop to have internet…
    :(

  19. 19. Comment by Michal
    on 2008-05-02 @ 10.42 am · Quote #2277 ·

    Shams (and others), there is a workaround. You can share your XP connection (as it is possible to spoof ethernet address there) back to OSX:

    http://www.macosxhints.com/article.php?story=20070412080405868

    Hope it helps.

  20. 20. Comment by Toro
    on 2008-06-10 @ 11.53 pm · Quote #2299 ·

    I have a MacBookPro too, I want to spoof with en1 with following:
    ifconfig en1 lladdr 00:00:00:00:00:00
    my mac says then ifconfig: ioctl: (set lladdr): Operation not permitted
    ???

  21. 21. Comment by Constantinos
    on 2008-06-10 @ 11.56 pm · Quote #2300 ·

    I have a MacBookPro too, I want to spoof with en1 with following:
    ifconfig en1 lladdr 00:00:00:00:00:00
    my mac says then ifconfig: ioctl: (set lladdr): Operation not permitted
    ???

    You need root privileges, did you use sudo ?

  22. 22. Comment by Daniel
    on 2008-07-01 @ 6.37 pm · Quote #2345 ·

    Sorry. Didnt work with 10.5.3…

    Cheers
    Daniel

  23. 23. Comment by Slywood
    on 2008-07-10 @ 5.12 am · Quote #2369 ·

    Did anybody tried with 10.5.4?

  24. 24. Comment by medecau
    on 2008-07-11 @ 9.07 am · Quote #2374 ·

    macbook with os x 10.5.4
    can spoof on en1 but no luck on en0.
    to spoof en0, airport must be off.

  25. 25. Comment by Lucas
    on 2008-07-11 @ 11.17 am · Quote #2375 ·

    I tried with 10.5.4, didn’t work :(

  26. 26. Comment by Slywood
    on 2008-07-12 @ 2.09 am · Quote #2379 ·

    Are you saying that if I turn off the airport it would work!

  27. 27. Comment by seoci
    on 2008-07-18 @ 2.23 pm · Quote #2400 ·

    I just tried turning off airport before changing the mac for en1. It works if airport is down >.<

  28. 28. Comment by Stallon
    on 2008-07-28 @ 5.32 pm · Quote #2435 ·

    no it does not work on 10.5.4 even if airport (en1) is down…

    i read somewhere about using the ifconfig binary from FreeBSD and putting in the appropriate folder, though i havent tried it personally…

  29. 29. Comment by Jesterpaul
    on 2008-07-31 @ 6.52 pm · Quote #2448 ·

    I run a macbook with 10.5.4. I’ve tried with airport on and off, and I can get neither en0 or en1 to change.

    I get the error “network down” in the response in Terminal.

    I hope someone can solve this one.

  30. 30. Comment by eric
    on 2008-08-06 @ 4.05 am · Quote #2469 ·

    try:
    su -
    and then issue the command without sudo

  31. 31. Comment by ac
    on 2008-08-15 @ 12.15 pm · Quote #2506 ·

    I found a way to change a MAC on Airport (en1) on latest MacBook (MB403 model), Leopard 10.5.4.

    1. Turn off airport. Use airport icon on menu bar (top of your screen). DO NOT use ifconfig en1 down, it wouldn’t work!!!
    2. Fireup Console and type “sudo -s” (without qoutes).
    3. Type “ifconfig en1 lladdr 00:11:22:33:44:55″ (without quotes) and hit return.
    4. Turnon airport using airport icon.

    That’s all.

    If you’ll have any questions email me at ur.liamnull@sLaLsLdLiLcLa (remove all capital “L”).

  32. 32. Comment by gregzone
    on 2008-08-19 @ 3.32 pm · Quote #2521 ·

    Just tried the approach left by ac…
    Worked for me…
    MacBook 10.5.4
    Thanks

  33. 33. Comment by bax
    on 2008-08-21 @ 8.47 pm · Quote #2529 ·

    i tried on leopard on a macbook. works for en1, does NOT work for en0

    so airport yes, ethernet NO

  34. 34. Comment by ticller
    on 2008-09-01 @ 10.48 pm · Quote #2528 ·

    yeah it works… is there a way to make the spoof permanent working… when shut down my notebook i have to run the terminal script again at the next startup

  35. 35. Comment by AB-UK
    on 2008-09-24 @ 12.45 pm · Quote #2584 ·

    Tried this on a MB Air with the wired interface being en1 running 10.5.5 … no joy. Has anyone had any success?

  36. 36. Comment by Wouldntuliketoknow
    on 2008-09-25 @ 4.49 pm · Quote #2587 ·

    I’ve been trying this for a while i just updated to 10.5.5 on my brand new macbook and nothing…… it stays the same everytime some help please…. All of these forums are the same there scetchy! thanks for help in advance

  37. 37. Comment by loco
    on 2008-09-30 @ 4.19 am · Quote #2597 ·

    Thanks for the tip, ac (comment #32). This worked great for me. I am using an iMac Intel Core 2 Duo with Mac OS X Leopard 10.5.5 and it worked great for my Airport Extreme card. The tip in the article did not worked for me. Thanks a lot!

  38. 38. Comment by Antonio Carlos Silveira
    on 2008-10-16 @ 1.39 am · Quote #2633 ·

    Hi Guys,
    any news on how to spoof the Ethernet mac address on MBP (leopard)?

    Thanks in advance.

  39. 39. Comment by slipttees
    on 2008-10-26 @ 1.05 am · Quote #2676 ·

    sudo -s
    ifconfig en0 down
    then type command from change mac
    ifconfig en1 lladdr your_new_mac
    ifconfig en0 up

    ;-)

  40. 40. Comment by PiotrS
    on 2008-10-27 @ 11.03 pm · Quote #2690 ·

    sudo -s
    ifconfig en0 down
    then type command from change mac
    ifconfig en1 lladdr your_new_mac <— is this a trick (en1) or mistake?
    ifconfig en0 up

    if this is not a trick (i doubt), then it DOES NOT work, man. Next time, please, check before you post, as many will lost time checking
    useless tips. No offence, I’m just getting bored seeing such unverified posts :/

    Somebody might check whether it is possible to spoof mac address
    on USB LAN ethernet adapters, and give a brand if worked.

  41. 41. Comment by loco
    on 2008-10-28 @ 2.11 pm · Quote #2692 ·

    Since the latest software update for the wlan released from Apple, this trick is not working anymore for me. What a shame. Before the update it worked great.

  42. 42. Comment by James
    on 2008-11-01 @ 9.11 pm · Quote #2704 ·

    I found it didn’t work on my iMac running Leopard. But I got it to work in the end.

    I disabled airport in the System Preferences and then changed it. When I enabled the airport card the mac address changed. I checked this on my router and it spoofed it.

  43. 43. Comment by MBA
    on 2008-11-27 @ 2.50 pm · Quote #2780 ·

    Hi.

    Doesn’t work with the MacBookAir second generation. 10.5.5

    en0 is relevant and the MAC address won’t change.

    Any solution would be highly appreciated. :-)

    Cheers

  44. 44. Comment by me
    on 2008-11-29 @ 7.33 am · Quote #2783 ·

    Model Name: MacBook
    Model Identifier: MacBook3,1
    Processor Name: Intel Core 2 Duo
    I have tried every option on this blog. To no avail. If anyone figures this out let me know.
    Im running leopard 10.5 Build 9F33
    This is driving me nuts. I have tried many methods turn off airport and try sudo…and get this ifconfig: ioctl (set lladdr): Device power is off
    ive tried the sudo -s it goes to bash do the ifconfig and nothing. Is it a hardware issue?

  45. 45. Comment by Me-again
    on 2009-01-21 @ 6.37 am · Quote #2903 ·

    I’ve found a way to change the MAC address of a machine, albeit in a very convoluted way.

    I have VMWare Fusion installed, with it, I created a VM image of Coyote Linux (google for it) having a host-only network and a bridged interface. The MAC address of the bridged interface can be changed at will. Now I just start this VM (very limited space, less than 120 MB, and only uses 40 MB of RAM), change my default route (in this case “route change default 172.16.140.2″, the address of my VM on the host-only network) and that’s it. I had to do it because of an hotel (unjustified to me) ban.

  46. 46. Comment by müzso
    on 2009-02-01 @ 3.53 am · Quote #2919 ·

    I’ve come to the same idea as Jim B. suggested in comment#10. However I’ve done it with 10.5.6 (Jim used 10.5.0) and replacing drivers from 10.4.11 (same as for Jim). I’ve not tested it for days, but in a couple of hours I’ve not experienced any problem with the network connection. I’ve used ipfw and Little Snitch to filter incoming and outgoing connections, torrent downloads to test a higher number of connections, SSH connections and file transfer over SFTP. None of these triggered any error. I’ve documented the driver replacement process on the link supplied as “website” for this post.

  47. 47. Comment by Sunny
    on 2009-03-08 @ 4.04 pm · Quote #2970 ·

    Nothing would work for me… I have a macbook pro 2nd generation running leopard 10.5.6 Nothing worked for me until a friend gave me this command.
    1) Make sure your airport is on, but not connected to any networks.
    2) In terminal type command sudo ifconfig en1 lladdr (mac address here)
    Personal not when typing command do not put mac address in parentheses
    then to make sure it worked, enter:

    ifconfig en1 | grep ether

    And it should show the new MAC address. Enjoy

  48. 48. Comment by bkb3000
    on 2009-03-08 @ 8.11 pm · Quote #2972 ·

    Sunny’s step #1 is critical — nothing worked for me until I disconnected airport my network but left it on (10.5.6).

  49. 49. Comment by stop wasting our time
    on 2009-03-16 @ 4.36 pm · Quote #2982 ·

    If you’re not smart enough to enable the wireless interface before trying to change the wireless mac address, then you need serious help.

    The issue here occurs when trying to change your ethernet (NOTE: NOT WIRELESS) mac address under Leopard on a 2nd gen Macbook Pro. It sounds like nothing outside of installing older Tiger ethernet drivers works, and I can’t verify that fix because I don’t have Tiger handy.

    So unless you have a Macbook Pro with Leopard installed, and have a way change the ethernet mac address (en0), stop wasting our time by suggesting fixes that don’t work. There never was an issue changing the mac address of the wireless interface, unless ofcourse you think enabling the interface is an issue that needs discussion.

  50. 50. Comment by lemonteh
    on 2009-03-19 @ 11.11 am · Quote #2987 ·

    Following Sunny’s method, ifconfig en1 | grep ether shows the updated address but in Network Preferences, click on AirPort and advanced, the MAC address shown is still the original one.

    My router still recognized my wireless as the original MAC address.

  51. 51. Comment by jon
    on 2009-03-29 @ 10.39 am · Quote #2997 ·

    nothing works

  52. 52. Comment by ConMac
    on 2009-04-03 @ 5.56 am · Quote #3003 ·

    Using an Unibody MacBook 2.4 GHz running 10.6, I though that I was never going to get it to work. The key is that your Airport MUST BE ON, AND MUST NOT BE CONNECTED TO A NETWORK. This allows you to use the normal sudo ifconfig en1 lladdr [MAC] successfully!

  53. 53. Comment by Deviacium
    on 2009-04-24 @ 8.13 am · Quote #3038 ·

    Mac Address is easily spoofed on _wireless_ networks (i assume – considered _wireless_ by the OS – more later). For airport try

    sudo ifconfig en1 ether aa:bb:cc:dd:ee:ff
    sudo ifconfig en1 lladdr aa:bb:cc:dd:ee:ff

    if this doesn’t work try this:

    /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -z
    /sbin/ifconfig en1 lladdr 00:00:AA:8b:51:15
    /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport –mac=00:00:AA:8b:51:15
    /sbin/ifconfig en1 down
    /sbin/ifconfig en1 up
    /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -s
    /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -a
    /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -a

    Should work for any mac.
    And wired interfaces simply do not allow to change mac (or whatever – it says nothing, just doesn’t change address).
    Concerning wireless and wired interfaces. I got usb wi-fi dongle from d-link – and it is considered _wired_ interface. So i cannot change my mac on it.

    Still searching solution.

  54. 54. Comment by Bruno McStick
    on 2009-05-02 @ 10.59 pm · Quote #3050 ·

    Hi guys

    I’m on ethernet (not wireless – just a wired linksys router) and am still unable to spoof my mac’s address under OS X 10.5.6.

    It gives me the option to put in my p/w but after I do this the standard terminal line reappears, and when I enter the code to check the current mac addres it just re-shows my original ‘real’ address.

    Any hints or tips would be really appreciated as I’ve tried following the above to an extent but am now just totally lost!

  55. 55. Comment by nelfisch
    on 2009-05-17 @ 7.20 am · Quote #3063 ·

    Hej
    im trying to run this methos on my macbook unibody 2,0 ghz with leopard 10.5.6.
    but it wont work, i tryed even all of ur suggestions.
    any more solutions?
    p.s: i wanna change the mac adresse of my aiport(wireless)

    mysteriös

  56. 56. Comment by switch
    on 2009-06-22 @ 4.10 pm · Quote #3100 ·

    works with osx10.5.7 on latest “all silver” macbook pro. On both en0 and en1 (wired and wireless). The network interfaces have to be disconnected but switched on at the time of mac spoofing ;)

  57. 57. Comment by incessantmace
    on 2009-07-21 @ 4.10 pm · Quote #3581 ·

    The issue here is the 802.11 standard and vendor implementation.

    Firstly there are two types of Radio chipsets being manufactured today.
    Hardware based and Software based.

    This distinction is very important to note as managing the bulk of 802.11 traffic on your machine can be done in either software (depending on your wireless chipset) or hardware (again chipset dependent). When I say software I mean the OSX kernel may be responsible for some of the interface and traffic management and sometimes only in certain situations. Its a very complex issue to explain without launching in to the 802.11 standard in depth. I’ll try to summarize below:

    The 802.11 standard is complicated. Very complicated. Just consider for a moment that 802.11 is a layer two protocol that has its own built-in-retransmission and fragmentation support (not even mentioning the optional power-savings mode). Pushing all this complexity down into layer two has created some design issues that have never come up before in commodity networking hardware-namely, where to draw the line between hardware and driver and where to draw the line between driver and OS proper. Where these lines are drawn has very real impact on what you can persuade a chipset to do that it might not otherwise do. (ie: change your mac address or spoof a packet for injection etc)

    When your operating system wants to send an Ethernet packet, the kernel forms a simple 14-byte Ethernet header, prepends it to the layer three packet (IP in most cases) and hands it off to the Ethernet hardware to put it on the wire. In the worst case scenario, the Ethernet card causes a collision (or two), backs off randomly, and transmits until it succeeds.

    Now what happens when your operating system wants to send out an 802.11 data packet? Well, the kernel might create the 802.11 header itself, pass it off to the card along with the payload, and forget about it. But what happens then? A lot. There are 126 pages of state transition diagrams inside the 1999 revision of the 802.11 standard describing exactly what should happen if you’re curious, but here are a few highlights.

    First, the card/driver needs to ensure that the media is not physically busy at the time the sender wishes to transmit. This is the easy part and is called a clear channel assessment in the standard.

    Second, the card/driver also is responsible for keeping track of various other state information related to media access control. One example is to make sure that it doesn’t step over another client’s Clear To Send (CTS) window. Once the card has decided it’s okay to transmit, it needs to switch the radio into transmit mode (recall the cards are half-duplex) and send the packet. Immediately after transmission, the card switches back into receive mode. If the card/driver does not receive an acknowledgment (ACK), then it needs to back off and retransmit. There are other factors it must consider as well (Request To Send (RTS) thresholds, fragmentation, and so on) but this should get the point across.

    The question remains, however: who is responsible for all that overhead related to media access control, the driver (software) or the chipset (hardware)? If the answer is software, then you might be able to bypass as much of the protocol as you would like and transmit arbitrarily crafted packets (forged deauthentication packets, for example). If the answer is hardware, you are generally at the mercy of the chipset as to what you may or may not transmit(this includes having the ability to do a simple mac address change). If all you want to do is get a card into monitor mode, this may not be such a big deal. As soon as you want to start injecting packets (and many new techniques that take advantage of this are surfacing), it becomes very important. If the chipset itself (hardware) is responsible for generating control or management packets, it might not let you send them yourself.

    In summary then. When you tell an Ethernet card to send a packet, you are telling it to send the packet. It’s not going to examine the packet to see if it likes what you are trying to send, and it’s not going to wait around very long to transmit. When you tell a wireless card to transmit, you are suggesting it start transmitting at its soonest possible convenience, assuming it agrees with your payload.
    This extends to any form of interface management as well. When you tell your ethernet card to change its mac address you’re merely suggesting it. If it feels like it, depending on what kind of radio chipset is in your macbook pro and who’s responsible for interface management and other low end functionality, you will either be successful at changing your mac address or you won’t. Its down to the type of radio chipset in your macbook pro and the driver/hardware management boundary.

    With your wired ethernet card these problems don’t exist. It is managed entirely in software through the osx driver. When you tell it to change its mac address you are ‘TELLING’ it. Its not a suggestion. It must conform. Its a trivial matter to change wired mac address and an entirely different matter altogther on the wifi side.

    This explains why you keep getting varying results that make little sense and have no pattern. Its got nothing to do with your version of osx and everything to do with your radio chipset.

    I hope that clears it up somewhat.

  58. 58. Comment by Wayfarer
    on 2009-08-21 @ 7.11 pm · Quote #4514 ·

    For some reason, I cannot get this to work on 10.5.8 on the newest firmware for everything. I have a new Macbook Pro, 17″, that came out summer 2009. Anyone have any thoughts?

  59. 59. Comment by foundit
    on 2009-08-23 @ 10.38 am · Quote #4582 ·

    download changemac 1.6. Liitle gui that changes it on a button click. My imac is only changing the en0 but not en1(wireless) my friends is the other way round. Worth a try.

  60. 60. Comment by koaps
    on 2009-09-01 @ 6.37 pm · Quote #4876 ·

    i tried it on my powerbook g4 with 10.4 and I was able to change en0(wired) with no issues, but en1(wireless) will not change.

    I tried everything listed here and nothing works.

  61. 61. Comment by changemymac
    on 2009-11-21 @ 4.21 am · Quote #7230 ·

    changemac 1.6 does not work with 10.5.8 and a MacBookPro 5,1. I ran the app and checked with wireshark.. No dice on the mac add change… any suggestions???

  62. 62. Comment by Nopstnz8
    on 2010-02-28 @ 9.59 am · Quote #11392 ·

    Thanks a ton. This seems to work very well in Snow Leopard. I am testing it at my University, and after initiating the command, it logged me out of Cisco, which I then successfully logged back in, and terminal also verified I had the MAC address 00:00:00:00:00:00

    Thanks again.

  63. 63. Comment by Lithiumion
    on 2010-11-02 @ 8.10 am · Quote #19989 ·

    @ incessantmace

    This was a great way to explain something that is deeply complex. Bravo!

  64. 64. Comment by Dave
    on 2011-07-20 @ 5.42 am · Quote #34442 ·

    I was able to get this to work for both wifi and ethernet. The most important step is that you must be completely disconnected from your network. For ethernet, this involves disconnecting the cable. For wifi, you can try a complicated method outlined at http://d-downunder.blogspot.com/
    The difficult thing with wifi is that if you have the password saved in your keychain, it will automatically reconnect to the network, which you don’t want.
    An easier way to disconnect from wifi, as highlighted by Deviacium is simply to type sudo /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -z

    It is awkward that this command is hidden deep inside PrivateFrameworks, but at least it works.
    Once you are disconnected from the network, simply type the following (replace 00:11:22:33:44:55 with the MAC address of your choice):

    To change the ethernet MAC address, type:
    ifconfig en0 lladdr 00:11:22:33:44:55

    OR

    To change the wifi MAC address, type:
    ifconfig en1 lladdr 00:11:22:33:44:55

    To confirm that the MAC address has been changed, type ifconfig en0 for ethernet, or ifconfig en1 for wifi.

    These steps worked perfectly on a 2009 core 2 duo MacBook Pro running Snow Leopard.

Leave a Reply

Click to quote selected text