
macOS no longer allows changing wifi mac address - MilnerRoute
https://slashdot.org/submission/10504880/macos-no-longer-allows-changing-wifi-mac-address
======
userbinator
There are others here who say this is a bug, not a feature, and I agree; and
having looked through the open-source code that Apple releases, I have a
reasonable guess of how this happened.

Apple seems to have an internal developer culture that basically does not
value backwards-compatibility nor stability, and instead really loves
rewriting huge pieces of code all the time. If you look at the OSS that it
releases, you'll see interfaces between the various components change greatly
between versions and lots of other churn. There are many places which look
unimplemented, with only stub functions present. With such a situation, it's
not hard to envision how a simple "change the MAC address" function could've
gotten left out of some piece during a rewrite, because it otherwise does not
affect basic functionality.

I really recommend downloading the OSS from Apple and inspecting it; the
pieces it copied from BSDs etc. are relatively stable, but the amount of churn
in other pieces is surprising to see.

~~~
LeoNatan25
This is true about all walks of Apple software, sadly, from file syncing to
Bonjour (mDNSresponder) to UI frameworks to developer tools to consumer
applications. Apple developers rewrite software in a butterfingered way on a
consistent basis, creating software that lacks any design, missing large
chunks of functionality and often lacks any kind of polish or coherency.

Other problems in the dev culture accentuate this problem even further. It
seems there is a complete lack of dependency graph between the software
stacks; apple engineers who opt to rewrite a piece of software or
functionality have no documentation or idea how the software is used or was
originally intended to be used, be it inside Apple or otherwise, often causing
serious design-level bugs, often resulting in major rollbacks. The lack of any
QA work is also very apparent, especially in recent years, where simple bugs
and glitches are allowed to go through, let alone major rewrites. The only
tool to counter this is radar/feedback assistant, which are tools well
documented in their inefficiency from current and ex Apple developers
themselves.

I don't think this should solely fall on Apple developers, of course. As is
often the case, such inherent problems in culture are due to lackluster
management. This has been hinted at by many ex Apple engineers.

~~~
ohithereyou
>Apple developers rewrite software in a butterfingered way on a consistent
basis, creating software that lacks any design, missing large chunks of
functionality and often lacks any kind of polish or coherency.

The day they completely gimped Disk Utility is the day I started looking to
move off macOS.

~~~
DonHopkins
Please, many people consider that term offensive.

The politically correct wording is now "The day they completely photoshopped
Disk Utility is the day I started looking to move off macOS."

~~~
devy
Pardon my ignorance, what does "photoshopped Disk Utility" mean? I get the
reference between GIMP vs. Photoshop, but what does it mean by
"gimped/photoshopped" an application?

~~~
toyg
It’s a joke: gimp as derogatory slang [0] should not be used, so you use...
Photoshop.

[0]
[https://en.m.wiktionary.org/wiki/gimp](https://en.m.wiktionary.org/wiki/gimp)

~~~
benj111
Ok so before today I thought the issue was gimp masks and such.

Is this not the same as 'cripple'

If I call you a cripple, that's an insult, if I call some software crippled,
that's acceptable?

The first definition I got btw was "A limp".

~~~
nkrisc
Saying some software is crippled (adjective) is fine as you're using the word
as its meant to be used (perhaps someone intentionally removed some critical
capability). If you, for some reason, referred to some software as a "cripple"
(noun), some people might find that offensive as you're using a deragotory
term for someone with a physical disability as a way to express something as
being undesirable or bad.

I don't know if you're a native English speaker or not, but one letter in this
instance can make a big difference. The context is subtle but very different.

~~~
benj111
Gimped is an adjective just like crippled, thus my comparison.

I am (literally) a native English speaker, gimp isnt used much in the UK, as I
said, I associate it more with gimp masks, so I'm trying to work out if it's a
legitimate grievance, or if it's someone being overly PC for humours sake.

~~~
nkrisc
Fair enough. In this case it seems like it was intended as a joke, but I could
see somebody actually getting offended.

Also upon rereading my comment, I hope it didn't come across as condescending
in any way, I didn't mean it to but it does line of read that way.

------
bob1029
I am still having a really hard time finding a reason to upgrade my late-2013
MBP (which I am currently typing this on) to any of their newer hardware.
Every generation that came out was "meh, 5% more perf, 10% more bullshit
compromise".

At this point, I am looking forward to October 22nd. I will be checking out
the new surface laptops as a replacement. I think I was already sold when the
presenter removed the top cover on stage. I really enjoy the UX that macOS
affords, but Apple is simultaneously so abusive to developers and tinkerers.
It's hard to reason with and I just feel like I am done with them at this
point. I'll get a new battery installed on this machine and keep it around as
an emergency iOS app build agent (for as long as latest Xcode->macOS->my
hardware are supported, that is).

Ideally, we move all of our client's B2B apps onto UWP/Android/PWA so I don't
even have to maintain a build path to the hellhole that is iOS applications.
My life as a developer could just consist of a Microsoft/Android stack and
that would be so wonderful. I'd never have to leave visual studio again.

~~~
bradly
Why are you looking for a reason to upgrade? If you don’t have a reason to
upgrade that is a positive, not a negative. Lots of MacBook Pro users seem to
be upset they don’t have a good reason to spend thousands of dollars on a new
laptop.

~~~
jdnenej
It's the result of a lifetime of marketing and consumerism. How could you
possibly be happy if you aren't buying something new constantly?

~~~
arvinsim
Your statement would apply more to buying a phone than buying a laptop.

------
glerk
According to this:
[https://github.com/feross/SpoofMAC/issues/87#issuecomment-52...](https://github.com/feross/SpoofMAC/issues/87#issuecomment-528147607)
the issue will be resolved in the next Mac OS version (10.15 Catalina)

------
ConcernedCoder
Fixed in Catalina @ 10.15
?[https://github.com/feross/SpoofMAC/issues/87#issuecomment-52...](https://github.com/feross/SpoofMAC/issues/87#issuecomment-528147607)

~~~
simonklitj
Currently on latest Catalina beta build. The command does nothing for me.
Doesn't throw an error, but no address change either. Might add I have 2019
MBP.

~~~
dillonmckay
When is the Catalina public release date?

~~~
nvrspyx
There’s isn’t one. It’s just “Coming in October”. But, the GM build was
recently pushed to beta, so probably pretty soon.

~~~
BigJ1211
It's generally about a week after the GM release, so you should expect it
pretty soon. It was released last friday, so it might be end of this week
early next week.

------
rkaregaran
I experienced this a couple of months ago while trying to spoof a hotel room's
captive portal. I was attempting to get a Chromecast to work, which isn't
designed to operate with wifi connections behind captive portals. Very
frustrating and no feedback from the OS that the commands I was running
weren't actually doing what it said it was doing. This was on a latest gen
MacBook Pro 15" running latest version at the time of MacOS.

~~~
chmars
1/2 OT: The Apple Watch does not work with captive portals either. And since
4G does not work abroad, I can use my Apple Watch without my iPhone nearby
only in my home country.

~~~
askmike
> And since 4G does not work abroad

What do you mean? I can roam 4g just fine.

~~~
techsupporter
The mobile radio in the Apple Watch, at least according to Apple, does not
work when you are outside of the region where the Watch was purchased. 4G
works fine on the iPhone handset but the Watch won't independently connect to
a local mobile network sans the iPhone.

(For example: I bought my Watch in the U.S. While on vacation to Ireland, my
iPhone connected to Vodafone IE without a problem. But my Watch showed "no
cellular service" if it was out of range of my iPhone and a wifi network.)

~~~
caymanjim
Is the watch's 4G free (no user plan required)? If so, that's probably why;
they don't want to eat the unpredictable international costs. Free cellular on
e-readers and other devices tends to work like this.

~~~
oarsinsync
It's not provided by Apple, but rather your mobile carrier. They may or may
not provide it for free. In the UK, it can cost as much as your current plan
does just to enable your watch to share your plan.

------
discobean
I recently tried this and was able to change the address of only the last few
characters, it wouldn't let me change the address entirely.

I just suspected it just had a check on the first bytes of the address to be
sure it was a valid Apple ethernet adapter.

~~~
alexis_fr
MAC addresses were supposed to be a manufacturer ID + a local ID, so I’m not
surprised.

~~~
pbhjpbhj
Aren't they supposed also to be tools for the _owner_ (ie purchaser) rather
than for companies to retain control of.

~~~
anoncake
If you value personal property and freedom you probably don't buy Apple
products to start with.

------
dopu
Unrelated, but the MacRumors thread that's linked to has someone posting about
neighbors harassing them by doing things such as "moving my cursor all over
the place and speeding up the temperature, causing the fan" and that their
"neighbors also learned to slow my internet (ATT DSL) or to disconnect it."
[0] Hence their need change their MAC address.

They're now in the process of collecting evidence, and post: "This legal
evidence will benefit many, as they boast of being Freemasons, and this being
part of their "craft" and their "process". Therefore, when I go public in
legal proceeds about their "craft" and "process", while actually forcing those
individuals which I have substantial evidence on to appear for the courtroom
cameras, the rest of humanity they plague will see the low caliper, socially
outcast, inadequates they are. No one need fear them. It's fear they try to
attain, and before I'm finished, no one on earth ever will."

Amazing.

[0]: [https://forums.macrumors.com/threads/change-mac-
address.2154...](https://forums.macrumors.com/threads/change-mac-
address.2154569/#post-27329950)

~~~
diminoten
This sounds like a CO2 leak or someone not taking their medication.

~~~
pfarnsworth
CO not CO2

~~~
diminoten
Good point!

------
techsupporter
This does look like a change on more recent hardware. I just tried the script
that the parent linked from Stack Overflow[0] on my 2017 MacBook 12" running
the latest Catalina public beta and it does work. I can change my MAC and my
laptop gets a new IPv4 address from DHCP.

Edited to add: I also just tried this on my 2018 Mac Mini (also running latest
Catalina public beta) and it also worked... Different wireless adapter from
the MacBook Pro line maybe?

0 - [https://stackoverflow.com/questions/52421789/cant-spoof-
mac-...](https://stackoverflow.com/questions/52421789/cant-spoof-mac-address-
in-a-macbook)

------
simonklitj
Seems to be a hardware related thing, as WiFiSpoof
([https://wifispoof.com](https://wifispoof.com)) lists 2018/2019 devices as
the ones not supported, and not a specific macOS version.

~~~
miles
In fact, they explicitly recommend using Mojave on that page:

"10.11 or better (Mojave recommended)"

------
TazeTSchnitzel
Apple do MAC address randomisation on iOS, right? Does this mean macOS _doesn
't_ do that, or that does but you can't turn it off?

~~~
_bxg1
It seems more like Apple to strongarm people into something that's probably
best for them - for security, privacy, etc. - than to place limits on their
customers just to buddy up with [checks notes]...hotel chains.

The removal of an option here could imply that they _started_ randomizing the
ones on macOS.

~~~
spsful
I'd like to see more testing done to see if that's actually happening. Since
Apple has a very vocal stance on privacy, I would really hope that is the
case.

~~~
_bxg1
Agreed.

------
ivanstegic
All the more reason to buy a Lenovo and put Linux on it.

~~~
clessg
How does the WSL compare to full-blown Linux/macOS these days?

~~~
rdiddly
Not really a viable replacement if you rely on X11 or any GUI stuff. If you're
content in a command shell you can do a lot though and it integrates nicely
with the environment.

------
mahesh_rm
I count heavily on this feature when working with my 2015 macbook pro from
public WiFi. If it's a hardware limit, it would be a deal breaker for a
MacBook update. Anybody knowledgeable of the issue can pitch in on weather it
is a deliberate choice or the collateral effect of non yet supported hardware?

------
kilroy123
I constantly have to do this when connecting to public WiFis around the world,
which limits usage. I'll just change the Mac address and I'm able to continue
using the WiFi.

------
gruez
This is disappointing from a privacy oriented company. Windows had mac address
randomization for a few years now. It even supports randomizing on a per-
network basis and automatic daily rotations.

[https://www.tenforums.com/attachments/tutorials/110342d14859...](https://www.tenforums.com/attachments/tutorials/110342d1485974035t-turn-
off-random-hardware-mac-addresses-wi-fi-windows-10-a-wi-
fi_random_hardware_addresses-3.png)

~~~
sarah180
Even on Windows it depends on your hardware. I have two Windows laptops. One
supports MAC randomization. The other won't allow it because the hardware
reports that the MAC address is locked.

------
jen_h
They're kind of hurting their own product adoption here: Apple TV doesn't
support the use of "gated" wifi connections (and that's on top of ensuring
fewer people use Macs for pentesting/security stuff).

If I couldn't spoof my mac address, I couldn't use Apple TV when traveling --
you have to set your computer's MAC to the Apple TV mac, connect to wifi, log
in, switch back, then turn on the Apple TV. And for most hotels/gated wifi
hotspots, you have to do this every. single. day. Luckily I use Ubuntu as my
primary, but still...

Here's to hoping they rethink this _and_ add a feature to allow wifi login
pages on AppleTV...

------
yakshaving_jgt
I panicked for a moment, since I travel a lot and changing my MAC address is
the only way to circumvent draconian limited WiFi rules. Glad to see this is
only temporary, and it'll be fixed before I end up buying a new machine.

Here's how I get around free WiFi limitations while travelling:
[https://jezenthomas.com/free-internet-on-
trains/](https://jezenthomas.com/free-internet-on-trains/)

------
clubm8
I had not tried in a long time. They have for a long time not allowed you to
put airport into monitor mode easily, so I always just bought a USB wifi
antenna for any wireless penetration testing.

I'm surprised by this thought... is it not changable at all or just by the
user? I know in iOS they had a feature to randomize the mac when searching out
networks to increase privacy...

------
nixgeek
I don’t think this is down to macOS version, it seems related to the vintage
of the hardware.

I have a Late 2016 15” which allows me to change the MAC address, and anything
2018+ does not seem to allow it.

Both the 2018 and 2019 model return zero when you type “ifconfig” commands to
change the hardware address, but the command has no effect.

Have tried this on Mojave and Catalina.

------
fulldecent2
Here is a legitimate practical use of editing your MAC:

[https://fulldecent.blogspot.com/2013/12/how-to-connect-
your-...](https://fulldecent.blogspot.com/2013/12/how-to-connect-your-roku-to-
xfinitywifi.html)

------
Aissen
Waiting a year for a driver fix for such a basic feature on widely used
hardware, it makes Linux driver woes feel like a walk in the park.

------
chrisseaton
How would you get allocated a new MAC address in order to do this?

~~~
xnyan
It's never worked like that, you just provide an arbitrary address, Collisions
are not really an issue because it's a manual thing done by a professional for
one of any number of uncommon but legitimate reasons.

Assuming its not a bug, to me this seems like yet another small but meaningful
step in turning macOS from a general purpose OS to a consumer only OS with all
the "most people don't want or need this" stuff taken out.

~~~
Jonnax
A "professional" doesn't do anything except randomise the address.

Because a collision is extremely unlikely.

Especially in a /24 which has 254 addresses max.

~~~
coldtea
You're confusing MAC and IP addresses

~~~
adrianmonk
I don't think they are. They are saying that if you are connecting to an
Ethernet network which is only being used for a /24 IPv4 Network, then that
Ethernet has plenty of MAC addresses available.

------
huxflux
This is one of the reasons I left macOS (and Apple).

------
nickthemagicman
What about via bash and ifconfig?

Is this just a GUI thing?

------
anonthrowaway28
Running a hackintosh on 10.14.6 (18G103), works fine:

    
    
        $ ifconfig en1 ether
        en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
          ether aa:bb:cc:dd:ee:ff
    

It maybe related to wifi drivers.

    
    
        Index Refs Address            Size       Wired      Name (Version) UUID <Linked Against>
           37   10 0xffffff7f83b0e000 0x22000    0x22000    as.vit9696.Lilu (1.3.4) 7C0B7376-83CF-32DA-9C49-7052141EC730 <8 6 5 3 2 1>
           38    0 0xffffff7f83b30000 0x5000     0x5000     org.vanilla.driver.CPUFriend (1.1.6) FFAD6CD3-E28F-3741-BE12-E44720F45CA6 <37 12 8 6 5 3 2 1>
           39    0 0xffffff7f83b35000 0x4000     0x4000     com.rehabman.driver.USBInjectAll (0.7.1) 88901B62-E4A2-3374-A33C-873C8BC29F9C <13 12 5 3>
           40    0 0xffffff7f83b3a000 0x3000     0x3000     as.lvs1974.BT4LEContiunityFixup (1.1.2) 1B490F7D-CD49-30AD-944A-553D0D99692C <37 8 6 5 3 2 1>
           41    0 0xffffff7f83b3d000 0x4000     0x4000     com.sicreative.VoltageShift (1.1) 0FA3C2F1-BEA1-3AAF-AA39-3ED26996F2C1 <5 3>
           42    2 0xffffff7f83b44000 0x11000    0x11000    as.vit9696.VirtualSMC (1.0.2) E9475ED7-4AB2-3DDE-B20B-614B06DAE65B <37 12 8 6 5 3 2 1>
           44    0 0xffffff7f83b55000 0xa000     0xa000     ru.usrsse2.SMCBatteryManager (1) E0542A67-D72C-3FD4-A142-40B586E9CE50 <43 42 37 12 8 6 5 3 2 1>
           45    0 0xffffff7f83b5f000 0x63000    0x63000    as.vit9696.WhateverGreen (1.2.7) 122F635A-DC40-3DF0-98AF-8505A83221C0 <37 13 8 6 5 3 2 1>
           46    0 0xffffff7f83bc2000 0x102000   0x102000   as.vit9696.AppleALC (1.3.6) 3E1A3DF6-9D93-3DD0-96A0-9FBA5791D7D7 <37 13 8 6 5 3 2 1>
           47    0 0xffffff7f83cc4000 0x6000     0x6000     as.lvs1974.AirportBrcmFixup (1.1.9) 6AE31546-1F21-303F-A51E-A34753C9905E <37 16 13 8 6 5 3 2 1>
           48    0 0xffffff7f83cca000 0x3000     0x3000     xyz.racermaster.NoTouchID (1.0.1) 85F586AC-B564-304A-BCC0-55681EF86F91 <37 8 6 5 3 2 1>
           49    0 0xffffff7f83ccd000 0x5000     0x5000     as.lvs1974.HibernationFixup (1.2.4) 8CA34F1A-5611-30B3-8224-53F093BF5FAA <37 8 6 5 3 2 1>
           50    0 0xffffff7f83cd2000 0x5000     0x5000     as.vit9696.SMCProcessor (1.0.2) BB591E66-6993-39BB-88D9-D0936B92E036 <42 37 12 8 6 5 3 2 1>
           67    2 0xffffff7f83cd7000 0xb000     0xb000     org.rehabman.voodoo.driver.PS2Controller (1.9.2) 53E0B467-6CA6-3CD1-A450-6A39D767DA8C <12 8 6 5 3 1>
           81    0 0xffffff7f83ce2000 0x14000    0x14000    com.insanelymac.IntelMausiEthernet (2.5.0d0) D59B3731-D7AE-3CBA-A10F-4AB0C54AC05A <16 13 6 5 3 1>
           88    0 0xffffff7f83cf6000 0xc000     0xc000     org.rehabman.voodoo.driver.PS2Trackpad (1.9.2) 1E85D11A-A05E-3FC3-AC6D-D28B7563B956 <67 57 18 8 7 6 5 3 1>
           89    0 0xffffff7f83d02000 0x6000     0x6000     org.rehabman.voodoo.driver.PS2Keyboard (1.9.2) B974470A-CEE4-358B-B605-A09DFACEE4F4 <67 57 18 8 7 6 5 3 1>
           99    1 0xffffff7f83d0c000 0x254000   0x254000   com.no-one.BrcmFirmwareStore (2.2.10) 4ED64118-8732-329E-A136-719F5CB78987 <6 5 3>
          100    0 0xffffff7f83f60000 0x6000     0x6000     com.no-one.BrcmPatchRAM2 (2.2.10) B31288AE-941C-3064-8E7D-C00266BC302A <99 23 6 5 3 1>

------
DeMaob
You can remove those by using the poweshell

