8

I read the answer to this question and tried to change my Mac's en0 MAC address. When I use ifconfing, it reports the newly set MAC address, but in Network Settings, it still reports the old one.

Using ifconfig: enter image description here

In Wi-Fi dropdown: enter image description here

I tried turning Wi-Fi on and off (using sudo ifconfig en0 up/down), still the same. Am I doing something wrong or is this a part of System Integrity Protection introduced in El Capitan?

The reason I think my MAC address hasn't changed, is that I use bandwidth restrictions using UniFi AP, but changing my MAC address doesn't seem to contravene those restrictions.

1
  • 1
    This is unlikely to be related to System Integrity Protection (SIP), as this only affects the ability to change /System and other files. Computer wide settings such as networking preferences and options are not affected by SIP. Commented Oct 11, 2015 at 13:27

2 Answers 2

5

It has nothing to do with SIP because the fact is you cannot change the actual physical MAC Address of a NIC in that manner as it is encoded in it's EPROM. You can spoof a MAC Address in that manner however the actual physical MAC Address of a NIC will always be that of which it was programmed until reprogramed in the EPROM. I changed my MAC to what yours reports, while ifconfig shows the spoofed address the actual physical MAC Address remains as it was originally programmed. Wireshark is reporting the spoofed address but that doesn't stop a hardware verification app that polling the actual physical hardware for its address from seeing the real address.

2
  • 1
    Yes, thank you. MAC address shown in Networking dropdown shows the physically hardcoded address, not the spoofed one. (Actually I found a buggy configuration with my UniFi AP and fixed that too!)
    – Behdad
    Commented Oct 12, 2015 at 8:42
  • 1
    I use SpoofMac. Works great.
    – james-see
    Commented Nov 15, 2015 at 5:58
6

I understand you are looking to actually change your MAC address, but in case you want to spoof it to appear as another MAC address, this is what I recommend:

Use SpoofMac. It just works. Here is how to get it and use it:

$ git clone https://github.com/feross/SpoofMAC.git
$ cd SpoofMAC
$ python setup.py install
$ cd scripts
$ python spoof-mac.py list
- "Ethernet" on device "en0" with MAC address 3C:07:54:55:71:41
- "FireWire" on device "fw0" with MAC address A4:B1:97:FF:FE:9E
- "Wi-Fi" on device "en1" with MAC address 68:A8:6D:1B:FE:E4 currently set to 00:E0:B8:1B:FE:E4
$ python spoof-mac.py set 00:00:00:00:00 en1 # or whatever mac address you want

Hope that helps anyone trying to change their perceived mac address and failing.

4
  • 1
    Works fine for me. Thank you! The only difference is that that needs to use the set command to change: Usage: spoof-mac list [--wifi] spoof-mac randomize [--local] <devices>... spoof-mac set <mac> <devices>... spoof-mac reset <devices>... spoof-mac normalize <mac> spoof-mac -h | --help spoof-mac --version Edited the answer with this change. Commented Mar 5, 2016 at 15:09
  • @BrunoCandidoVolpatodaCunha great! Glad it worked.
    – james-see
    Commented Mar 5, 2016 at 15:15
  • 7
    No need to clutter up your system, just run brew install spoof-mac and then sudo spoof-mac randomize en1
    – dhchdhd
    Commented Apr 4, 2016 at 16:05
  • @Barry nice glad to see it is homebrew. Cheers
    – james-see
    Commented Apr 4, 2016 at 16:15

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .