电脑能正常上网,但是显示无Internet

背景

最近遇到这样的一个问题,一台电脑重装系统后无论插网线还是连WiFi,都显示无Internet,状态栏实现小地球图标,但是其实电脑是可以正常打开网页的。除此之外打开Outlook也显示需要重新输密码,但是输密码的界面打不开,提示网络异常。清除winsock目录,重置网络,更新驱动和修改EnableActiveProbing的值等等方法都不管用。
电脑能正常上网,但是显示无Internet_第1张图片
本来没太在意这个无Internet的问题,毕竟电脑打开访问网页很正常,但是研究outlook问题之后觉得问题根源还是这个无Internet的问题,于是研究了一段时间,翻阅了一些资料,搞明白了原理,原理如下:

原理

Win10有自己的一套网络状态检测机制,原理是每当连网后,系统会自动向微软的dns.msftncsi.com发出请求,然后返回一个NCSI.txt的值,这一值如果正确时,则确认为已连网。但是在win10 18362(即1903)版及以后的新版本中,连网返回值功能有了变化,这个返回服务器和值有了新变化并反映为6个注册表项中(见下图)。这些变化因国内部分运行商的网络重定向,不能得到正确的反馈,因此出现实际能上网却显示为无internet的问题。

然后如果网络状态检测不通过的话,微软套件比如outlook、onedrive等等登录同步可能都会显示网络异常,所以想解决微软套件问题要先解决网络状态检测不通过的问题。


解决方法

解决方法如下:
电脑能正常上网,但是显示无Internet_第2张图片
电脑能正常上网,但是显示无Internet_第3张图片

计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet

打开注册表到如上位置,将注册表中红框中新版本的键值改为Win10旧版本的键值,此外EnableActiveProbing也要确保是1,随后重启电脑,然后网络和outlook就恢复正常了。

嫌麻烦的朋友也可以把以下代码保存到txt文本,再改成.reg格式,这样双击就能自动修改好注册表

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet]
"ActiveWebProbeContent"="Microsoft NCSI"
"ActiveWebProbeContentV6"="Microsoft NCSI"
"ActiveWebProbeHost"="www.msftncsi.com"
"ActiveWebProbeHostV6"="ipv6.msftncsi.com"
"ActiveWebProbePath"="ncsi.txt"
"ActiveWebProbePathV6"="ncsi.txt"
"EnableActiveProbing"=dword:00000001




另一个方法:

此外还收集到另一个方法,但是没有测试过,也先一起分享出来,上面方法不管用的朋友也可以试试,方法如下:

打开网卡高级属性页面,将IPv4校验和分载传输的值改为禁用。
电脑能正常上网,但是显示无Internet_第4张图片
电脑能正常上网,但是显示无Internet_第5张图片

你可能感兴趣的:(桌面运维,windows,网络)