确定服务中断是软件还是硬件所致

如果某个服务出现中断,大致上的原因一般为网络链路、网络设备、服务器等硬件问题或者服务器操作系统、应用系统等软件问题。我们可以使用ping这个操作系统自带的命令行工具来对这两种原因进行区分。

判断原则:Ping不通服务的IP地址属于硬件故障,能ping通则为软件故障。

Ping不通服务的IP地址属于硬件故障,能ping通则为软件故障。但是如果设置了服务器不对Ping做出响应的话,这时候可以使用nmap来探测目标设备。有关nmap的资料可参阅《浅议广域网中主机发现与管理:http://stlzy.blog.51cto.com/69882/641250

其他人和我一样吗?其它系统和疑似故障系统一样吗?

只是从自己的机器对网络和服务做出判断还是不够客观的,我们还需要更严谨的论证。前面我们已经大致的推测出故障原因,在这一节我们尝试对这个推测进行证明。

判断原则:可重复的结果才是基本可靠的结果。

让我们以几个假设来掩饰解决故障的思路。

假设1:总部A用户Ping不通服务器a而B用户可以。

因为A与B用户访问服务器a走过的是同样的网络路径,都是经过接入交换、核心交换、服务器交换,所以问题出在甲用户的自身。

假设2:总部A用户可以访问服务器a而不能访问服务器b,B用户有同样的故障现象。

因为A与B用户访问服务器a、b走过的是同样的网络路径,所以一般可以证明是服务器b本身问题或者是服务器b接入交换机硬件设备或上下行网络链路问题。

假设3:某个分公司E用户与F用户不能访问任何一台服务器,而总部A、B和分公司C、D四个用户没问题。

因为该分公司E、F用户访问任何一台服务器都要经过分公司接入交换2和联网路由2,所以应该联网路由2是关键节点,联网路由2本身的物理故障、联网路由的协议、或者网路由2和核心路由网络链路故障都是首先排除范围。

假设4:某个分公司C用户发现无法访问服务器a,询问后得知其他用户故障现象相同。

由于每个用户访问服务器a的路径不同,所以越靠近终点的网络路径和网络设备可疑性最大。从图三来看节点是服务器a的接入交换机这节点可能性最大,为较严重故障。

确定断点在何处

根据前面的排查,已经可以基本的确定是不是服务器的问题。如果是网络的问题,那么我们还要确定出断点才行。现在,我们要使用ping和tracert这两条命令完成这项工作。

假如我们事前已经对网络的拓扑很了解,并且知道一些关键节点的IP地址,那么我们只需要参考由近至远的原则逐个ping这些IP地址就可以知道断点的位置了。可是我们日常要访问的服务有很多,怎样才能知道数据怎样从我自己的计算机流向某个服务器的呢?Tracert命令就是为了解决这个问题的。只要Tracert某个域名或者IP地址,它就会把经过的设备的IP地址按照先后顺序显示在屏幕上。如果从某一行开始就不再显示IP地址,那么它的前一行的IP就是你尝试访问的目标所能到达的最后一台设备的IP地址。

建议在平时网络正常的时候就Tracert一些经常访问服务器的IP地址,记录下来正确的步骤是怎样的。等日后服务出现中断时可以用来比较路由有没有发生变化。


相关内容