【IT168 专稿】对于我们网管员来说,最主要的工作就是保证企业内部网络和服务器的正常运行。一般的网络故障可以通过ping三步法来解决,借助ping 127.0.0.1和网卡地址以及网关地址来判断问题所在。但是最近笔者却遇到了一个非常规的故障问题,解决问题的步骤也和平时有很大差别,今天就写出来和各位IT168的读者分享。
故障起因:
笔者接到一位员工的电话,声称自己的计算机无法正常访问网络了。主要问题就是所有网络工具无法使用。对于一些简单的网络故障来说,笔者还是可以非常轻松解决的。于是亲自查看该计算机发现启动和运行程序没有任何异样,但是卡巴斯基杀毒软件不能正常启动了,开qq程序却弹出一个空白的MessageBox,然后就没有任何反应了,想上网查一下是什么原因,却发现浏览器什么页面也打不开,也就是说所有程序都无法访问网络。接下来笔者尝试用ping网关地址的方法来检测连通情况,结果却得到了和以往都不同的信息,在命令提示行窗口中显示出了
“Unable to initialize Windows Sockets interface, error code 0”的提示,具体意思就是不能够初始化windows sockets的接口,错误代码为0。
故障解决:
笔者通过另外一台计算机查看了故障提示含义,原来这个CODE 0是WSAStartup不能初始化的错误代码,也就是说该计算机的socket出问题了。之后尝试卸载网卡,重新安装驱动,问题依然没有解决。看来不是硬件问题,于是将解决问题的关键定位到软件和系统。之后通过google搜索
发现了解决方案,下面将解决步骤写出来。
第一步:出现“Unable to initialize Windows Sockets interface, error code 0”的提示是因为本地系统的注册表存在问题造成的。而根据提示描述我们可以知道是windows Sockets出现问题,所以在注册表中寻找windows Sockets对应的信息。
第二步:在没有问题的计算机上通过“开始->运行->输入regedit后回车”进入注册表编辑器。
第三步:在注册表编辑器中找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WinSock2\Parameters\Protocol_Catalog9\Catalog_Entries键值,在该键值下应该有十几项,每一个项目对应一个TCP/IP接口,这些接口有一个出问题就会造成网络故障。当然项目数
也随着机器的不同而有很大区别,少则十几个,多则几十个。(如图1)
图1 点击放大 |
第四步:我们把正常计算机注册表中对应的此键值导出,方法是在该键值上点右键选择“导出”。(如图2)
图2 点击放大 |
第五步:在导出范围处一定要选择“所选分支”,而不是“全部”,之后为保存的文件名起一个文件即可。(如图3)
图3 |
第六步:之后我们把这个保存的注册表文件复制到有问题的计算机上,然后通过双击运行的方法将其导入到有问题机器的注册表中,选择“是
”按钮完成导入工作。(如图4)
图4 |