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