對于網絡管理員來說,在進行網絡故障的測試排除時可以選用多種方法。通常可以使用網絡分析儀等硬件設備或使用網絡管理系統,以及一些網絡測試命令等軟件方法。由于硬件測試儀器的價格一般都較高而難以配置,所以使用軟件測試方法是大多數網絡管理員常用的選擇。常用的網絡測試命令如下。
1.網絡連通測試命令ping
ping命令是各種網絡操作系統中都含有的一個專用于TCP/IP協議的探測工具。網絡管理員可以使用該命令查看所測試的網絡設備是否可達。ping命令通過向所測試的設備發送網際控制報文協議(ICMP)回應報文并且監聽回應報文的返回,以校驗同遠端網絡設備或本地網絡設備的連接情況。對于每個發送報文,ping最多等待1秒并打印發送和接收報文的數量,比較每個接收報文和發送報文,以校驗其有效性。
(1)Windows系統中ping命令的使用。
在Windows系統中ping命令的格式如下。
ping[-t][-a][-n count][-1 size][-f][-i TTL][-v TOS][-r count][-s count][[-j computer-list]|[-k computer-list]][-w timeout]destination-list
命令參數說明如下。
destination-list 目的計算機的地址。
-t不斷向指定的計算機發送報文,按Ctrl+Break可以查看統計信息或繼續運行,直到用戶按Ctrl+C鍵中斷。
-a將IP地址解析為計算機名。
-n count發送由count指定數量的回應報文。
-1 size發送由size指定數據大小的回應報文。
-f在包中發送“不分段”標志。該包將不被路由上的網關分段。
-i TTL將“生存時間”字段設置為TTL指定的數值。
-v TOS將“服務類型”字段設置為TOS指定的數值。
-r count在“記錄路由”字段中記錄發出報文和返回報文的路由。指定的Count值最小可以是1,最大可以是9。
-s count指定由count指定的轉發次數的時間戳。
-j computer-list經過由computer-list指定的計算機列表的路由報文。中間網關可能分隔連續的計算機(松散的源路由)。允許的最大IP地址數目是9。
-k computer-list經過由computer-list指定的計算機列表的路由報文。中間網關可能分隔連續的計算機(嚴格源路由)。允許的最大IP地址數目是9。
-w timeout以毫秒為單位指定超時間隔。
(2)Linux系統中ping命令的使用。
在Linux系統中ping命令的格式如下。
ping[命令參數]目的計算機的地址
命令參數說明如下。
-c count發送由count指定數量的回應報文。
; -d打開調試狀態。
-f快速方式Ping。
-i second設置兩次報文發送之間間隔的秒數second值。不能同-f一起使用。
-n不查詢主機名稱。在一般情況下ping會試圖把IP地址轉換成主機名。這個選項要求ping返回IP地址而不去查找用符號表示的主機名。
-p pattern隨同報文一起發送的標識(pattern最長16字節)。當在網絡中診斷與數據有關的錯誤時這個參數非常有用。
-q僅輸出結果的總結信息。
-R把ICMP RECORD-ROUTE選項加入到ECHO_REQUEST數據包中,要求記錄路由,這樣當數據返回時ping就可以把路由信息顯示出來。每個數據包只能記錄9個路由節點。
-r不使用路由表發送報文,直接發送到主機。
-s packetsize設置發送的報文字節數。
-v使ping處于verbose方式。它要ping命令除了顯示ECHO-RESPONSE數據包之外,還顯示其他所有返回的ICMP數據包。
ping命令經常用來對TCP/IP網絡進行診斷。通過向目的計算機發送一個報文,讓它將這個報文返送回來,如果返回的報文和發送的報文一致,那就說明ping命令成功了。如果在指定時間內沒有收到應答報文,則ping就認為該計算機不可達,然后顯示“Request time out”信息。通過對ping的數據進行分析,就能判斷出計算機是否開著,網絡是否存在配置、物理故障。也可以使用ping實用程序測試計算機名和IP地址,如果能夠成功校驗IP地址卻不能成功校驗計算機名,則說明名稱解析存在問題。當然,報文返回時間越短, Request time out出現的次數越少,則意味著與此計算機的連接穩定和速度快。
如果ping命令執行不成功,則故障可能出現在以下幾個方面:網線是否連通,網絡適配器配置是否正確,IP地址是否可用等;如果ping命令執行成功而網絡仍無法使用,那么問題很可能出在網絡系統的軟件配置方面。總之,ping成功可以保證當前主機與目的主機間存在一條連通的物理路徑。
用ping命令檢查網絡中任意一臺網絡設備上TCP/IP協議的工作情況時,只要在網絡中其他任何一臺計算機上ping該網絡設備的IP地址即可。例如要檢查網絡代理服務器192.192.2.24上的TCP/IP協議工作是否正常,只要在開始菜單下的“運行”子項中鍵入ping192.192.2.24就可以了。如果該設備的TCP/IP協議工作正常,即會以DOS屏幕方式顯示如下所示的信息。
pinging 192.192.2.24 with 32 bytes of data:
Reply from 192.192.2.24:bytes=32 time<10 ms TTL=128
Reply from 192.192.2.24:bytes=32 time<10 ms TTL=128
Reply from 192.192.2.24:bytes=32 time<10 ms TTL=128
Reply from 192.192.2.24:bytes=32 time<10 ms TTL=128
ping stafistice for 192.192.2.24:
Packets:Sent=4,Received=4,Lost=0(0%loss)
Approximate round trip times in milli-seconds:
Minimum=0 ms,Maximum=0 ms,Average=0 ms
以上返回了4個測試數據包,其中bytes=32表示測試中發送的數據包大小是32個字節,time<10 ms表示與對方主機往返一次所用的時間小于10毫秒,TTL=128表示當前測試使用的TTL(Time to Live)值為128(系統默認值)。
如果網絡有問題,則可能返回如下所示的響應失敗信息。
(3)請求超時。
pinging 192.192.2.24 with 32 bytes of data
Request timed out.
Request timed out.
Request timed out.
Request timed out.
ping stafisfice for 192.192.2.24:
Packets:Sent=4,Received=0,Lost=4(100%loss),
Approximate round trip times in milli-seconds
Minimum=0 ms,Maximum=0 ins,Average=0 ms
出現此種情況時,要仔細分析網絡故障出現的原因和可能有問題的網上結點。可以從以下幾個方面來檢查:首先檢查被測試計算機系統是否已正確安裝了TCP/IP協議;然后檢查被測試計算機的網卡安裝是否正確且是否已經連通;第三是檢查被測試計算機的TCP/IP協議是否有效地與網卡綁定;如果通過以上幾個步驟的檢查還沒有發現問題的原因,那么可以重新安裝并設置一下TCP/IP協議,如果確實是TCP/IP協議的問題,故障就可以排除。
4)網絡不能到達。
pinging 192.168.2.24 with 32 bytes of data:
Destination host unreachable.
Destination host unreachable.
Destination host unreachable.
Destination host unreachable.
ping statistics for 192.168.2.24:
Packets:Sent=4,Received=0,Lost=4(100%loss),
Approximate round trip times in milli-seconds:
Minimum=0 ins,Maximum=0 ms,Average=0 ms
出現這種情況,說明本地計算機系統網絡不能使用或者沒有配置到達遠程計算機的路由,此時首先應檢查本機的網絡連接狀況,如果網絡連接正常,可用netstat-rn命令檢查本機的路由表來確定路由配置情況。
(5)不知名主機。
C:/>ping proxy.nsfc.gov.cn
Unknown host proxy.nsfc.gov.cn.
出現這種錯誤信息時,表明該遠程主機的域名不能被DNS服務器轉換成IP地址。網絡故障可能為DNS服務器有故障,或其域名不正確,也可能為網絡管理員的計算機與遠程主機之間的通信線路有故障。