生活随笔
收集整理的這篇文章主要介紹了
ICMP数据包-实战分析
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
http://blog.csdn.net/wangningyu/article/details/4343192
ICMP報文包含在IP數(shù)據(jù)報中,屬于IP的一個用戶,IP頭部就在ICMP報文的前面。
所以一個ICMP報文包括IP頭部、ICMP頭部和ICMP報文(見圖表,ICMP報文的結(jié)構(gòu)和幾種常見的ICMP報文格式)
IP頭部的Protocol值為1就說明這是一個ICMP報文,ICMP頭部中的類型(Type)域用于說明ICMP報文的作用及格式,
此外還有一個代碼(Code)域用于詳細(xì)說明某種ICMP報文的類型,所有數(shù)據(jù)都在ICMP頭部后面。
RFC定義了13種ICMP報文格式,具體如下:
(思考:你可以在下面的包里找找,看看我下面抓的包的類型代碼是多少,假如我PING不通主機會不會有ICMP數(shù)據(jù)包,為什么?)
類型代碼 類型描述 0 響應(yīng)應(yīng)答(ECHO-REPLY)
3 不可到達
4 源抑制
5 重定向
8 響應(yīng)請求(ECHO-REQUEST)
11 超時
12 參數(shù)失靈
13 時間戳請求
14 時間戳應(yīng)答
15 信息請求(*已作廢)
16 信息應(yīng)答(*已作廢)
17 地址掩碼請求
18 地址掩碼應(yīng)答
其中代碼為15、16的信息報文已經(jīng)作廢。 下面是幾種常見的ICMP報文: 1.響應(yīng)請求 我們?nèi)粘J褂米疃嗟膒ing,就是響應(yīng)請求(Type=8)和應(yīng)答(Type=0),一臺主機向一個節(jié)點發(fā)送一個Type=8的ICMP
報文,如果途中沒有異常(例如被路由器丟棄、目標(biāo)不回應(yīng)ICMP或傳輸失敗),則目標(biāo)返回Type=0的ICMP報文,
說明這臺主機存在,更詳細(xì)的tracert通過計算ICMP報文通過的節(jié)點來確定主機與目標(biāo)之間的網(wǎng)絡(luò)距離。
2.目標(biāo)不可到達、源抑制和超時報文 這三種報文的格式是一樣的,目標(biāo)不可到達報文(Type=3)在路由器或主機不能傳遞數(shù)據(jù)報時使用
,例如我們要連接對方一個不存在的系統(tǒng)端口(端口號小于1024)時,將返回Type=3、Code=3的ICMP報文,
它要告訴我們:“嘿,別連接了,我不在家的!”,常見的不可到達類型還有網(wǎng)絡(luò)不可到達(Code=0)、
主機不可到達(Code=1)、協(xié)議不可到達(Code=2)等。源抑制則充當(dāng)一個控制流量的角色,
它通知主機減少數(shù)據(jù)報流量,由于ICMP沒有恢復(fù)傳輸?shù)膱笪?#xff0c;所以只要停止該報文,主機就會逐漸恢復(fù)傳輸速率。
最后,無連接方式網(wǎng)絡(luò)的問題就是數(shù)據(jù)報會丟失,或者長時間在網(wǎng)絡(luò)游蕩而找不到目標(biāo),
或者擁塞導(dǎo)致主機在規(guī)定時間內(nèi)無法重組數(shù)據(jù)報分段,這時就要觸發(fā)ICMP超時報文的產(chǎn)生。
超時報文的代碼域有兩種取值:Code=0表示傳輸超時,Code=1表示重組分段超時。
3.時間戳 時間戳請求報文(Type=13)和時間戳應(yīng)答報文(Type=14)用于測試兩臺主機之間數(shù)據(jù)報來回一次的傳輸時間。
傳輸時,主機填充原始時間戳,接收方收到請求后填充接收時間戳后以Type=14的報文格式返回,
發(fā)送方計算這個時間差。一些系統(tǒng)不響應(yīng)這種報文。
理論知識講這么,下面是我在命令行用WildPackets OmniPeek捕獲到的本機數(shù)據(jù)包:
1、打開WildPackets OmniPeek,單擊New ,在Filters里選擇ICMP,然后確定點擊右邊的Start Capture:
2、依次點擊“開始/運行”,輸入cmd打開命令行:
3、在命令行輸入ping www.qq.com回車即可,當(dāng)ping通返回一次后立即按ctr + c終止,此時OmniPeek里就有兩行ICMP包了:
?4、回到OmniPeek中,此是有兩行記錄:
5、雙擊打開第一個數(shù)據(jù)包,內(nèi)容如下:
?
這樣,一個完整ICMP請求的數(shù)據(jù)包就呈現(xiàn)在我們面前了。
總結(jié)
以上是生活随笔為你收集整理的ICMP数据包-实战分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。