你没看错标题,部分使用 Windows 10/11 的朋友最近的确遇到了这么一件烦心事:原本在任务栏中的网络连接图标突然变成了「小地球」,鼠标放上去会发现系统提示说「未连接到 Internet」或「已连接,无 Internet 访问」。

在这种情况下部分微软自家应用无法正常联网,使用网页浏览器虽然可以正常浏览网页,从「眼不见心不烦」的角度来说还是想办法对其修复比较好。

原理

「小地球」的出现和 Windows 判定当前设备互联网连接状态的方式有关。

当电脑连接到有线网络或者无线网络后,Windows 会发送请求到微软的特定服务器,服务器成功收到请求后会返回值确定「设备已经拥有了正常的网络访问功能」;如果请求后 Windows 系统没有收到微软服务器返回的值,则会被判定为「无 Internet 访问」。

与之类似的,Android 上也有类似的网络连接状态判定机制。早年我们曾分享过的在 Android 系统中去掉 Wi-Fi 图标上「×」号的技巧,其原理和思路也能用来解决这次的 Windows 网络连接问题。

关联阅读:消除 Android 7.1.1 中 Wi-Fi 和移动网络上的 x 号 丨一日一技

方法一:关闭微软的网络连接状态指示器

根据微软的官方文档描述,Windows 系统通过内建的网络连接状态指示器(NCSI)来判断设备的 Internet 连接状态,在连接到有线或无线网络时,它会向 这个网址 发送 DNS 请求和 HTTP 查询请求,通过返回的状态来给出网络状态提示。

你也可以现在点击 这个网址,看看浏览器中是否会出现「Microsoft Connect Test」这段文本,任务栏网络状态已经是「小地球」的朋友在这里多半会显示为无法访问。针对这种问题,微软官方给出的解决方案是关闭检测。

我们首先选择通过「组策略」的方式来关闭检测:定位到组策略中的「计算机配置 > 管理模板 > 系统 > Internet 通信管理 > Internet 通信设置 > 关闭 Windows 网络连接状态指示器的活动测试」,找到「关闭 Windows 网络连接状态指示器的活动测试」的配置项,选择「已启动」并点击「确定」,最后重启电脑来使得组策略生效。

同时,我们也可以通过修改注册表的方式来实现同样的效果。只需定位到注册表的  HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\NetworkConnectivityStatusIndicator,然后创建一个名称为 NoActiveProbeREG_DWORD 值,将值修改为 1,之后同样重启后等待生效。

重启后大家可以看看任务栏的「小地球」是不是已经恢复成正常的网络图标了,如果还是不行,接下来也可以试试下面这个办法。

方法二:修改网络连接状态请求目标

除了直接关闭网络连接状态指示器,我们也可以将网络连接状态指示器网址修改成此前 Windows 10 上能够正常返回请求结果的网址。这里修改依然通过注册表完成。

打开「注册表编辑器」,定位到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet 路径,然后修改下面几个注册表项对应的键值:

  • 数值名称为 ActiveWebProbeContent 的注册表项,数值数据修改为 Microsoft NCSI
  • 数值名称为 ActiveWebProbeContentV6 的注册表项,数值数据修改为 Microsoft NCSI
  • 数值名称为 ActiveWebProbeHost 的注册表项,数值数据修改为 msftncsi.com
  • 数值名称为 ActiveWebProbeHostV6 的注册表项,数值数据修改为 ipv6.msftncsi.com
  • 数值名称为 ActiveWebProbePath 的注册表项,数值数据修改为 ncsi.txt
  • 数值名称为 ActiveWebProbePathV6 的注册表项,数值数据修改为 ncsi.txt

其他项目保持不变,修改完成之后重启电脑后看一下状态栏网络图标是否恢复正常。

小结

近期遇到网络连通性检测障碍问题的设备不在少数,除了以上两种我们亲测有效的方法外,网络上还有其它方法也可以解决这一问题。如果还有其它方法对你的情况而言有效,不妨在评论区留言分享。

参考链接:

> 下载 少数派 2.0 客户端、关注 少数派公众号,解锁全新阅读体验 📰

> 实用、好用的 正版软件,少数派为你呈现 🚀