引言
近期在使用Windows系统时,网络访问出现了一些问题:
- 通过浏览器可以访问互联网,但Windows右下角网络显示“地球”图标,提示
无Internet
; - UWP应用提示“貌似你的电脑已脱机。请确保完全连接到 Internet,然后再重试。”,例如:Microsoft便笺(Sticky Notes)无法同步。
原因
Windows判断互联网访问方法
Windows检测设备是否连接互联网,通过Network Connection Status Indicator(NCSI,网络连接状态指示器)进行检测,当电脑脸上网络,系统会“主动”请求http://www.msftconnecttest.com/connecttest.txt
,通过返回内容判别联网状态。
问题出现原因
由于Windows系统的网络连通性探测的域名解析近期出现了问题(即Active Probe网络活动探针出现了问题),Active Probe会从DNS解析和HTTP连接两方面进行测试,任意一个测试不通过都会导致系统认为无Internet连接1。Active Probe在注册表中相关参数里,域名www.msftconnecttest.com
对应的IP被TCP劫持了1,导致网络连通性结果为失败,系统认为设备没有连接互联网,其结果会被应用在系统内置条件判断上,因此会出现上述问题。
方案一 修改NCSI检测地址
因为www.msftconnecttest.com的连接出现问题,因此可以修改NCSI的检测服务器,以实现联网检测(从下面提供的可选服务2中选择一种修改即可)。具体步骤:
- 打开注册表(Windows+R输入
regedit
,回车) - 定位到
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet
- 修改参数
|
|
- 重启电脑
初始配置(用于恢复原始配置使用)
|
|
方案二 修改host
在host文件中增加域名www.msftconnecttest.com
的映射
|
|
若此IP出现无法连通时,可使用ping检测获得可以连通的IP地址,并选择响应时间短的IP地址。
方案三 禁用探针(Active Probe)3
- 打开注册表(Windows+R输入
regedit
,回车) - 定位到
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet
- 修改参数
EnableActiveProbing
的值为0 - 重启计算机
笔者较为推荐方案一,方案二可能出现需要频繁修改的情况,方案三可能会影响其他微软服务的使用。
参考内容
- [4]校园网微软应用无法同步