All of a sudden, you are beset with 60-second hangs.
You're right--it should outright error. You should only see timeouts like that if you were dropping the packets from some middleware or middlebox, but your client still had a valid IP address.
No, that's not how it works. Frankly, I'm astonished to see this claim here.
I have a couple of apps on my computer that do exactly that.
I am looking forward to learning how it does work...
It's basic sockets. If you call connect() when the internet is disabled, the errno is ENETUNREACH.
The higher-level API are built on sockets. If any apps are misbehaving, they're simply badly coded.
Yup. I've done a bit of that stuff, in my time.
> If any apps are misbehaving, they're simply badly coded.
Plenty of that stuff, going around.
Might want to ease back on the "instant insult" thing. Not a good look.
So are you willing to admit now that "the standard TCP timeout" was a misdiagnosis of your problem?
You appeared to be projecting a personal problem with some unnamed badly coded apps onto everyone, as if it were inevitable, but the original commenter who said they turned off WiFi obviously does not experience this problem, and neither do I for that matter.
Default literally insane legacy behaviour is just vomiting eth${RAND} where RAND depends on racing conditions.
My educated guess is that people that insist on using the legacy eth${RAND} never had a surprise random firewall and routing rules suddenly apply to different interfaces at a inconvenient time, making production halt and catch on fire, yet.
systemd developers like to come up with clever solutions to the problems they care about, and ignore the side effects for any use cases they don't care about. And quite often those afflicted use cases are the ones most people would consider to be the more typical use cases.
It was a badly-written comment. I meant some apps (and background tasks) on my computer hang. Most deal with it, but a surprising number don’t. I gave up on sniffing with Terminal and other tools, trying to figure out which ones. I have a number of dev tools installed on my computer, and a lot of those have a … casual … approach to quality.
I have no issue admitting fault (I do it way too often), but I don’t really dig rewarding boorish behavior, so I just figured I’d leave it alone.