ICMP協議

1. ICMP消息類型和編碼類型

ICMP協議


2. ICMP應用-ping

ICMP協議
<br/>
2.1、-a 指定源IP地址ping目標IP地址
ICMP協議
<br/>
2.2、-c指定ping請求包的個數,默認是5個
ICMP協議

3.ICMP應用-Tracert

Tracert的工作原理:Tracert使用IP包的TTL值和ICMP錯誤消息來判斷主機達到目標地址中間經過的路由個數;
首先,Tracert發送一個UDP包的端口大於30000,TLL值爲1,一次性發送3個包,因爲UDP是不可靠的,所以發送3個包保證傳輸的可靠性,只要有一個包達到目標即可;
在路徑上的第一個路由器收到包之後,TTL值減1,此時TTL值爲0,路由器就會丟棄數據包,返回一個ICMP Replay包(包括髮送方路由器的IP地址等);
Tracert收到ICMP Replay包之後,知道下一跳的IP地址是存在;
Tracert第二次發送一個和第一個數據包端口一樣的,TTL值位2,當路徑上第二臺路由器收到數據包之後,TTL值減1,此時TTL值爲0(每經過一個路由器,TTL值減1),這個重複的動作持續到數據包達到目的地;
當目的地收到這個數據包時,發現自己並沒有這個端口號,就會返回一個端口不可達的ICMP Replay包,此時,tracert就知道到達目的地了。

1、默認已經配好IP地址 and 路由
ICMP協議
選中R2的Ethernet0/0/0端口進行抓包
2、在R1路由器 tracert 路由器R5的IP地址 1.1.4.2
ICMP協議
3、R1訪問R5的端口30005,TTL值爲1
ICMP協議
4、當R2路由器收到R1發送的數據包之後,發現TTL值爲1,因轉發一臺路由器,TTL值減1,那麼R2發現TTL值爲0就不會再繼續轉發數據包,就會告訴R1,TTL值已超出,此時R1也就知道了他的下一跳的IP地址是1.1.1.2
ICMP協議
5、當數據包達到目的地後,R5發現沒有30005這個端口,就告訴R1端口不可達。
ICMP協議

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章