当前,怎样建立局域网的文章在各大报章杂志上多有介绍,而对网络的维护和故障检修较少提及。为此,笔者就以一个建立在TCP/IP上的网络为例,说说网络故障的检修。
网络问题往往是很独特的,且有时是难以解决的。故障检修要对付一些不希望出现的事情,通常需要的只是掌握概念性的知识,而不是为配置网络所需的细节的知识。要想正确、顺利地解决问题,就需要清楚的了解整个局域网,了解网络的布线、电气环境、TCP/IP如何在网络上、在单个主机、在协议栈的各层之间为数据选择路由等。对于检修网络,这些是非常重要的。
在检修网络故障的工作中,下面的一些提示是很有用的:
1. 不要忽略显而易见的东西。网络电缆松动是很常见的问题,应检查插头、连接器、电缆、集线器和开关等,小事情可能引起大问题。
2. 大多数问题是由人为因素(错误)造成的,通过提供网络配置和作用信息或提供这方面的培训,可以杜绝其中的大部分错误。
3. 要注意解决问题的方式方法,应利用每次测试时收集到的信息去指导你的测试,如果不能确保你所选择的原始测试环境,就千万不要根据主观臆断转移到另一个测试环境中。
4. 应广开思路、灵活变通,不要认为问题的原因太多,不要认为在应用程序级发现的问题就不是下一级引起的。有些人总认为网络有故障,而另一些人总认为远程端有问题,某些人如此肯定他们知道问题的原因,以致不管测试的结果。千万不要重蹈这些覆辙,应测试每一种可能的情况,根据测试结果决定你的行动。
5. 采用几种简单的故障检修工具。对于大多数的TCP/IP软件问题,用几种简单的工具就足以解决问题,花些时间学习如何使用新的检修工具是值得的。
由于很多网络问题的原因都很简单,因而对问题有一个清晰的了解往往就可能找到答案。遗憾的是情况并不总这这样!下面介绍几种简单的工具,可以帮助你去攻克最难解决的问题。
Ping:这个命令工具在Linux/Unix、Dos、Windows 9x、Windows NT等系统下都可以找到。这一工具可以测试你的系统是否能到达一台远程的主机,这一简单的功能对于测试网络的连接是非常有用的,而与在其中检测到问题的应用程序无关。Ping允许你下一步是测试网络连接层(较低层)还是应用程序层(较高层)。如果ping显示分组报文可以到远程系统并返回,用户的问题就可能在较高层中;如果分组报文不能返回传送,那么故障可能在较低的协议层或物理层中。
利用用户的主机名或IP地址,可先对远程主机使用ping命令;如果执行成功,就由用户对该主机使用ping命令;如果也执行成功,那么就应集中精力去分析用户遇到问题的那个应用程序。
如果你的ping命令执行成功,而用户的ping命令却失败,就可以集中测试该用户的系统配置文件,以及将你和用户到该远程主机的路径进行比较,找到它们的不同之处。
如果你和用户的ping命令都失败了,ping命令显示的出错信息是很有帮助的,可以指导你进行下一步的测试计划。以下是几种基本的出错类型: unknow host 该远程主机的名字不能被DNS(域名服务器)转换成IP地址,DNS可能出故障、该名字可能是不正确的、你的系统和远程服务器之间的网络可能出毛病。如果你知道该远程主机的IP地址,可以再试一试ping命令。如果利用它的IP地址能达到该主机,问题就可能出在DNS上。
Network unreachable 本地系统没有到达该远程系统的路由。如果在ping命令中使用IP地址,则利用主机名重新输入ping命令,这就消除了输入不正确IP地址的可能性。如果使用路由选择协议,一定要确保它正在运行,并使用nestat 去检查其路由表。