Apple TV 4K keeps requesting DHCP lease
glenn.satchell at uniq.com.au
glenn.satchell at uniq.com.au
Mon Jul 28 04:29:26 UTC 2025
Hi Philip,
In the past when I've seen this it's often a requested dhcp-option is
not sent in the reply. There are a couple of ones labeled as unknown:
108 - ipv6 preference
# this is a guess
option option-108 0;
119 - domain search
option domain-search "example.com";
252 - wpad url for proxy configuration
# NUL termination bug heuristic applied, and "string" won't!
option wpad code 252 = text;
option wpad "http://example.com/proxy.pac\000";
If the client expects to get an option and doesn't it will keep
re-requesting as you have seen. The dhcp server won't send an
unconfigured option.
You may need to try a bit of experimentation with these. Maybe just
sending a null string will work. I'd try them one at a time to see.
regards,
Glenn
Perhaps comparing the packet trace with one of your working older Apple
TVs will show a difference. It should be easy enough to fill in an
appropriate value to see if it makes a difference. I don't know
On 2025-07-28 03:00, Philip Prindeville wrote:
>> On Jul 24, 2025, at 12:56 PM, Barry Stear <bstear at gmail.com> wrote:
>>
>> Hi Phillip,
>>
>> Looking at the tcpdump the issue looks to be caused by three things :
>>
>> 1) Both of your Apple TV's have a hostname of Penthouse-6
>
>
> No, that’s the two MAC addresses of one of the Apple TV’s, Ethernet and
> WiFi. We do that for all of the devices that have two interfaces, or
> WiFi and a wired docking station.
>
>
>> 2) Your configuration file specified a hostname of "Penthouse" for
>> both of the MAC addresses which does not match either of them so they
>> are not getting assigned the IP address that you are wanting
>> 3) You specified both of them should get an ip address of
>> 192.168.6.242 which is not possible.
>
>
> Whether “Penthouse” is on WiFi or wired Ethernet, it should get the
> same address.
>
> It’s curious that it’s doing DHCP on both interfaces even though in the
> setup, I’ve explicitly selected Ethernet. It didn’t used to do that.
>
>
>
>>
>> To resolve this, you need to rename one of your Apple TV's to another
>> name, perhaps Penthouse-5 and then update the configuration file to
>> match the mac address with the correct Hostname. Below, I highlighted
>> the Request with the MAC address and Hostname coming in the DHCP
>> request message from the Apple TV's as well as where you specified
>> Penthouse as the hostname in your configuration file.
>>
>> host Penthouse-9c3e530d9fbe {
>> hardware ethernet 9c:3e:53:0d:9f:be;
>> fixed-address 192.168.6.242;
>> option host-name "Penthouse";
>> if exists dhcp-parameter-request-list {
>> option dhcp-parameter-request-list = concat(option
>> dhcp-parameter-request-list, 3a);
>> }
>> }
>
>
> This is the wired interface. The adding of (n) is something that Avahi
> does when it detects a collision on the name.
>
>
>
>> host Penthouse-9c3e5309d1c5 {
>> hardware ethernet 9c:3e:53:09:d1:c5;
>> fixed-address 192.168.6.242;
>> option host-name "Penthouse";
>> if exists dhcp-parameter-request-list {
>> option dhcp-parameter-request-list = concat(option
>> dhcp-parameter-request-list, 3a);
>> }
>>
>> 00:07:22.605432 9c:3e:53:09:d1:c5 > ff:ff:ff:ff:ff:ff, ethertype IPv4
>> (0x0800), length 342: (tos 0x0, ttl 255, id 22192, offset 0, flags
>> [none], proto UDP (17), length 328)
>> 0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request
>> from 9c:3e:53:09:d1:c5, length 300, xid 0x87ec8a54, secs 1, Flags
>> [none] (0x0000)
>> Client-Ethernet-Address 9c:3e:53:09:d1:c5
>> Vendor-rfc1048 Extensions
>> Magic Cookie 0x63825363
>> DHCP-Message (53), length 1: Request
>> Parameter-Request (55), length 9: Subnet-Mask (1),
>> Classless-Static-Route (121), Default-Gateway (3), Domain-Name-Server
>> (6)
>> Domain-Name (15), Unknown (108), URL (114), Unknown (119)
>> Unknown (252)
>> MSZ (57), length 2: 1500
>> Client-ID (61), length 7: ether 9c:3e:53:09:d1:c5
>> Requested-IP (50), length 4: 192.168.6.242
>> Lease-Time (51), length 4: 7776000
>> Hostname (12), length 11: "Penthouse-6"
>> 00:07:22.605800 ac:1f:6b:1d:fb:80 > 9c:3e:53:09:d1:c5, ethertype IPv4
>> (0x0800), length 342: (tos 0x10, ttl 128, id 0, offset 0, flags
>> [none], proto UDP (17), length 328)
>> 192.168.6.1.67 > 192.168.6.242.68: [udp sum ok] BOOTP/DHCP, Reply,
>> length 300, xid 0x87ec8a54, secs 1, Flags [none] (0x0000)
>> Your-IP 192.168.6.242
>> Client-Ethernet-Address 9c:3e:53:09:d1:c5
>> Vendor-rfc1048 Extensions
>> Magic Cookie 0x63825363
>> DHCP-Message (53), length 1: ACK
>> Server-ID (54), length 4: 192.168.6.1
>> Lease-Time (51), length 4: 43200
>> Subnet-Mask (1), length 4: 255.255.255.0
>> Default-Gateway (3), length 4: 192.168.6.1
>> Domain-Name-Server (6), length 4: 192.168.6.1
>> Domain-Name (15), length 21: "redfish-solutions.com"
>> 00:07:24.859045 9c:3e:53:0d:9f:be > ff:ff:ff:ff:ff:ff, ethertype IPv4
>> (0x0800), length 342: (tos 0x0, ttl 255, id 22193, offset 0, flags
>> [none], proto UDP (17), length 328)
>> 0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request
>> from 9c:3e:53:0d:9f:be, length 300, xid 0xbfede3b8, Flags [none]
>> (0x0000)
>> Client-Ethernet-Address 9c:3e:53:0d:9f:be
>> Vendor-rfc1048 Extensions
>> Magic Cookie 0x63825363
>> DHCP-Message (53), length 1: Request
>> Parameter-Request (55), length 9: Subnet-Mask (1),
>> Classless-Static-Route (121), Default-Gateway (3), Domain-Name-Server
>> (6)
>> Domain-Name (15), Unknown (108), URL (114), Unknown (119)
>> Unknown (252)
>> MSZ (57), length 2: 1500
>> Client-ID (61), length 7: ether 9c:3e:53:0d:9f:be
>> Requested-IP (50), length 4: 192.168.6.242
>> Lease-Time (51), length 4: 7776000
>> Hostname (12), length 11: "Penthouse-6"
>>
>> On Thu, Jul 24, 2025 at 12:19 AM Philip Prindeville
>> <philipp_subx at redfish-solutions.com> wrote:
>> Hi,
>>
>> I have a couple of Apple TV’s that keep harassing my DHCP server,
>> which is 4.4.3-P1.
>>
>> Traces are below.
>>
>> The config for my server looks like:
>>
>> authoritative;
>> ddns-domainname "redfish-solutions.com.";
>> ddns-update-style standard;
>> ddns-updates on;
>> ignore client-updates;
>>
>> update-static-leases on;
>> use-host-decl-names on;
>> update-conflict-detection off;
>> update-optimization off;
>>
>> …
>>
>> log-facility daemon;
>> default-lease-time 3600;
>> max-lease-time 86400;
>> option domain-name "redfish-solutions.com";
>>
>> # additional codes
>> option classless-ipv4-route code 121 = array of { unsigned integer 8
>> };
>> …
>>
>> subnet 192.168.6.0 netmask 255.255.255.0 {
>> option subnet-mask 255.255.255.0;
>> option broadcast-address 192.168.6.255;
>> deny unknown-clients;
>> default-lease-time 43200;
>> max-lease-time 43200;
>> option routers 192.168.6.1;
>> option domain-name-servers 192.168.6.1;
>> }
>>
>> …
>>
>> host Penthouse-9c3e530d9fbe {
>> hardware ethernet 9c:3e:53:0d:9f:be;
>> fixed-address 192.168.6.242;
>> option host-name "Penthouse";
>> if exists dhcp-parameter-request-list {
>> option dhcp-parameter-request-list = concat(option
>> dhcp-parameter-request-list, 3a);
>> }
>> }
>> host Penthouse-9c3e5309d1c5 {
>> hardware ethernet 9c:3e:53:09:d1:c5;
>> fixed-address 192.168.6.242;
>> option host-name "Penthouse";
>> if exists dhcp-parameter-request-list {
>> option dhcp-parameter-request-list = concat(option
>> dhcp-parameter-request-list, 3a);
>> }
>> }
>>
>>
>> I’ve provisioned both the Ethernet and WiFi MAC addresses but the TV’s
>> are hardwired.
>>
>> The tcpdumps look like:
>>
>> 00:07:22.605432 9c:3e:53:09:d1:c5 > ff:ff:ff:ff:ff:ff, ethertype IPv4
>> (0x0800), length 342: (tos 0x0, ttl 255, id 22192, offset 0, flags
>> [none], proto UDP (17), length 328)
>> 0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request
>> from 9c:3e:53:09:d1:c5, length 300, xid 0x87ec8a54, secs 1, Flags
>> [none] (0x0000)
>> Client-Ethernet-Address 9c:3e:53:09:d1:c5
>> Vendor-rfc1048 Extensions
>> Magic Cookie 0x63825363
>> DHCP-Message (53), length 1: Request
>> Parameter-Request (55), length 9: Subnet-Mask (1),
>> Classless-Static-Route (121), Default-Gateway (3), Domain-Name-Server
>> (6)
>> Domain-Name (15), Unknown (108), URL (114), Unknown (119)
>> Unknown (252)
>> MSZ (57), length 2: 1500
>> Client-ID (61), length 7: ether 9c:3e:53:09:d1:c5
>> Requested-IP (50), length 4: 192.168.6.242
>> Lease-Time (51), length 4: 7776000
>> Hostname (12), length 11: "Penthouse-6"
>> 00:07:22.605800 ac:1f:6b:1d:fb:80 > 9c:3e:53:09:d1:c5, ethertype IPv4
>> (0x0800), length 342: (tos 0x10, ttl 128, id 0, offset 0, flags
>> [none], proto UDP (17), length 328)
>> 192.168.6.1.67 > 192.168.6.242.68: [udp sum ok] BOOTP/DHCP, Reply,
>> length 300, xid 0x87ec8a54, secs 1, Flags [none] (0x0000)
>> Your-IP 192.168.6.242
>> Client-Ethernet-Address 9c:3e:53:09:d1:c5
>> Vendor-rfc1048 Extensions
>> Magic Cookie 0x63825363
>> DHCP-Message (53), length 1: ACK
>> Server-ID (54), length 4: 192.168.6.1
>> Lease-Time (51), length 4: 43200
>> Subnet-Mask (1), length 4: 255.255.255.0
>> Default-Gateway (3), length 4: 192.168.6.1
>> Domain-Name-Server (6), length 4: 192.168.6.1
>> Domain-Name (15), length 21: "redfish-solutions.com"
>> 00:07:24.859045 9c:3e:53:0d:9f:be > ff:ff:ff:ff:ff:ff, ethertype IPv4
>> (0x0800), length 342: (tos 0x0, ttl 255, id 22193, offset 0, flags
>> [none], proto UDP (17), length 328)
>> 0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request
>> from 9c:3e:53:0d:9f:be, length 300, xid 0xbfede3b8, Flags [none]
>> (0x0000)
>> Client-Ethernet-Address 9c:3e:53:0d:9f:be
>> Vendor-rfc1048 Extensions
>> Magic Cookie 0x63825363
>> DHCP-Message (53), length 1: Request
>> Parameter-Request (55), length 9: Subnet-Mask (1),
>> Classless-Static-Route (121), Default-Gateway (3), Domain-Name-Server
>> (6)
>> Domain-Name (15), Unknown (108), URL (114), Unknown (119)
>> Unknown (252)
>> MSZ (57), length 2: 1500
>> Client-ID (61), length 7: ether 9c:3e:53:0d:9f:be
>> Requested-IP (50), length 4: 192.168.6.242
>> Lease-Time (51), length 4: 7776000
>> Hostname (12), length 11: "Penthouse-6"
>> 00:07:24.859370 ac:1f:6b:1d:fb:80 > 9c:3e:53:0d:9f:be, ethertype IPv4
>> (0x0800), length 342: (tos 0x10, ttl 128, id 0, offset 0, flags
>> [none], proto UDP (17), length 328)
>> 192.168.6.1.67 > 192.168.6.242.68: [udp sum ok] BOOTP/DHCP, Reply,
>> length 300, xid 0xbfede3b8, Flags [none] (0x0000)
>> Your-IP 192.168.6.242
>> Client-Ethernet-Address 9c:3e:53:0d:9f:be
>> Vendor-rfc1048 Extensions
>> Magic Cookie 0x63825363
>> DHCP-Message (53), length 1: ACK
>> Server-ID (54), length 4: 192.168.6.1
>> Lease-Time (51), length 4: 43200
>> Subnet-Mask (1), length 4: 255.255.255.0
>> Default-Gateway (3), length 4: 192.168.6.1
>> Domain-Name-Server (6), length 4: 192.168.6.1
>> Domain-Name (15), length 21: "redfish-solutions.com”
>> 00:07:34.809046 58:d3:49:e7:ca:37 > ff:ff:ff:ff:ff:ff, ethertype IPv4
>> (0x0800), length 342: (tos 0x0, ttl 255, id 38810, offset 0, flags
>> [none], proto UDP (17), length 328)
>> 0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request
>> from 58:d3:49:e7:ca:37, length 300, xid 0x27e24d21, Flags [none]
>> (0x0000)
>> Client-Ethernet-Address 58:d3:49:e7:ca:37
>> Vendor-rfc1048 Extensions
>> Magic Cookie 0x63825363
>> DHCP-Message (53), length 1: Request
>> Parameter-Request (55), length 9: Subnet-Mask (1),
>> Classless-Static-Route (121), Default-Gateway (3), Domain-Name-Server
>> (6)
>> Domain-Name (15), Unknown (108), URL (114), Unknown (119)
>> Unknown (252)
>> MSZ (57), length 2: 1500
>> Client-ID (61), length 7: ether 58:d3:49:e7:ca:37
>> Requested-IP (50), length 4: 192.168.6.240
>> Lease-Time (51), length 4: 7776000
>> Hostname (12), length 13: "Living-Room-2"
>> 00:07:34.809455 ac:1f:6b:1d:fb:80 > 58:d3:49:e7:ca:37, ethertype IPv4
>> (0x0800), length 342: (tos 0x10, ttl 128, id 0, offset 0, flags
>> [none], proto UDP (17), length 328)
>> 192.168.6.1.67 > 192.168.6.240.68: [udp sum ok] BOOTP/DHCP, Reply,
>> length 300, xid 0x27e24d21, Flags [none] (0x0000)
>> Your-IP 192.168.6.240
>> Client-Ethernet-Address 58:d3:49:e7:ca:37
>> Vendor-rfc1048 Extensions
>> Magic Cookie 0x63825363
>> DHCP-Message (53), length 1: ACK
>> Server-ID (54), length 4: 192.168.6.1
>> Lease-Time (51), length 4: 43200
>> Subnet-Mask (1), length 4: 255.255.255.0
>> Default-Gateway (3), length 4: 192.168.6.1
>> Domain-Name-Server (6), length 4: 192.168.6.1
>> Domain-Name (15), length 21: "redfish-solutions.com"
>> 00:07:40.513058 9c:3e:53:09:d1:c5 > ff:ff:ff:ff:ff:ff, ethertype IPv4
>> (0x0800), length 342: (tos 0x0, ttl 255, id 22195, offset 0, flags
>> [none], proto UDP (17), length 328)
>> 0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request
>> from 9c:3e:53:09:d1:c5, length 300, xid 0x87ec8a55, Flags [none]
>> (0x0000)
>> Client-Ethernet-Address 9c:3e:53:09:d1:c5
>> Vendor-rfc1048 Extensions
>> Magic Cookie 0x63825363
>> DHCP-Message (53), length 1: Request
>> Parameter-Request (55), length 9: Subnet-Mask (1),
>> Classless-Static-Route (121), Default-Gateway (3), Domain-Name-Server
>> (6)
>> Domain-Name (15), Unknown (108), URL (114), Unknown (119)
>> Unknown (252)
>> MSZ (57), length 2: 1500
>> Client-ID (61), length 7: ether 9c:3e:53:09:d1:c5
>> Requested-IP (50), length 4: 192.168.6.242
>> Lease-Time (51), length 4: 7776000
>> Hostname (12), length 11: "Penthouse-6"
>> 00:07:40.513486 ac:1f:6b:1d:fb:80 > 9c:3e:53:09:d1:c5, ethertype IPv4
>> (0x0800), length 342: (tos 0x10, ttl 128, id 0, offset 0, flags
>> [none], proto UDP (17), length 328)
>> 192.168.6.1.67 > 192.168.6.242.68: [udp sum ok] BOOTP/DHCP, Reply,
>> length 300, xid 0x87ec8a55, Flags [none] (0x0000)
>> Your-IP 192.168.6.242
>> Client-Ethernet-Address 9c:3e:53:09:d1:c5
>> Vendor-rfc1048 Extensions
>> Magic Cookie 0x63825363
>> DHCP-Message (53), length 1: ACK
>> Server-ID (54), length 4: 192.168.6.1
>> Lease-Time (51), length 4: 43200
>> Subnet-Mask (1), length 4: 255.255.255.0
>> Default-Gateway (3), length 4: 192.168.6.1
>> Domain-Name-Server (6), length 4: 192.168.6.1
>> Domain-Name (15), length 21: "redfish-solutions.com”
>>
>>
>> And this repeats every 15-30 seconds. It’s filling up my firewall
>> logs.
>>
>> The older Apple TV’s (the HD, not 4K ones) don’t do this. Yes, all
>> the devices are running current firmware.
>>
>> Anyone else ever seen this?
>>
>> Thanks
>>
>>
>> --
>> ISC funds the development of this software with paid support
>> subscriptions. Contact us at https://www.isc.org/contact/ for more
>> information.
>>
>> dhcp-users mailing list
>> dhcp-users at lists.isc.org
>> https://lists.isc.org/mailman/listinfo/dhcp-users
>> --
>> ISC funds the development of this software with paid support
>> subscriptions. Contact us at https://www.isc.org/contact/ for more
>> information.
>>
>> dhcp-users mailing list
>> dhcp-users at lists.isc.org
>> https://lists.isc.org/mailman/listinfo/dhcp-users
More information about the dhcp-users
mailing list