|
当遇到一个网络故障时,你知道该如何下手吗?这是一个“复杂而又简单”的问题——之所以说它复杂,是因为网络故障何其多,要找到一个通用的套路很难;之所以说它简单,是因为“万变不离其宗”。以往我们的文章中,介绍了很多实际的知识和技巧,那可能让你多懂一点,但本文试图让你懂得解决问题的思路。
“邯郸学步”也好,“照猫画虎”也罢,总之,一遇到网络故障,就按照这些思路来办吧!
———————————————————— 一位网管的闹骚
现在的网吧客人,开机不会,输入法切换不会,字母大小写转换不会,玩私服登录器怎么用不会,QQ开语音不会,进了游戏不会退出,私服服务器关了说我机子问题。语音聊天不会开MIC,说网吧耳机是坏的,看电影嫌不是普通话的!QQ登录不上说机器不好,我跑过去一看,密码不对,那丫的还问我密码多少!!
打个CS别人放颗烟雾弹,他遭闪了,狂喊:网管死机了……今天有客人还问我,网管我这里怎么没有QQ币呢,你帮我下载点QQ币……我%#%##,那玩意要是能下载,我TMD就不用上班了~
—————————————————————— 一、总原则:OSI模型与网络故障的排除
做网管的,相比对“OSI”这个概念或多或少都有了解吧。为了降低设计的复杂性,增强通用性和兼容性,所有的计算机网络都设计成层次结构,并且是统一的——这种层次结构就是OSI。
小提示:什么是OSI模型? OSI,即OpenSystemInterconnection,开放系统互联。最早的网络刚刚出现的时候,很多大型公司都拥有网络技术,公司内部计算机可以互相连接,但却不能和其他公司连接,因为没有一个统一规范。ISO正是为此而来,它把网络分为物理层、数据链路层网络、网络层、传输层、会话层、表示层、应用层等7层,其中每一层都有其作用(见图1)。

1.通过OSI模型来排查问题
那么,这个OSI模型与解决网络故障有什么关系呢?实际上,一个很简单的道理——既然任何网络都是由这7层构成的,那么网络发生故障,也就是7层中的某一层,或者某几层出了问题,所以解决故障,就是解决层的故障了。这么说可能大家有点晕乎乎,我们举个例子来讲一下吧。
-------------
实例1:某客户端不能访问web服务
我们一般解决这一故障的思路是:首先检查客户端Web浏览器是否正确配置,可尝试使用浏览器访问另一个Web服务器;如果Web浏览器没有问题,可在Web服务器上测试Web服务器是否正常运行;如果Web服务器没有问题,再测试网络的连通性……
这个思路是什么意思呢?其实它就是从OSI模型的“应用层”出发,一直到“物理层”(网卡是否损坏?网线是不是断了?)。
---------------
网管在分析和排查网络故障时,应充分利用网络这种分层的特点,快速准确地定位并排除故障,这便是本文要介绍的总体思路。
2.两种逐层排查方式
对于这一思路,通常有两种逐层排查方式:一种是从低层开始排查,适用于物理网络不够成熟稳定的情况,如组建新的网络、重新调整网络线缆、增加新的网络设备等;另一种是从高层开始排查,适用于物理网络相对成熟稳定的情况,如硬件设备没有变动,而软件曾经变动,比如新装了TCP/IP协议、重装了操作系统和浏览器等等。
小提示:如何具体对某层进行排查? 网络故障在OSI模型的每一层,都有相应的检测排查工具或措施:物理层,使用专门的线缆测试仪;数据链路层,使用简ARP命令来检查MAC地址和IP地址之间的对应关系;网络层,除使用ping命令测试连通性和route命令查看路由配置外,还需要使用网络检测分析软件对网络层和传输层的数据通信进行检测分析;应用层,检测应用程序配置是否正确,对应用程序自身进行测试。
无论哪种方式,最终都能达到目标,只是解决问题的效率会不同而已。比如实例1中,如果你颠倒顺序,从“物理层”开始排查,那问题最终可以解决,但恐怕得花上一整天,结果却发现——原来是那个网站出了问题,别的一切正常……
3.不可过于教条
前面介绍的两种“逐层”排查方式显得比较古板,实际操作时,大家记得要灵活运用,否则可能浪费很多时间和精力。一种比较通用的方法是——折中法。
第一步:涉及到网络通信的应用出现故障,直接从位于中间的网络层开始排查,首先测试网络连通性。具体就是使用ping命令。这也是几乎所有网络故障发生后,网管第一步要做的就是ping的原因。
第二步:如果网络不能连通,再从物理层(测试线路)开始排查。如果网络能够连通,再从应用层(测试应用程序本身)开始排查。
实例2:网络之间不能正常通信
方法1:首先我们要ping远程计算机,成功则说明系统和网络正常,失败后再ping同一子网的网关来确定是否能连接到路由器。失败后再ping 127.0.0.1来确认TCP/IP协议是否正常。
方法2:首先ping 127.0.0.1,如果成功则ping同一子网的网关,如果成功则ping其他网关,直到最后ping远程主机。
这两种排查方法的思路是不一样的,方法1是从高层到低层,而方法2是从低层到高层。至于具体如何灵活去安排排查的顺序,这个是不一定的,需要大家经验的积累,经验能告诉你究竟怎样效率最高。
————————————— 小问题:中国台湾南部地震对造成的海底光缆故障的修复
上图就是发生在去年底的著名的“断网事件”的故障抢修示意图。实际上,对于这次抢修,主要分为四个过程:1.海底机器人找到破损光缆并安置无线发射应答器;2.机器人把破损光缆拉出海面;3.仪器检测光缆之后收回被中断的光缆;4.人工连接海底光缆;5.机器人对光缆进行“冲埋”、“安放”。整个故障解决过程实际上也遵循了对OSI模型的认识。至于具体思路是怎样的,大家能分析一下吗(见图2)?

—————————————
二、习惯:网络故障排除的经验
前面我们从技术的角度来介绍一些排除故障的思路,下面就从人为经验方面做些介绍。实际上,一个好的习惯对故障解决是非常重要的,尤其是长期需要和“故障”打交道的网管。
第一步:几真的知道“故障”是怎么回事吗?
在开始排除故障前,准备好纸和笔,将故障现象记录下来。在识别故障的时候要注意以下几点:
★当故障发生的时候,正在运行哪些程序? ★这些程序以前是否成功运行过? ★如果成功运行过,最后一次运行是在什么时候? ★如果发生故障之前对系统、软件配置以及硬件设备配置做了哪些更改?
第二步:列举可能导致故障产生的所有原因
将所有可能导致这一原因的情况列出来,记得不要放过任何细节、任何可能。比如无法浏览网页时候,到底是网卡故障、网络连接问题,还是网络协议设置不当,或者是IE浏览器的参数设置有误,或者干脆是ISP出了问题?
第三步:缩小包围圈
这里就开始逐一排除故障了,排除法是个不错的选择——如果你暂时确定不了“是什么造成故障”,那不妨试试确定一下“哪些因素不是造成故障的原因”,一一排除之后,答案不言自明。排除的时候有几个原则:
★先操作简单的,后操作复杂的:比如ping就很简单,而要用测试仪查查望线是否断裂就是复杂的。 ★先来“软”的,后来“硬”的:对软件设置问题的解决往往具有回溯性,且容易操作,建议将这部分放在最开始。 ★从本机到本地,从本子网到大局域网,从局域网到互联网:范围由小到大,容易让问题不那么复杂。
三、实战:一个网络故障解决步骤图
前文讲的内容显得比较零散,下面给大家来点“实惠”的,如果你遇到了网络故障,可以考虑以下面的步骤进行排查。
Google一下你的故障,看是否有类似的网友反馈,从中寻找答案 | | 调整软件设置、更换版本、更换软件 | | 重新安装软件 | | 查杀病毒、木马、流氓软件、为操作系统打上hotfix | | 重装操作系统 | | 重装拨号软件、换拨号软件 | 重建拨号连接、确认密码及账户 | 观察网络设备指示灯 | ping 127.0.0.1——ping本机IP——ping网关———————————ping DNS————————————————ping 远程主机——ping域名 | | | | | | | 失败则重装网卡驱动 失败则检查网线 失败则换正常DNS进行ping测试 失败则检查路由器 检查DNS服务器 | | | 检查网关设置、IPconfig检查本机IP route命令测试路由路径
| | 失败则重新安装TCP/IP协议 route命令测试路由路径 | ARP命令检查MAC与IP之间映射 ———————————————————————————————————————————————————————————————————————————— | | 协议分析器检查链路层、传输层数据通信 |
测线仪测试网线
电脑维修知识网
|