C-8, platform 2.5.2.139 and now 2.5.3.123. Since late October my hub hung every few hours: no web UI, no ping, only a power cycle brought it back. Posting this in case anyone else runs jumbo frames at home.
The cause, as far as I can tell: a single Ethernet frame bigger than the standard 1514 bytes, an mDNS query to 224.0.0.251:5353.
How it got onto my network:
-
I switched my LAN to jumbo frames (MTU 9000) on 10/24. The first hang came about 22 hours later.
-
Two Linux machines on the LAN run avahi and cups-browsed. When a network printer starts announcing itself, they send an mDNS query for printers with a long list of answers they already know. At MTU 9000 that query goes out as one frame of about 1700 to 1800 bytes instead of being split.
-
Over about two days of capturing all multicast traffic there were exactly three such frames, in two bursts, and each burst was followed by a hang within a minute. Frames just under the limit (1400 to 1514 bytes) show up thousands of times a day and do no harm.
-
To test it I turned the printer off and sent one copy of a captured frame from a different machine. The hub stopped logging 17 seconds later and needed a power cycle.
What sent me the wrong way first: I blamed Z-Wave JS (a quiet stretch after switching to the legacy stack was a coincidence), then the printer's Bonjour announcements (they only trigger the oversized query). Memory, CPU and logs looked normal right up to every hang.
If you have unexplained hard hangs, check whether anything on your LAN uses an MTU above 1500. A Linux box, NAS or VM host with jumbo frames that also runs avahi is enough. I am going back to MTU 1500 and have sent the details and the capture to support.
Has anyone else seen this?