網(wǎng)絡(luò)故障的檢修思路
七彩穎欣老師
網(wǎng)絡(luò)問題往往是很獨(dú)特的,且有時(shí)是難以解決的。故障檢修要對(duì)付一些不希望出現(xiàn)的事情,通常需要的只是掌握概念性的知識(shí), 而不是為配置網(wǎng)絡(luò)所需的細(xì)節(jié)的知識(shí)。要想正確、順利地解決問題,就需要清楚的了解整個(gè)局域網(wǎng),了解網(wǎng)絡(luò)的布線、電氣環(huán)境、 TCP/IP 如何在網(wǎng)絡(luò)上、在單個(gè)主機(jī)、在協(xié)議棧的各層之間為數(shù)據(jù)選擇路由等。對(duì)于檢修網(wǎng)絡(luò),這些是非常重要的。

在檢修網(wǎng)絡(luò)故障的工作中,下面的一些提示是很有用的:
1、不要忽略顯而易見的東西。網(wǎng)絡(luò)電纜松動(dòng)是很常見的問題,應(yīng)檢查插頭、連接器、 電纜、集線器和開關(guān)等,小事情可能引起大問題。
2、大多數(shù)問題是由人為因素(錯(cuò)誤)造成的,通過提供網(wǎng)絡(luò)配置和作用信息或提供這方面的培訓(xùn),可以杜絕其中的大部分錯(cuò)誤。
3、要注意解決問題的方式方法,應(yīng)利用每次測(cè)試時(shí)收集到的信息去指導(dǎo)你的測(cè)試,如果不能確保你所選擇的原始測(cè)試環(huán)境,就千萬不要根據(jù)主觀臆斷轉(zhuǎn)移到另一個(gè)測(cè)試環(huán)境中。
4. 應(yīng)廣開思路、靈活變通,不要認(rèn)為問題的原因太多,不要認(rèn)為在應(yīng)用程序級(jí)發(fā)現(xiàn)的問題就不是下一級(jí)引起的。有些人總認(rèn)為網(wǎng)絡(luò)有故障, 而另一些人總認(rèn)為遠(yuǎn)程端有問題, 某些人如此肯定他們知道問題的原因, 以致不管測(cè)試的結(jié)果。千萬不要重蹈這些覆轍, 應(yīng)測(cè)試每一種可能的情況,根據(jù)測(cè)試結(jié)果決定你的行動(dòng)。
5、采用幾種簡(jiǎn)單的故障檢修工具。對(duì)于大多數(shù)的 TCP/IP 軟件問題, 用幾種簡(jiǎn)單的工具就足以解決問題, 花些時(shí)間學(xué)習(xí)如何使用新的檢修工具是值得的。由于很多網(wǎng)絡(luò)問題的原因都很簡(jiǎn)單, 因而對(duì)問題有一個(gè)清晰的了解往往就可能找到答案。遺憾的是情況并不總這這樣!下面介紹幾種簡(jiǎn)單的工具,可以幫助你去攻克最難解決的問題。

Ping :這個(gè)命令工具在 Linux/Unix 、 Dos、 Windows 9x 、 Windows NT 等系統(tǒng)下都可以找到。
這一工具可以測(cè)試你的系統(tǒng)是否能到達(dá)一臺(tái)遠(yuǎn)程的主機(jī), 這一簡(jiǎn)單的功能對(duì)于測(cè)試網(wǎng)絡(luò)的連接是非常有用的, 而與在其中檢測(cè)到問題的應(yīng)用程序無關(guān)。Ping 允許你下一步是測(cè)試網(wǎng)絡(luò)連接層 (較低層)還是應(yīng)用程序?qū)樱ㄝ^高層)。如果 ping 顯示分組報(bào)文可以到遠(yuǎn)程系統(tǒng)并返回,用戶的問題就可能在較高層中;如果分組報(bào)文不能返回傳送,那么故障可能在較低的協(xié)議層或物理層中。
利用用戶的主機(jī)名或 IP 地址, 可先對(duì)遠(yuǎn)程主機(jī)使用 ping 命令;如果執(zhí)行成功, 就由用戶對(duì)該主機(jī)使用 ping 命令;如果也執(zhí)行成功,那么就應(yīng)集中精力去分析用戶遇到問題的那個(gè)應(yīng)用程序。
如果你的 ping 命令執(zhí)行成功, 而用戶的 ping 命令卻失敗, 就可以集中測(cè)試該用戶的系統(tǒng)配置文件,以及將你和用戶到該遠(yuǎn)程主機(jī)的路徑進(jìn)行比較,找到它們的不同之處。
如果你和用戶的 ping 命令都失敗了, ping 命令顯示的出錯(cuò)信息是很有幫助的,可以指導(dǎo)你進(jìn)行下一步的測(cè)試計(jì)劃。以下是幾種基本的出錯(cuò)類型:unknow host 該遠(yuǎn)程主機(jī)的名字不能被DNS(域名服務(wù)器)轉(zhuǎn)換成 IP 地址, DNS可能出故障、該名字可能是不正確的、你的系統(tǒng)和遠(yuǎn)程服務(wù)器之間的網(wǎng)絡(luò)可能出毛病。如果你知道該遠(yuǎn)程主機(jī)的 IP 地址, 可以再試一試 ping 命令。如果利用它的 IP 地址能達(dá)到該主機(jī),問題就可能出在 DNS上。
Network unreachable 本地系統(tǒng)沒有到達(dá)該遠(yuǎn)程系統(tǒng)的路由。如果在 ping 命令中使用 IP地址, 則利用主機(jī)名重新輸入 ping 命令, 這就消除了輸入不正確 IP 地址的可能性。如果使用路由選擇協(xié)議,一定要確保它正在運(yùn)行,并使用 nestat 去檢查其路由表。
no answer 遠(yuǎn)程系統(tǒng)沒有響應(yīng)。大多網(wǎng)絡(luò)實(shí)用程序都有不同形式的類似信息,某些系統(tǒng)的ping 命令可打印成 100% packet loss, telnet 打印成 connection timeout 。所有的這些錯(cuò)誤信息都說明同一個(gè)問題:本地系統(tǒng)有一條到達(dá)遠(yuǎn)程系統(tǒng)的路由, 但它卻接收不到它發(fā)給該遠(yuǎn)程系統(tǒng)的任何分組報(bào)文響應(yīng)。這種問題的原因有很多, 遠(yuǎn)程主機(jī)可能沒有工作、 本地或遠(yuǎn)程主機(jī)可能配置不當(dāng)、 本地和遠(yuǎn)程主機(jī)之間的線路不正常等等。只有用其它的方法才可以隔離該問題的原因。

廢了一大堆口舌, 終于“ UNPING”的原因道出個(gè)頭緒來了, 更加高深的我也不懂了, 請(qǐng)多多包涵。下面我們繼續(xù)看看 ping 上了后它所顯示的內(nèi)容說明了什么。
ping 命令的基本格式是:ping host [packetsize][count] (不同的系統(tǒng),格式略有不同)host 是被測(cè)試遠(yuǎn)程主機(jī)的主機(jī)名或 IP 地址。Packetsize 是可選項(xiàng),定義測(cè)試分組報(bào)文的長(zhǎng)度(Byte ),只有在使用 count 字段是才使用。卻省的分組長(zhǎng)度是 56Byte ,count 是測(cè)試時(shí)發(fā)送的分組數(shù)。Count 一般設(shè)置為較低值,一般設(shè)為 4 或 5 就可以了。
測(cè)試從 Link 上能否到達(dá) ly ,用以下命令:C:>ping ly Pinging ly [222.222.222.15] with 32 bytes of data:Reply from 222.222.222.15:bytes=32 time=1ms TTL=128
Reply from 222.222.222.15:bytes=32 time=1ms TTL=128
Reply from 222.222.222.15:bytes=32 time=1ms TTL=128
Reply from 222.222.222.15:bytes=32 time=1ms TTL=128
Ping statistics for 222.222.222.15:
Packets:Sent = 4, Received = 4, Lost = 0 ( 0% loss ) ,
Approximate round trip times in milli-seconds:
Minimun = 1ms, Maximum = 1ms, Average = 1ms 該測(cè)試表明 link 到 ly 的連接非常正常,沒有丟失分組,響應(yīng)很快。在 link 到 ly 之間的往返平均只需 1 毫秒。對(duì)于局域網(wǎng)的連接,分組丟失越少和往返時(shí)間越小則越正常。TTL( Time To Live ) =128。該 ping 命令顯示的統(tǒng)計(jì)信息可以指出下一級(jí)的網(wǎng)絡(luò)問題。其關(guān)鍵的統(tǒng)計(jì)信息是:* 一個(gè)分組往返傳送需要多長(zhǎng)時(shí)間, 它顯示在 time= 之后。
* 分組丟失的百分比。它顯示在 ping 輸出結(jié)束處的總統(tǒng)計(jì)行中。
* 分組到達(dá)的次序。如每個(gè)分組的 ICMP 序號(hào)( icmp_seq )。
如果分組丟失率高、 響應(yīng)時(shí)間非常慢, 或者各分組不按次序到達(dá), 那么就有可能是硬件有毛??;當(dāng)然,如果這些情況發(fā)生廣域網(wǎng)上就不必?fù)?dān)心太多。
在本地網(wǎng)絡(luò)中, 其往返時(shí)間約等于 1 毫秒,幾乎或完全沒有分組丟失, 各分組應(yīng)按次序到達(dá)。
如果不是這樣, 那么網(wǎng)絡(luò)硬件就有問題。在以太網(wǎng)中可能是由于:不合適的電纜端接 (終端電阻)、不良電纜、不良的有源硬件( Hub等)。首先要檢查電纜的端接, It's so easy ,看看有沒有終端電阻。這是一個(gè)最常見最簡(jiǎn)單的檢測(cè)電纜的方法是用一個(gè)萬用表測(cè)量某一端口的電阻值。如果測(cè)得端口電阻為零,說明電纜短路,為無窮大則斷路, 50 歐左右說明有一個(gè)終端電阻脫落,正常應(yīng)在 25 歐左右。
一個(gè)簡(jiǎn)單的 ping 測(cè)試的結(jié)果,即使該測(cè)試順利通過,也能指導(dǎo)你做進(jìn)一步的測(cè)試,幫助你找到最可能發(fā)生問題的地方。但是要深入檢查問題, 并找到潛在的原因, 還需要其它的診斷工具。
最后再簡(jiǎn)單介紹幾個(gè)有用的工具:netstat 可提供各種各樣的信息, 通常用來顯示每個(gè)網(wǎng)絡(luò)接口、網(wǎng)絡(luò)插口、網(wǎng)絡(luò)路由表等的詳細(xì)統(tǒng)計(jì)資料。
arp 提供有關(guān)以太網(wǎng) IP 地址轉(zhuǎn)換的信息, 它可以用來檢測(cè)本地網(wǎng)絡(luò)中, 用錯(cuò)誤的 IP 地址配置的系統(tǒng)。
Ifconfig 提供接口的基本配置信息。它對(duì)于檢測(cè)不正確的 IP 地址、 子網(wǎng)掩碼和廣播地址是很有用的。

