Apple TV doesn't send Ethernet MAC in DeviceInformation

We have observed that Apple TV doesn't send Ethernet MAC information in DeviceInformation response. (Apple TV is connected to the Ethernet.)
 
We've confirmed that the following pre requisites are fulfilled on our side.

The queries in Network information queries are available if the MDM host has a Network Information access right. Reference doc

  • We have set the maximum access right available (8191).
 

EthernetMACs - The key to get the Ethernet MAC addresses. This value requires the Network Information access right, and is available in iOS 4 and later, and tvOS 6 and later. Reference doc.

  • The TV OS version of the device we are referring here is 14+.
  • The query dictionary contains the EthernetMACs key.
 
Is this supported for Apple TV devices as mentioned in the documentation?

Please find the attached sample requests and responses.
 
Code Block
<?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>CommandUUID</key>
<string>DeviceInformation</string>
<key>Command</key>
<dict>
<key>RequestType</key>
<string>DeviceInformation</string>
<key>Queries</key>
<array>
<string>DeviceName</string>
<string>OSVersion</string>
<string>BuildVersion</string>
<string>ModelName</string>
<string>Model</string>
<string>ProductName</string>
<string>SerialNumber</string>
<string>DeviceCapacity</string>
<string>AvailableDeviceCapacity</string>
<string>BatteryLevel</string>
<string>CellularTechnology</string>
<string>IMEI</string>
<string>MEID</string>
<string>ModemFirmwareVersion</string>
<string>ICCID</string>
<string>BluetoothMAC</string>
<string>WiFiMAC</string>
<string>CurrentCarrierNetwork</string>
<string>SIMCarrierNetwork</string>
<string>SubscriberCarrier-Network</string>
<string>CarrierSettingsVersion</string>
<string>PhoneNumber</string>
<string>VoiceRoamingEnabled</string>
<string>DataRoamingEnabled</string>
<string>IsRoaming</string>
<string>SubscriberMCC</string>
<string>SubscriberMNC</string>
<string>CurrentMCC</string>
<string>CurrentMNC</string>
<string>UDID</string>
<string>IsSupervised</string>
<string>IsDeviceLocatorServiceEnabled</string>
<string>IsActivationLockEnabled</string>
<string>IsDoNotDisturbInEffect</string>
<string>iTunesStoreAccountIsActive</string>
<string>EASDeviceIdentifier</string>
<string>EthernetMACs</string>
<string>PersonalHotspotEnabled</string>
<string>LastCloudBackupDate</string>
<string>IsCloudBackupEnabled</string>
<string>IsMDMLostModeEnabled</string>
<string>ServiceSubscriptions</string>
<string>Languages</string>
<string>Locales</string>
<string>DeviceID</string>
<string>OrganizationInfo</string>
<string>AwaitingConfiguration</string>
<string>MDMOptions</string>
<string>iTunesStoreAccountHash</string>
<string>SIMMCC</string>
<string>SIMMNC</string>
<string>OSUpdateSettings</string>
<string>LocalHostName</string>
<string>HostName</string>
<string>CatalogURL</string>
<string>IsDefaultCatalog</string>
<string>PreviousScanDate</string>
<string>PreviousScanResult</string>
<string>PerformPeriodicCheck</string>
<string>AutomaticCheckEnabled</string>
<string>BackgroundDownloadEnabled</string>
<string>AutomaticAppInstallationEnabled</string>
<string>AutomaticOSInstallationEnabled</string>
<string>AutomaticSecurityUpdatesEnabled</string>
<string>IsMultiUser</string>
<string>MaximumResidentUsers</string>
<string>PushToken</string>
<string>DiagnosticSubmissionEnabled</string>
<string>AppAnalyticsEnabled</string>
<string>IsNetworkTethered</string>
</array>
</dict>
</dict>
</plist>

Response to this request
Code Block
<?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>CommandUUID</key>
    <string>DeviceInformation</string>
    <key>QueryResponses</key>
    <dict>
        <key>AwaitingConfiguration</key>
        <false/>
        <key>BluetoothMAC</key>
        <string>xx:xx:xx:xx:xx:xx</string>
        <key>BuildVersion</key>
        <string>xxxxxxx</string>
        <key>DeviceID</key>
        <string>xx:xx:xx:xx:xx:xx</string>
        <key>DeviceName</key>
        <string>***</string>
        <key>IsSupervised</key>
        <true/>
        <key>MDMOptions</key>
        <dict/>
        <key>Model</key>
        <string>MR912LL</string>
        <key>ModelName</key>
        <string>AppleTV</string>
        <key>OSVersion</key>
        <string>14.0.2</string>
        <key>ProductName</key>
        <string>AppleTV5,3</string>
        <key>SerialNumber</key>
        <string>xxxxxxxxxx</string>
        <key>UDID</key>
        <string>xxxx</string>
        <key>WiFiMAC</key>
        <string>xx:xx:xx:xx:xx:xx</string>
        <key>iTunesStoreAccountIsActive</key>
        <false/>
    </dict>
    <key>Status</key>
    <string>Acknowledged</string>
    <key>UDID</key>
    <string>***</string>
</dict>
</plist>

 
Thank you.
This does not look like the expected behavior. I suggest filing feedback at https://feedbackassistant.apple.com/. Please install the Managed Configuration (MDM) for iOS profile, reproduce the issue, then follow the "sysdiagnose for tvOS" instructions listed at https://developer.apple.com/bug-reporting/profiles-and-logs/.
A couple of follow ups, I had a chance to test this on tvOS 13.4.8 and also did not get the EthernetMAC address reported. Do you have a confirmed working version of tvOS that you saw this key in?

In the meantime please feel free to use the DeviceID as this the EthernetMAC address of the device. You can verify this by attaching an Apple TV to Apple Configurator.
Apple TV doesn't send Ethernet MAC in DeviceInformation
 
 
Q