September 1, 2021

Fascination with Dropped Packets

Fascination with Dropped Packets

For the longest time, my network has been rock solid. Recently, however, a single device (my work one of course) has started misbehaving. Here's the drill:

  1. A complete Ubiquiti setup - we're talking USG Pro, CloudKey, PoE Switch, Access Points everywhere - the full deal. I don't like Unifi Dream Machines, so that's not present.
  2. Probably 400 devices in my house either wired, wireless, etc. All of them, except my work device work flawlessly save for the occasional needed reboot of one of my APs. My work device? A 2019 Macbook Pro. Slick as snot.

What started happening about three months ago is my Mac would just "stall" on network loads. Happens on all kinds of things: apps, browsers, etc. Thought it was cause I'm in the Monterey beta, so ditched that. Thought it was wireless so went wired - same issue. Thought it was my pihole and other fun things, so swapped it all back to defaults. Along the way, every other machine in the house was fine. Hmmm, maybe it's my company's management stuff.

Ran a new test - did AAD join of a Windows box. Flawless. Hmm. How about this, let's Bootcamp the Mac into Windows and see if it's the Mac hardware. Woahhhhhhh - the Windows 10 device running on the Mac hardware exhibits the same wonky random packet stalls. What the hell.

Found it - apparently the Mac network stack (regardless of whether it's running MacOS or Windows) really doesn't like UPnP, something my Unifi network loves. Turn off UPnP at the router, boom, problem fixed. Turn it back on? Boom, problem returns. Hat tip to this guy: My difference is that it wasn't just MacOS, it was Windows 10 on the MacOS so it's either the drivers or the hard drive. Final culprit? Unifi router got a firmware update right around the time it started happening...They make great hardware but their firmwares are sometimes iffy.

Anyways, hopefully this helps someone somewhere sometime cause it's three months of building my machine over and over again to try and clear it. Lame.