ping命令基於ICMP協議的返回信息分析


Ping是潛水艇人員的專用術語,表示回應的聲納脈沖,在網絡中 Ping 是一個十分好用的 TCP/IP 工具。它主要的功能是用來檢測網絡的連通情況和分析網絡速度。可以利用 PING 命令檢查網絡連通狀態,ping命令是基於ICMP。

這里先介紹ICMPICMP是網絡層協議,一個新搭建好的網絡,往往需要先進行一個簡單的測試,來驗證網絡是否暢通;但是IP協議並不提供可靠傳輸。如果丟包了,IP協議並不能通知傳輸層是否丟包以及丟包的原因。所以我們就需要一種協議來完成這樣的功能–ICMP協議

1.ICMP協議的功能主要有:

 確認IP包是否成功到達目標地址

 通知在發送過程中IP包被丟棄的原因

 

2.常見的ICMP報文

相應請求

目標不可達,源抑制和超時報文

時間戳請求

 

3.ICMP大概分為兩類報文:

一類是通知出錯原因 ;一類是用於診斷查詢

類型及含義如下:

類型(十進制) 內容

0 回送應答

3 目標不可達

4 原點抑制

5 重定向或改變路由

8 回送請求

9 路由器公告

10 路由器請求

11 超時

17 地址子網請求

18 地址子網應答

 

而相應請求用的ping操作中就包括了相應請求(類型字段值為8)和應答(類型字段值為0ICMP報文。過程:一台主機向一個節點發送一個類型字段值為8ICMP報文,如果途中沒有異常(如果沒有被路由丟棄,目標不回應ICMP或者傳輸失敗),則目標返回類型字段值為0ICMP報文,說明這台主機存在

這里主要介紹ping之后返回信息的分析

1Request timed out

這是大家經常碰到的提示信息,至少有下幾種情況

a)對方已關機,或者網絡上根本沒有這個地址:比如在主機 A PING 192.168.0.7 , 或者主機 B 關機了, 在主機 A PING 192.168.0.5 都會得到超時的信息。

 

b) 對方與自己不在同一網段內,通過路由也無法找到對方,但有對方確實是存在的,當然不存在也是返回超時的信息。

 

C) 對方確實存在,但設置了ICMP數據包過濾(比如防火牆設置)。 怎樣知道對方是存在,還是不存在呢, 可以用帶參數 -a Ping 命令探測對方,如果能得到對方的 NETBIOS名稱,則說明對方是存在的,是有防火牆設置,如果得不到,多半是對方不存在或關機,或不在同一網段內。

 

d)錯誤設置 IP 地址 正常情況下,一台主機應該有一個網卡,一個 IP 地址,或多個網卡,多個 IP 地址(這些地址一定要處於不同的 IP 子網)。但如果一台電腦的撥號網絡適配器(相當於一塊軟網卡) 的 TCP/IP 設置中, 設置了一個與網卡 IP 地址處於同一子網的 IP 地址,這樣,在 IP 層協議看來,這台主機就有兩個不同的接口處於同一網段內。

 

當從這台主機Ping其他的機器時,會存在這樣的問題:

 

A、主機不知道將數據包發到哪個網絡接口,因為有兩個網絡接口都連接在同一網段。

 

B、主機不知道用哪個地址作為數據包的源地址。因此,從這台主機去 Ping 其他機器, IP層協議會無法處理,超時后, Ping 就會給出一個超時無應答的錯誤信息提示。但從其他主機 Ping 這台主機時,請求包從特定的網卡來,ICMP只須簡單地將目的、源地址互換,並更改一些標志即可,ICMP 應答包能順利發出,其他主機也就能成功 Ping通這台機器了。

 

2Destination host Unreachable

 

1. 對方與自己不在同一網段內,而自己又未設置默認的路由,比如上例中 A 機中不設定默認的路由,運行 Ping 192.168.0.1.4 就會出現“ Destination host Unreachable

 

2)網線出了故障 這里要說明一下“ destination host unreachable ”“time out ”的區別,如果所經過的路由器的路由表中具有到達目標的路由, 而目標因為其他原因不可到達,這時候會出現“ time out ”,如果路由表中連到達目標的路由都沒有,那就會出現“destination host unreachable ”

 

3Bad IP address 這個信息表示您可能沒有連接到 DNS服務器,所以無法解析這個IP 地址,也可能是 IP 地址不存在。

 

3Source quench received

 

這個信息比較特殊,它出現的機率很少。它表示對方或中途的服務器繁忙無法回應。

 

4Unknown host——不知名主機

 

這種出錯信息的意思是,該遠程主機的名字不能被域名服務器( DNS)轉換成 IP 地址。故障原因可能是域名服務器有故障,或者其名字不正確,或者網絡管理員的系統與遠程主機之間的通信線路有故障。

 

5No answer——無響應, 這種故障說明本地系統有一條通向中心主機的路由,但卻接收不到它發給該中心主機的任何信息。故障原因可能是下列之一:中心主機沒有工作;本地或中心主機網絡配置不正確;本地或中心的路由器沒有工作;通信線路有故障;中心主機存在路由選擇問題。

 

6Ping 127.0.0.1 127.0.0.1 是本地循環地址 如果本地址無法 Ping 通,則表明本地機 TCP/IP 協議不能正常工作。

 

7no rout to host : 網卡工作不正常。

 

8transmit failederror code10043 網卡驅動不正常。

 

9unknown host nameDNS 配置不正確。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM