Ping的基礎知識
ping命令相信大家已經再熟悉不過了但是能把ping的功能發揮到最大的人卻並不是很多當然我也並不是說我可以讓ping發揮最大的功能我也只不過經常用ping這個工具也總結了一些小經驗現在和大家分享一下
Ping是潛水艇人員的專用術語表示回應的聲納脈沖在網絡中Ping 是一個十分好用的TCP/IP工具它主要的功能是用來檢測網絡的連通情況和分析網絡速度
Ping有好的善的一面也有惡的一面先說一下善的一面吧上面已經說過Ping的用途就是用來檢測網絡的連同情況和分析網絡速度但它是通過什麼來顯示連通呢?這首先要了解Ping的一些參數和返回信息
Ping命令詳解
首先需要打開DOS命令界面通過點擊開始菜單中的“運行”選項輸入“cmd” 回車即可打開(如下圖)
回車後
我們輸入 ping /? 例出ping 以下是PING的一些參數(如圖)
下面我和大家講解一下每個參數意思和使用
ping [t] [a] [n count] [l length] [f] [i ttl] [v tos] [r count] [s count] [j computerlist] | [k computerlist] [w timeout] destinationlist
t Ping 指定的計算機直到中斷
a 將地址解析為計算機名
n count 發送 count 指定的 ECHO 數據包數默認值為
l length 發送包含由 length 指定的數據量的 ECHO 數據包默認為 字節;最大值是
f 在數據包中發送"不要分段"標志數據包就不會被路由上的網關分段
i ttl 將"生存時間"字段設置為 ttl 指定的值
v tos 將"服務類型"字段設置為 tos 指定的值
r count 在"記錄路由"字段中記錄傳出和返回數據包的路由count 可以指定最少 台最多 台計算機
s count 指定 count 指定的躍點數的時間戳
j computerlist 利用 computerlist 指定的計算機列表路由數據包連續計算機可以被中間網關分隔(路由稀疏源)IP 允許的最大數量為
k computerlist 利用 computerlist 指定的計算機列表路由數據包連續計算機不能被中間網關分隔(路由嚴格源)IP 允許的最大數量為
w timeout 指定超時間隔單位為毫秒
destinationlist 指定要 ping 的遠程計算機
怎樣使用Ping這命令來測試網絡連通呢?
連通問題是由許多原因引起的如本地配置錯誤遠程主機協議失效等當然還包括設備等造成的故障
首先我們講一下使用Ping命令的步驟
使用Ping檢查連通性有五個步驟
使用ipconfig /all觀察本地網絡設置是否正確如圖;
Ping 回送地址Ping回送地址是為了檢查本地的TCP/IP協議有沒有設置好;
Ping本機IP地址這樣是為了檢查本機的IP地址是否設置有誤;
Ping本網網關或本網IP地址這樣的是為了檢查硬件設備是否有問題也可以檢查本機與本地網絡連接是否正常;(在非局域網中這一步驟可以忽略)
Ping遠程IP地址這主要是檢查本網或本機與外部的連接是否正常
如何用Ping命令來判斷一條鏈路好壞?
Ping這個命令除了可以檢查網絡的連通和檢測故障以外還有一個比較有趣的用途那就是可以利用它的一些返回數據來估算你跟某台主機之間的速度是多少字節每秒
我們先來看看它有那些返回數據
在例子中"bytes="表示ICMP報文中有個字節的測試數據"time=ms"是往返時間 Sent 發送多個秒包Received 收到多個回應包Lost 丟棄了多少個Minmum 最小值 MAXimun 最大值Average 平均值所在圖上來看來回只用了MS 時間lost = 即是丟包數為網絡狀態相當良好 (更詳細可以使用n參數 “ping –n IP地址” ping 次查看 Sent Received Lost Minmum MAXimun Average 這些值的變化)
對Ping後返回信息的分析
Request timed out
這是大家經常碰到的提示信息很多文章中說這是對方機器置了過濾ICMP數據包從上面工作過程來看這是不完全正確的至少有下幾種情況
() 對方已關機或者網絡上根本沒有這個地址比如在上圖中主機A中PING 或者主機B關機了在主機A中PING 都會得到超時的信息
()對方與自己不在同一網段內通過路由也無法找到對方但有時對方確實是存在的當然不存在也是返回超時的信息
()對方確實存在但設置了ICMP數據包過濾(比如防火牆設置)
怎樣知道對方是存在還是不存在呢可以用帶參數 a 的Ping命令探測對方如果能得到對方的NETBIOS名稱則說明對方是存在的是有防火牆設置如果得不到多半是對方不存在或關機或不在同一網段內
()錯誤設置IP地址
正常情況下一台主機應該有一個網卡一個IP地址或多個網卡多個IP地址(這些地址一定要處於不同的IP子網)但如果一台電腦的“撥號網絡適配器”(相當於一塊軟網卡)的TCP/IP設置中設置了一個與網卡IP地址處於同一子網的IP地址這樣在IP層協議看來這台主機就有兩個不同的接口處於同一網段內當從這台主機Ping其他的機器時會存在這樣的問題
A主機不知道將數據包發到哪個網絡接口因為有兩個網絡接口都連接在同一網段
B主機不知道用哪個地址作為數據包的源地址因此從這台主機去Ping其他機器IP層協議會無法處理超時後Ping 就會給出一個“超時無應答”的錯誤信息提示但從其他主機Ping這台主機時請求包從特定的網卡來ICMP只須簡單地將目的源地址互換並更改一些標志即可ICMP應答包能順利發出其他主機也就能成功Ping通這台機器了
Destination host Unreachable
() 對方與自己不在同一網段內而自己又未設置默認的路由比如上例中A機中不設定默認的路由運行Ping 就會出現“Destination host Unreachable”
()網線出了故障
這裡要說明一下“destination host unreachable”和 “time out”的區別如果所經過的路由器的路由表中具有到達目標的路由而目標因為其他原因不可到達這時候會出現“time out”如果路由表中連到達目標的路由都沒有那就會出現“destination host unreachable” Bad IP address
這個信息表示您可能沒有連接到DNS服務器所以無法解析這個IP地址也可能是IP地址不存在
Source quench received
這個信息比較特殊它出現的機率很少它表示對方或中途的服務器繁忙無法回應
Unknown host——不知名主機
這種出錯信息的意思是該遠程主機的名字不能被域名服務器(DNS)轉換成IP地址故障原因可能是域名服務器有故障或者其名字不正確或者網絡管理員的系統與遠程主機之間的通信線路有故障
No answer——無響應
這種故障說明本地系統有一條通向中心主機的路由但卻接收不到它發給該中心主機的任何信息故障原因可能是下列之一中心主機沒有工作;本地或中心主機網絡配置不正確;本地或中心的路由器沒有工作;通信線路有故障;中心主機存在路由選擇問題
Ping 是本地循環地址
如果本地址無法Ping通則表明本地機TCP/IP協議不能正常工作
no rout to host網卡工作不正常
transmit failederror code網卡驅動不正常
unknown host nameDNS配置不正確
以上是我在“拼”(Ping)的過程中總結的一些經驗技巧希望能對大家的工作和學習有所幫助
From:http://tw.wingwit.com/Article/Common/201311/8008.html