网络怪事--不能上网只能上qq - 心折高山- 51CTO技术博客

  首先,我们需要知道的是,现在上网用的协议一般为TCP/IP协议,IP协议全称为internet protocal,位于OSI七层协议的第三层(网络层),基于IP协议的第四层(传输层)的协议有TCP和UDP。我们平时上网所用的web浏览器就工作在TCP协议之上,而QQ则工作在UDP之上(但有的时候QQ也调用TCP协议,这个这里就不深入了)。知道这一点非常重要。

   好了,知道了工作原理,我们自然就可以大胆地有以下的估测:QQ正常使用,说明UDP没问题,网页无法浏览,问题很就可能出在TCP上。网上查一下关于windows中TCP通信原理的内容,这样就找到了一个最普遍的原因:Winsock错误。

原因一:WinSock组件损坏


   WinSock其实是windows环境下TCP/IP的网络编程接口,封装了常见的大量网络相关API,实现点对点的网络通信。一旦WinSock功能模块有所损坏的话,就会给网络通信带来问题。出现能上QQ不能打开网页有大约80%的情况都是由于Winsock组件被破坏。组件被破坏的原因有几种:病毒原因、不完善的杀毒软件xx病毒的后遗症、盗版Windows XP、安装操作系统补丁故障及非正常的系统还原等。 可以先把Windows安装关盘放入光驱,运行sfc/scannow命令来修复。


   网上还有个专门的工具:Winsock Fix。若出显现问题的话,用此工具修复,重启,一般都能恢复正常。


原因二:域名解析错误





   1)计算机进行域名解析时先要访问本机的Hosts文件,通常一些病毒会修改这个文件以屏蔽一些网站,特别是反病毒网站的访问(见补充)。Hosts文件在用户系统目录中,默认为“C:\Windows\System32\Drivers\etc”目录下,我们可以用“记事本”将其打开。一般情况下,“127.0.01 localhost”以下的内容是不存在的,所以都可以删除。


   2)检查DNS服务器的设置,可以用如“nslookup ”,如果返回的信息是“Default Server:UnKnown”,那么可以肯定是DNS服务器设置出了问题。此时可以到其他人的电脑上,在CMD下用ipconfig /all来查看正确的DNS,然后在配置IP的窗口下填入正确额DNS即可。


   3)还有一种可能,是本地DNS缓存出现了问题。为了提高网站访问速度,系统会自动将已经访问过并获取IP地址的网站存入本地的DNS缓存里,一旦再对这个网站进行访问,则不再通过DNS服务器而直接从本地DNS缓存取出该网站的IP地址进行访问。所以,如果本地DNS缓存出现了问题,会导致网站无法访问。可以在“运行”中执行ipconfig/flushdns来重建本地DNS缓存。


   补充:利用host文件来屏蔽指定的网址,原理是在计算机在进行域名解析的时候,首先要检查host中的条目,类似于高速缓存,要找到对应的条目,直接使用该条目,也就不通过DNS服务器去查询了。因此,我们想要屏蔽 的话,只要在host中加上一条: 127.0.0.2即可。什么意思呢?就是当我们在浏览器敲入后,计算机就会查host,找到上面所写的那个条目,然后就会访问127.0.0.2,而此IP是本地的回环地址,也就是对应本计算机,这样的话,就等于sina服务器就是你自己的电脑,这当然是不可能得到正确的响应的。


原因三:代理设置不当


   浏览某些网页的时候有可能莫名其妙地自动设置代理,或者曾经使用过某个代理,很长一段时间一切正常,因此会忘记代理的存在,某天代理失效了,就上不了网了。挠破头皮也不会想到是代理的问题吧?所以要注意这一点。删除代理或者用个正常的代理即可恢复正常。


原因四:浏览器损坏





   一般大家都用IE或基于IE的浏览器,要是IE坏了,其他正常有何用?能浏览网页吗?如何确定IE损坏了呢?在排除Winsock、域名解析、代理等问题的等前提下,可以尝试下用firefox、opera等非IE核心的浏览器,要是正常能上网的话,就说明IE有问题。重装一下即可解决。


   在windows XP中,默认状态是无法重装IE6的,可按如下方法进行修复:


   首先准备好Windows XP安装光盘,插入光驱,在“开始/运行”窗口输入“rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 %windir%\Inf\ie.inf”命令,回车后即可重装IE。


   也可以打开“注册表编辑器”,展开[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\{89820200-ECBD-11cf-8B85-00AA005B4383}],将IsInstalled 的DWORD 值改为0 就可以从“添加删除程序”中重装IE了。


原因五:防火墙阻挡


   有些杀毒软件或防火墙的网络访问规则(如:瑞星的网络防火墙中访问规则设置、金山毒霸的网络防火墙中IP访问规则等等),如果因为各种原因禁止了 Windows Explorer、Interner Explorer对网络的访问,也会导致“能上QQ但不能上网的问题”发生。


原因六:ApplicationManagement问题

   出现只能上QQ不能开网页的情况,重新启动后就好了。不过就算重新启动,开7到8个网页后又不能开网页了,只能上QQ。有时电信往往会让你禁用ApplicationManagement服务,就能解决了。具体原因不明。

原因七:其他情况


   1)病毒感染,查杀病毒。


   2)无法打开,提示网页下载错误,在开始—运行里输入:
   regsvr32 /s Softpub.dll
   regsvr32 /s Mssip32.dll
   regsvr32 /s Initpki.dll
   regsvr32 /s Wintrust.dll
   重新启动IE,可解决问题({zh1}一个dll可以不加载,酌情处理)


   3)还有一种现象也需特别留意:就是能打开网站的首页,但不能打开二级链接,如果是这样,处理的方法是重新注册如下的DLL文件: 
  在开始—运行里输入:
   regsvr32Shdocvw.dll
   regsvr32Shell32.dll(注意这个命令,先不用输)
   regsvr32Oleaut32.dll
   regsvr32Actxprxy.dll
   regsvr32Mshtml.dll
   regsvr32Urlmon.dll
   regsvr32Msjava.dll
   regsvr32Browseui.dll
  注意:每输入一条,按回车。第二个命令可以先不用输,输完这些命令后重新启动windows,如果发现无效,再重新输入一遍,这次输入第二个命令。

本文出自 “” 博客,请务必保留此出处





郑重声明:资讯 【网络怪事--不能上网只能上qq - 心折高山- 51CTO技术博客】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——