So 's been complaining on & off for ages that our wifi sucks.
It turns out Android just sucks, per this post by :
major.io/2019/03/17/pix
Looks like ConnectivityService craps itself on IPv6 networks!? v4-only VLAN breaks easily using Chromecast, though. :-/
Conversation
I wonder though if it's an Android problem, or a Google IPv6 problem. You can't set the connectivity check endpoint on either iOS or Android, so it's hard to tell. The network trace at the end is strange, though.
1
You can set Android's connectivity check endpoints via the global settings captive_portal_https_url, captive_portal_http_url, captive_portal_fallback_url and captive_portal_other_fallback_urls. These aren't exposed in the standard Settings app UI but they can be set via adb.
1
1
As an example, ignoring the fallback settings:
adb shell settings put global captive_portal_http_url connectivitycheck.grapheneos.org/generate_204
adb shell settings put global captive_portal_https_url connectivitycheck.grapheneos.org/generate_204
Twitter hides the URL scheme so copy it as text.
1
There's a decent chance that it's a DNS issue and it tests DNS beyond resolving these. If the network isn't working reliably based on the connectivity tests, Android will only try to use it if it doesn't have any other options like mobile data or other available Wi-Fi networks.


