Wireshark可以跟蹤網(wǎng)絡(luò)協(xié)議的通訊過(guò)程,本節(jié)通過(guò)ICMP協(xié)議,在了解Wireshark使用的基礎(chǔ)上,重溫ICMP協(xié)議的通訊過(guò)程。
ICMP(Internet Control Message Protocol)Internet控制報(bào)文協(xié)議,用于在IP主機(jī)、路由器之間傳遞控制消息??刂葡⑹侵妇W(wǎng)絡(luò)通不通、主機(jī)是否可達(dá)、路由是否可用等網(wǎng)絡(luò)本身的消息。這些控制消息雖然并不傳輸用戶(hù)數(shù)據(jù),但是對(duì)于用戶(hù)數(shù)據(jù)的傳遞起著重要的作用。
ICMP是TCP/IP模型中網(wǎng)絡(luò)層的重要成員,與IP協(xié)議、ARP協(xié)議、RARP協(xié)議及IGMP協(xié)議共同構(gòu)成TCP/IP模型中的網(wǎng)絡(luò)層。
在Wireshark界面,我們可以看到529、531號(hào)數(shù)據(jù)包,就是一對(duì)標(biāo)準(zhǔn)的ICMP請(qǐng)求和響應(yīng)包。
打開(kāi)ICMP請(qǐng)求數(shù)據(jù)包報(bào)文
打開(kāi)ICMP請(qǐng)求數(shù)據(jù)包報(bào)文
打開(kāi)ICMP響應(yīng)數(shù)據(jù)包報(bào)文
通過(guò)分析可知,
1. ICMP協(xié)議盡管并不傳輸數(shù)據(jù)內(nèi)容,仍然歸于網(wǎng)絡(luò)層,但是基于ip協(xié)議。
2. 主機(jī)發(fā)送一個(gè)ICMP Echo Request的包,接受方在可正常響應(yīng)的情況下,返回一個(gè)ICMP Echo Reply。
3. 兩個(gè)數(shù)據(jù)包都包含了相同的數(shù)據(jù)內(nèi)容指令。
4. ICMP請(qǐng)求數(shù)據(jù)包的數(shù)據(jù)類(lèi)型是0,正常響應(yīng)的數(shù)據(jù)包類(lèi)型是8。
ICMP大概分為兩類(lèi)報(bào)文:一類(lèi)是通知出錯(cuò)原因 ;一類(lèi)是用于診斷查詢(xún)。
類(lèi)型及含義如下表: