扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
在上网冲浪的过程中,遇到无法上网的故障现象,可谓是常有的事情。每每遇到这样的故障现象,相信很多人会查看系统托盘区域处的本地连接状态信息,依照状态提示我们或许很快就能找到故障原因了。可是,最近笔者却遭遇一则奇怪的故障,系统托盘区域处的本地连接图标明明提示为“已经连上”,可是网络流量竟然为零,并且其他状态信息全部为空白;考虑到这则故障出现的机率不是很多,现在本文就将该故障的详细排查过程贡献出来,希望大家日后遇到类似故障时能少走弯路!
流量骤然为零
单位局域网中架设有一台DHCP服务器,内网中的所有计算机都是从DHCP服务器那里获得IP地址,进行共享上网访问的。某日,单位一位同事突然打电话给笔者,说他的计算机以前一直可以正常上网,可现在竟然不能上网了;笔者当时有事在身,无法及时赶到故障现场,于是建议他重新插拔一下网络线缆、重新更改一下上网设置、重新启动一次系统试试,很多时候这些尝试就能解决问题。
当同事将网络线缆拔下来,重新插上去后,系统托盘区域处的本地连接图标出现了“已经连上”提示,原以为这样就能正常上网了,可是同事进行上网测试操作时,发现还是不能访问到网络内容。不得已,笔者只好赶到故障现场,重启系统、重插网线之后,发现系统果然提示说“已经连上”,此时笔者用鼠标双击系统托盘区域处的“本地连接”图标,从其后出现的状态提示窗口中,看到网络流量竟然为零,同时其他状态信息都没有显示出来,上网访问时也不正常,看来同事的计算机真的遇到上网麻烦了。
测试连通状态
既然本地连接图标提示说“已经连上”,那按理来说,笔者应该能够ping通局域网网关地址,可是当笔者打开对应系统的dos命令行工作窗口,并在该窗口的命令提示符下执行字符串命令“ping 60.172.5.2”(其中60.172.5.2为本地局域网网关地址)时,发现系统竟然返回了“ping 60.172.5.2 unable to contact IP driver,error code 2”这样的结果信息,很明显故障计算机到本地网关之间是不能正常ping通的。
从返回的结果信息中,笔者发现在执行ping测试的过程中出现了错误,那这个错误究竟是什么因素引起的呢?笔者不放心,准备再用该命令测试一下本地IP地址。由于故障计算机使用的是动态IP地址,笔者正好想看看它有没有从DHCP服务器那里获得有效的上网地址,于是再次打开对应系统的dos命令行工作窗口,并在该窗口的命令提示符下执行字符串命令“ipconfig /all”,这一次系统返回的执行结果又让笔者大吃一惊,竟然出现“an internal error occurred”这样的提示,也就是说故障计算机不支持申请地址请求。没办法,笔者只好执行了字符串命令“ping 127.0.0.1”,看看故障计算机自身是不是存在问题;的确如笔者想像的那样,该执行结果同样也提示说“error code 2”,这说明无法ping通网关故障与网络连通性无关,问题出在故障计算机自身身上。
查看网卡状态
由于“ping 127.0.0.1”命令都不能被成功执行,笔者估计要么是网卡设备损坏了,或者是网卡驱动程序不能正常工作了。为了检查网卡设备的工作状态是否正常,笔者依次单击故障计算机系统桌面中的“开始”/“设置”/“网络连接”命令,在弹出的网络连接列表窗口中找到目标本地连接,并用鼠标右键单击该连接图标,从弹出的快捷菜单中执行“属性”命令,打开目标本地连接的属性设置窗口;
单击其中的“常规”标签,并在对应标签设置页面中选中目标网卡设备,再单击“配置”按钮,进入目标网卡设备的属性配置对话框;点选其中的“常规”标签,打开如图1所示的标签设置页面,笔者从该页面中清楚地看到目标网卡设备的工作状态是正常的,这说明问题与网卡设备的硬件状态没有关系。
重装网卡驱动
会不会是网卡驱动出现了损坏,造成了ping命令出错呢?想到这一点,笔者准备重新安装一遍网卡的驱动程序。为了保证网卡驱动安装正确,笔者特意找来了原装的驱动程序,然后打开系统的设备管理器窗口,找到目标网卡设备选项,用鼠标右键单击该设备选项,执行右键菜单中的“卸载”命令,先将原先的旧驱动程序从系统中彻底地卸载干净。
为了让故障计算机使用原装的网卡驱动程序,笔者又依次单击“开始”/“设置”/“控制面板”命令,在其后出现的系统控制面板窗口中双击“添加硬件”图标,在其后出现的向导窗口中(如图2所示),采用手工定位的方法安装好了网卡设备的原装驱动程序。
再次将网络线缆插入到网卡设备的对应接口中,进行上网测试时,遇到的故障现象还是和之前的一模一样,这说明笔者先前的努力没有取得任何实质性效果。
重置通信协议
在重装网卡驱动程序后,“127.0.0.1”地址仍然不能ping通,那问题只有一个,很可能是故障计算机的TCP/IP通信协议受到了损坏,因为笔者知道如果该协议受到损坏的话,Windows系统自带的许多网络命令都不能被正常使用。考虑到TCP/IP通信协议事实上是由tcpip.sys系统文件控制的,笔者只要将该文件恢复一下,不就实现重置TCP/IP通信协议的目的了。
想到做到,笔者立即从局域网中找了一台能够正常上网访问,并与故障计算机安装了相同操作系统的计算机,打开该计算机的系统资源管理器窗口,依次进入“Windows”、“system32”、“drivers”文件夹窗口,将其中的tcpip.sys系统文件拷贝到闪盘中;接着,笔者又通过闪盘将tcpip.sys系统文件替换掉故障计算机中的相同文件,再重新启动一下计算机系统。果然不出笔者所料,故障计算机立即能够正常上网了,打开本地连接图标的状态窗口时,也能够看到网络连接速度之类的提示信息了。
最后的总结
虽然上面的故障被成功解决了,但是让笔者感到很不解的是,tcpip.sys系统文件怎么会被损坏掉呢?难道是病毒在从中作祟?本来,笔者就打算将责任“推卸”给网络病毒,准备结案了事了;这时,待在一旁的同事突然说,最近他嫌上网下载速度不是很快,于是从网上下载安装了可以更改TCP/IP连接数的补丁程序,更换完该补丁程序后,上网就不正常了,会不会是这个补丁程序惹的祸呀?他的话语,让笔者恍然大悟,上网查询相关资料后,果然证实更改TCP/IP连接数的补丁程序会偷偷修改tcpip.sys系统文件,看来上面的网络流量为零故障还真是由那个补丁程序引起的呢!
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。