5

In macOS Sierra, for some reasons, I would like to change my MAC address and I would like that this change survive a reboot.

How can I do this?

  • 2
    Spoofing a MAC address is temporary as you can't actually change it. Why do you need to have the same address? – Allan Apr 24 '17 at 20:10
  • Because I use a network where there is a fixed association between IP address and MAC address, and I also need to keep the same IP address. – Ortomala Lokni Apr 24 '17 at 20:24
  • 5
    So, there's some sort of accounting and authentication in place like RADIUS. What you should do is contact your help desk or support organization, let them know that the adapter is lost. They will update the system with you new MAC address. – Allan Apr 24 '17 at 20:32
  • You're right and that's what I've already done. This a temporary trick. – Ortomala Lokni Apr 24 '17 at 20:43
  • You want to "permanently" change your MAC address, as a "temporary trick"? After already taking the correct approach? I am confused! – Lightness Races in Orbit Apr 25 '17 at 0:53
6

If you have Homebrew, install SpoofMAC with

brew install spoof-mac

You can also install SpoofMAC with pip, or directly with:

git clone git://github.com/feross/SpoofMAC.git
cd SpoofMAC
python setup.py install

Add a local.macspoof.plist file in /Library/LaunchDaemons:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
        <dict>
            <key>Label</key>
            <string>MacSpoof</string>    
            <key>ProgramArguments</key>
            <array>
            <string>/usr/local/bin/spoof-mac.py</string>
                <string>set</string>
                <string>ca:fe:ca:fe:ca:fe</string>
                <string>en4</string>
            </array>   
            <key>RunAtLoad</key>
            <true/>
</dict>
</plist>

Adapt the interface name and address to your need then reboot.

Then load the launch daemon:

sudo launchctl load /Library/LaunchDaemons/local.macspoof.plist 

P.S.: There is a similar question Change MAC address in OS X Yosemite but the question is not about permanent change and is only for Yosemite.

  • You can't permanently change a MAC address by spoofing. – Allan Apr 24 '17 at 20:12
  • It change the MAC address at each boot. So it's kind of permanent. But effectively if you remove the plist file the "hardware" MAC address comes back. – Ortomala Lokni Apr 24 '17 at 20:26
  • Or if you boot into Safe Mode, or from the Recovery Partition, or from Internet Recovery. If your Mac goes sideways for any reason, when you try to do Internet Recovery, you will find yourself locked out of access. – Allan Apr 24 '17 at 20:33
  • This will not be the case because I've Internet access without MAC address control. – Ortomala Lokni Apr 24 '17 at 20:44
  • Any particular reason why to use en4? I used en0because that's where my WI-FI interface is, but it doesn't seem to work. – rraallvv May 15 '18 at 14:30
0

MAC address is always fixed based on the hardware NIC interface. You can spoof the Mac address but it wouldn't be ensured that it will remain spoofed with latest software updates etc.

You must log in to answer this question.

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