修复 Windows 提示无法联网
文章目录
介绍
Windows 任务栏中的网络连接图标变成了无法联网状态,但实际是可以上网的。虽然可以上网,但是会影响某些应用程序的联网状态判断,例如 Unity 的 Application.internetReachability
API。
环境
- Windows 10 22H2
- Windows 11 22H2
尝试
少数派的这篇文章提到了两种方法:一是关闭联网检测,实测无效;二是修改联网地址,实测有效。
实测发现所有关闭联网检测的方法都无效,注册表尝试了修改多个联网检测相关的键值,组策略也不行。
分析
如果不想修改联网测试的地址 msftncsi.com,那么就需要检查一下为什么原来的地址不行。
检测是否联网的逻辑 IPv4 是访问 ActiveWebProbeHost
+ ActiveWebProbePath
,结果必须是 ActiveWebProbeContent
,IPv6 同理。
使用 curl 测试一下现在的配置:
|
|
增加 www
子域名试一下
|
|
应该是微软不小心把 msftconnecttest.com
DNS A记录删除了,将配置中的域名增加 www. 前缀就正常了
其他
如果发现默认的 http://www.msftconnecttest.com/connecttest.txt 无法访问,可以尝试 http://www.msftncsi.com/ncsi.txt,具体方法参考上面的少数派链接。