this post was submitted on 23 Aug 2023
1335 points (98.9% liked)

Programmer Humor

19623 readers
23 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 122 points 1 year ago (2 children)

On android when you go to the wifi settings you're currently connected to there should be a setting for randomizing mac address per connection or per network. If you change it to per connection, once you disconnect and reconnect your mac address should change. On per network, it will randomly generate the mac address for the first connection and keep that address for that wifi forever.

[–] [email protected] 26 points 1 year ago (2 children)

Excellent explanation, thank you. Never knew what that difference was.

[–] [email protected] 4 points 1 year ago (1 children)

Thanks for asking the question! I've never needed to know it, and I've done enough android tinkering that I'm fairly sure I could find it quite easily if needed, but I enjoy my social media being peppered with bits of learning wherever possible. I'm a big fan of ambient curiosity

[–] [email protected] 3 points 1 year ago

Same here. Thanks :)

[–] [email protected] 3 points 1 year ago

Yeah, recently I was on school wifi and it kept bothering me to log in and figured I needed to switch to per network or it would bother me everytime to sign into the captive portal.

[–] [email protected] 4 points 1 year ago (4 children)

I think per connection is a GrapheneOS thing unless I'm wrong

[–] [email protected] 35 points 1 year ago

On stock (Pixel) Android, if you enable Developer Options, there is a setting under Networking called "Wi-Fi non-persistent MAC randomization" that randomizes the MAC per connection for networks that have randomization enabled.

[–] [email protected] 8 points 1 year ago (2 children)

Samsung's OneUI does this by default for all connections .

[–] [email protected] 4 points 1 year ago (1 children)

I don't have a Samsung, but I'm pretty sure that's still randomised per network, per connection can be enabled in the developer options somewhere.

[–] [email protected] 4 points 1 year ago

I have a Samsung and it's per network, even if you forget and rejoin it keeps the same random Mac address. You need to enable a developer setting to have it randomize when you join.

[–] [email protected] 2 points 1 year ago (2 children)

Per connexion would be pretty bad. Per network.

Let's say you want to set a static DHCP ip from your router. The only way to do so (from the router, I'm not talking from the phone), is by assigning an IP to a MAC address.

If the address is randomised per connection, affecting a static DHCP ip would be impossible.

Another thing a router often has is some sort of dhcp memory. It remembers the ip it gave to a certain MAC address for some time, then when the device connects back, it assigns the same IP it had before.

So if the ip changes each time either the MAC address changes each time (not sure it's default), or the router has no memory.

[–] [email protected] 2 points 1 year ago (1 children)

for a device without inbound connectors and no ip based lan firewall rules, which applies to most phones, random per connection macs seem like a pretty good default for privacy.

some networks doing "unusual" things like hotel wifi limiting you to few devices (implemented by mac counting) may be thrown off though.

[–] [email protected] 1 points 1 year ago (1 children)

I’ve run samba servers from my phones in the past (android, at least) which was nice for a “portable file server” when out and about.

[–] [email protected] 2 points 1 year ago

I didn't say there were no use cases for this, but the average phone user will not need it. someone using samba on their phone would likely be capable of switching the network config to not randomize every time.

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago)

That's the point though. The address is randomized per connection specifically so the device can't be identified. It's to prevent tracking, blocking, or assigning, anything based on mac address without the device owners knowledge. Every time your phone connects the network has to treat it like a new device. If it was randomized per network that would defeat the point.

I personally can't think of any reason you would need a static IP on your phone but if you did then you should know enough to know how to turn off the randomized mac address. You can even change the setting per network so if you need a static ip at home then you just set your phone to use a static mac address on your home network and continue using a randomized one on every other network.

[–] steersman2484 5 points 1 year ago

Graphene just changed it to be enabled by default

But maybe they hat this feature earlier than AOSP

[–] pain_is_life_is_pain 4 points 1 year ago (1 children)

Yeah, on Android 12 I can only choose between "randomized MAC" and "phone MAC". Doesn't specify if it's randomized per network or connection, but I'd guess it's per network.

[–] [email protected] 9 points 1 year ago (1 children)

By default it's per network, but if you enable Developer Options, there is a setting under Networking called "Wi-Fi non-persistent MAC randomization" that randomizes the MAC per connection for networks that have randomization enabled. I am on Android 13 though, so I'm not sure if 12 has this option.

[–] pain_is_life_is_pain 2 points 1 year ago

Hey, cool! It's here on Android 12 also! I take it as the network has to support randomization though, so it won't work in all networks?