Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

After tvOS 18.0, MAC address of an AppleTV is detected differently than its real network MAC. #2503

Open
botsmack opened this issue Sep 17, 2024 · 6 comments
Labels

Comments

@botsmack
Copy link

botsmack commented Sep 17, 2024

What do you need help with?

I have an Apple TV 4K (gen 2) running tvOS 18.0. I just upgraded yesterday -- never running the betas. I'm on macOS 14.6.1 and pyatv 0.15.1 and python 3.12.

My atvremote scripts stopped working and after troubleshooting, I noticed that atvremote assigned it a new MAC address. I'm not sure why this is happening and where it's getting this identifier from. The AppleTV is connected via ethernet.

This is what atvremote scan detected in the past.

   Model/SW: Apple TV 4K (gen 2), tvOS 17.0
    Address: 10.0.1.41
        MAC: 9C:3E:53:2D:72:BD      <-- This is what's listed in the AppleTV network screen
 Deep Sleep: False
Identifiers:
 - 661BB576-12B7-418A-A0A8-2A9A5F74604E
 - 9C:3E:53:2D:72:BD
 - 9C3E532D72BD

This what atvremote scan detects now.

   Model/SW: Apple TV 4K (gen 2), tvOS 18.0
    Address: 10.0.1.41
        MAC: 66:1B:B5:76:12:B7
 Deep Sleep: False
Identifiers:
 - 66:1B:B5:76:12:B7
 - 661BB576-12B7-418A-A0A8-2A9A5F74604E
 - 661BB57612B7
@botsmack botsmack changed the title Why would the MAC address of an AppleTV be detected differently than its real network MAC? After tvOS 18.0, MAC address of an AppleTV is detected differently than its real network MAC. Sep 17, 2024
@postlund
Copy link
Owner

Does it change again if you, let's say restart the device? Maybe they are doing MAC address randomization now?

@botsmack
Copy link
Author

botsmack commented Sep 17, 2024

It doesn't appear so. I have another Apple TV 4K (gen 2) running tvOS 18.0 and the same thing has happened to it. It's connected via Wi-Fi.

Before 18.0:

   Model/SW: Apple TV 4K (gen 2), tvOS 17.3
    Address: 10.0.1.45
        MAC: F0:B3:EC:60:61:80      <-- This is what's listed in the AppleTV network screen
 Deep Sleep: False
Identifiers:
 - CF1F8FAA-96D7-45C7-9C0C-16CE6F7A9007
 - F0:B3:EC:60:61:80
 - F0B3EC606180

After 18.0:

   Model/SW: Apple TV 4K (gen 2), tvOS 18.0
    Address: 10.0.1.45
        MAC: CE:1F:8F:AA:96:D7
 Deep Sleep: False
Identifiers:
 - CE:1F:8F:AA:96:D7
 - CF1F8FAA-96D7-45C7-9C0C-16CE6F7A9007
 - CE1F8FAA96D7

@m-ruhl
Copy link

m-ruhl commented Sep 18, 2024

In iOS18 Apple introduces a fixed “private wi-fi address”.

So my guess is that Apple adopted this for tvOS. The MAC address should stay the same in a network.

@crxporter
Copy link
Contributor

I've been using -i macaddress push_updates to run automations... I didn't see any way for the apple tv to stop the randomized MAC.

I guess the only 100% certain way to be sure it won't change now is to assign manual IP address from the apple tv and run -s ip.address push_updates - which is working as expected.

@oviano
Copy link

oviano commented Sep 20, 2024

I've noticed this and it appears to stay with the new, post-18.0 value after rebooting.

@postlund
Copy link
Owner

postlund commented Nov 4, 2024

I can see similar issues, but not quite the same. The MAC address as reported by scan (which is collected from the various zeroconf services) seems to match old behavior. I can however see in the ARP cache that the local MAC address on the network is something else. That is something I would expect due to MAC address randomization. But I don't quite get it why MAC address would change in the services.

Has the MAC address stayed static since after the update? Maybe it just decided to change once because of the update.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants