Bonjour multicasts (HomeKit, Printer) not propagating from wired interface to WLAN
Hello
I have just bought yesterday a new Wifi router, AC750 Wireless Dual Band Router, Model No. Archer C20i, to replace my ISP's router to manage my wifi networks.
Everything worked fine, except my Philips Hue hub, when accessed through HomeKit. The Hue hub works fine from the Hue app, but when used through the iOS Home app, the Hue hub and lights work for about 2-5min, and then fail with a "No response" error message.
The wired connectivity is as follows:
ISP router <--eth--> Archer C20i <--eth--> Hue hub
And then the Archer exposes 2 wifi networks (2.4G and 5G), to which all my other devices are connected (laptops, tablets, iphones, homepod, printer).
My investigation shows that Bonjour broadcasts are only received on the wifi networks from the Hue hub for a few minutes, but then disappear. This is what causes the loss of connectivity to the hub from my wifi devices. After the disconnection, the hub is still reachable by IP address (and can be controlled from the Hue app), which indicates it's still OK, but it can no longer be resolved with its Bonjour address (Philips-hue.local.).
My wifi-based Bonjour devices (such as my Airprint-compatible Brother printer) are still working fine and keep broadcasting regularly, which makes me thing that the issue is really for broadcasts from eth LAN to WLAN - which seems to be a common problem according to this SuperUser post: https://superuser.com/questions/730288/why-do-some-wifi-routers-block-multicast-packets-going-from-wired-to-wireless
The problem can be reliably reproduced by restarting the Hue bridge: it will broadcast for a few minutes, then drop off the radar and become unreachable with its Bonjour address. Note that this does NOT happen when I plug it to my ISP's router: it will keep happily broadcasting when it's plugged there, but in that case I need to connect all my wifi devices to that router, which is what I wanted to stop doing when I purchased the new Archer, for unrelated reasons (better control on my DHCP settings).
What I have tried so far:
- Reset all my devices to factory defaults and paired them again (reinitialized all my HomeKit settings and devices, the Hue hub)
- All systems updated to latest OS / firmware (iOS 14, MacOS...). The Archer already seems to be on the latest version - although it seems to be 5 years old...
- Changed eth cable between Hue and Archer
- Changed following settings on Archer, based on various forum suggestions:
- Disabled WPS on both wifi networks
- Enabled / disabled IGMP Snooping on LAN
- Made fixed IP DHCP address reservation for the Hue bridge
- Disabled SPI firewall
- Disabled DoS protection
This seems extremely similar to this forum thread, as well as this other SuperUser post (https://superuser.com/questions/795656/bonjour-does-not-work-with-tp-link-archer-c2), specifically mentioning a different TP-Link device, which both seem to have been resolved with a firmware update, but there doesn't seem to be a new version for my particular hardware...
This is the details of the Bonjour broadcast when the Hue is visible, as shown with the "Discovery" MacOS app:
And this is how it's seen with a dns-ds command:
And after a few minutes, the service registration is still visible, but with no details: