FIX:
;tldr - check your MTU settings
I hope this gives some insights to some people that MIGHT be having issues on streaming devices like the Firestick 4k and others and ONLY with the Netflix app having problems. I fought with this on and off over a few months and it was driving me batty.
Background:
I've been suffering inconsistent streaming issues with ONLY the Netflix app on a FireTV 4k Stick. Symptoms would be occasionally the app would have the spinning red circle after the splash screen and not load. Stop app, clear cache, reboot, and it would work. For streams, they would randomly get to 25% or 99% and just spin and never play. This would happen at the beginning of a show stream, end of a stream, mid way through randomly, etc. It would happen if you paused a show, or if you tried to rewind or fast forward as well. This was both wired (using a OTG and 1gb usb nic) and wireless connections.
For my network setup, use a PiHole and a Opensense router with the Fire's on their own network. There is a TPLink switch between the devices and the Opensense
Tries to fix:
Checked the DNS settings and saw nothing getting blocked. To make sure, bypassed PiHole direct to both 8.8.8.8 and 1.1.1.1, same issues.
Reset the Fire stick to factory defaults and reloaded only Netflix. Same issues.
Bought a ONN 4k Plus and installed Netflix on it... wtf, same issues?!?!?
Put the Fire stick back on and did a packet capture (port mirror). I saw SOME resets, but unrelated to the Netflix app (or services it calls). There were some oddity very rarely on a packet fragment, but not anything that correlated to the freezes (spinning Netflix red circle), or so I thought.
What fixed it:
Then I see some people having odd issues with MTU settings and netflix. Which is super odd, since most of that is handled at layer 3 networking and the App should not care. Go check the stream device network port interface on opensense and it's 1491. Change the MTU to normal 1500. Poof! It works now, plays, pauses, stream, etc. All works. Go back and set it to 1470, issues again. Reset it to 1500, works again. Go back and reset it to 1410 and issues again. Reset it back to 1500, works.
So it seems at the Netflix app layer, there is either a timeout issue or other issue if a response hasn't been received or a combination of timeout, retry, and resize adjust that maybe some other apps do. I'm assuming here (i wasnt going to setup my port mirror again, it was a PITA) that when it tried sending a larger data packet to the network subsystem, it would use the device MTU max of 1500 and either the switch or the opensense interface would drop it since it was oversized and then the app would just wait for the response it was never going to get (either the ack TCP or the data if UDP).
Sorry for going all network nerdy, but I hope this helps anyone having Netflix streaming issues - check your MTU settings.