But is that really the case with DHCP? All devices? Multiple times per day?
If a home automation device is always on and connected, why exactly would its IP address be doing all this shifting and jumping around? Sure, IF your computer shuts down AND its DHCP lease expires AND iPhone later comes home and grabs that IP... but we're talking about automation devices that are always home and powered. Unless your Wifi is also being used by the Starbucks next door with lots of new devices coming/going, most of the time I would expect the same IP to get re-assigned when the lease expires. I know... no guarantee of same IP, but I wouldn't characterize the entire table as shifting and jumping around... routers do have some built-in caching.
DHCP is a very typical thing that non-tech, "it just works", kind of people use. If there are specific network conditions that must be met for Home Pods or HomeKit to function properly, then Apple needs to publish the guidelines. Whatever the case, when Home Pods that worked under 15.x are broken under 16.x, I am not so sure about blaming the network, when that's not what changed.
Anecdotally, when I was having my big HomeKit issues with 16.3.x for two months, I needed to reboot my router and hub once per day to keep HomeKit working properly. Thinking it was my 24-hour DHCP lease, I changed it to 48 hours and it made absolutely no difference. Then 16.4 was released and the issue immediately resolved itself.
Try it yourself. Write down all the IPs of your HK devices, then check them a week later.
There’s more IP hopping than you think.
Any time your router or even one of your wifi access points restarts/hangs it can cause one (or many devices) to shift.
And you have no idea how often some rando-smart-thing decides it needs to reboot.
If you have multiple wifi access points (in a mesh config or not), devices will change IPs even more frequently as they swap back and forth between APs due to a whole host of internal and external network conditions.
Add to that the fact that every piece of software/firmware on your router to your HK bridges, to your individual HK devices will have a different set of IP caching logic. So every one of them will invalidate and renew differently.
Maybe one link in your chain checks its cache infrequently.
Maybe another checks only that the device is still responding, but doesn’t check that it’s still the smart outlet and not your smart oven.
Maybe another checks that it’s still a iHome Smart Plug, but doesn’t check if it’s the EXACT same iHome Smart Plug with the same MAC address.
And each device will have different failure modes. Whether it responds helpfully with an error or throws the wrong type of error causing the caller to sit and time out, or retry multiple times before giving up (potentially different amount of time for each caller).
Okay your device knows it needs to refresh its cache. Does it just refresh for that one device (plus the second one it thought was still at at the new IP, and then the third one it thought…) or does it dump the whole cache and rebuild it via DHCP requests for the 20, 40, 80 devices in your home?
And does it rebuild the cache in the background, as-needed? Or is it dumber than that?
—
This is the real world all this happens.
And all this DHCP faffing about and cache-refreshing will slow down any non-cached lookups.
Wifi networks, especially with many devices, especially with many different vendor-types of devices work WAAAAY better with static IPs. Doubly true for the HomeKit comm protocol.
If you want a 10x better HomeKit experience, try it out. Otherwise you’re just navelgazing and arguing theoreticals.