因特網(wǎng)控制消息協(xié)議:ICMP 為控制層面協(xié)議;
IPv4協(xié)議為面向無(wú)連接協(xié)議,而ICMP是協(xié)助IPv4,用于檢測(cè)三層網(wǎng)絡(luò)的連通性、差錯(cuò)提示和路徑優(yōu)化(重定向Redirect)。
報(bào)文封裝:Ethernet2/IPv4/ICMP/FCS(IP協(xié)議號(hào)1)
注:Type:類型 Code:編碼 checksum:ICMP報(bào)文校驗(yàn)
ICMP消息類型和編碼類型(Code);目的不可達(dá)報(bào)文、源端抑制報(bào)文、超時(shí)報(bào)文、參數(shù)問(wèn)題、改變路由、回送請(qǐng)求和回答、時(shí)間戳請(qǐng)求和回答、地址掩碼請(qǐng)求和回答、路由詢問(wèn)和通告;部分如下:
Ping命令:Echo Request 回聲請(qǐng)求
Echo Reply 回聲應(yīng)答
報(bào)文封裝:Ethernet 2/IPv4/UDP/Traceroute/FCS UDP 端口號(hào)33434
原理:Traceroute 命令用TTL字段和 ICMP 錯(cuò)誤消息來(lái)確定從一個(gè)主機(jī)到網(wǎng)絡(luò)上其他主機(jī)的路由。首先Traceroute送出一個(gè)TTL是1的IP 數(shù)據(jù)包到目的地,當(dāng)路徑上的第一個(gè)路由器收到這個(gè)數(shù)據(jù)包時(shí),分組改寫(xiě)引擎將TTL減1。此時(shí),TTL變?yōu)?,所以該路由器會(huì)將此數(shù)據(jù)包丟掉,并送回一個(gè)「ICMP time exceeded」消息(包括發(fā)IP包的源地址,IP包的所有內(nèi)容及路由器的IP地址),Traceroute收到這個(gè)消息后,便知道這個(gè)路由器存在于這個(gè)路徑上,接著Traceroute 再送出另一個(gè)TTL是2 的數(shù)據(jù)包,發(fā)現(xiàn)第2 個(gè)路由器...... Traceroute 每次將送出的數(shù)據(jù)包的TTL 加1來(lái)發(fā)現(xiàn)另一個(gè)路由器,這個(gè)重復(fù)的動(dòng)作一直持續(xù)到某個(gè)數(shù)據(jù)包抵達(dá)目的地。當(dāng)數(shù)據(jù)包到達(dá)目的地后,該主機(jī)則不會(huì)送回ICMP time exceeded消息,一旦到達(dá)目的地,由于Traceroute通過(guò)UDP數(shù)據(jù)包向不常見(jiàn)端口號(hào)33434發(fā)送數(shù)據(jù)包,因此會(huì)收到「ICMP port unreachable」消息,故可判斷到達(dá)目的地。
注:Traceroute 1.1.1.1 source 2.2.2.2 指定源地址Traceroute目的地址,思科帶源Traceroute的源地址必須是該路由器的接口地址,防止DDOS攻擊。
-
Ping
+關(guān)注
關(guān)注
0文章
69瀏覽量
16052 -
IPv4
+關(guān)注
關(guān)注
0文章
142瀏覽量
19966
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論