ICMP(Internet Control Message Protocol)网际控制报文协议初识
ICMP是(Internet Control Message Protocol)Internet控制報文協(xié)議。它是TCP/IP協(xié)議族的一個子協(xié)議,用于在IP主機、路由器之間傳遞控制消息。控制消息是指網(wǎng)絡(luò)通不通、主機是否可達、路由是否可用等網(wǎng)絡(luò)本身的消息。這些控制消息雖然并不傳輸用戶數(shù)據(jù),但是對于用戶數(shù)據(jù)的傳遞起著重要的作用。
它工作在OSI七層模型的中的第三層——網(wǎng)絡(luò)層。
每一個ICMP消息都將包含引發(fā)這條ICMP消息的數(shù)據(jù)包的完全IP包頭,這樣,端點系統(tǒng)就會知道實際上哪一個數(shù)據(jù)包沒有發(fā)送到目的地.另外引發(fā)此ICMP消息的數(shù)據(jù)包的前8個字節(jié)也將包括在內(nèi),這通常是TCP或者UDP包頭.
ICMP報文的結(jié)構(gòu)如下圖所示:
其中類型(TYPE)和代碼(CODE)共同確定了ICMP傳輸?shù)南ⅰ6鴻z驗和則用于驗證ICMP的完整性。TYPE和CODE的對應(yīng)表如下:
- 面向無連接
- 是TCP/IP協(xié)議族的一個子協(xié)議,屬于網(wǎng)絡(luò)層協(xié)議
- 傳遞的是控制信息
- PING和Tracert等命令就是基于ICMP協(xié)議
- ICMP就是一個“錯誤偵測與回報機制”
- 偵測遠端主機是否存在
- 建立及維護路由資料
- 重導(dǎo)資料傳送路徑(ICMP重定向:在特定的情況下,雅思英語當(dāng)路由器檢測到一臺機器使用非優(yōu)化路由的時候,它會向該主機發(fā)送一個ICMP重定向報文,請求主機改變路由。)
當(dāng)我們使用PING命令進行主機探測時,使用的就是ICMP協(xié)議。
ICMP協(xié)議本身的特點決定了它非常容易被用于攻擊網(wǎng)絡(luò)上的路由器和主機。
- “Ping of Death” 攻擊的原理是:如果ICMP數(shù)據(jù)包的尺寸超過64KB上限時,主機就會出現(xiàn)內(nèi)存分配錯誤,導(dǎo)致TCP/IP堆棧崩潰,致使主機死機。(操作系統(tǒng)已經(jīng)取消了發(fā)送ICMP數(shù)據(jù)包的大小的限制,解決了這個漏洞)
- 向目標主機長時間、連續(xù)、大量地發(fā)送ICMP數(shù)據(jù)包,也會最終使系統(tǒng)癱瘓。大量的ICMP數(shù)據(jù)包會形成“ICMP風(fēng)暴”,使得目標主機耗費大量的CPU資源處理,疲于奔命。
對于“ICMP風(fēng)暴”問題,解決方案1是在路由器上對ICMP數(shù)據(jù)包進行帶寬限制,將ICMP占用的帶寬控制在一定的范圍內(nèi),這樣即使有ICMP攻擊,它所占用的帶寬也是非常有限的,對整個網(wǎng)絡(luò)的影響非常少
解決方案2是設(shè)置一個防火墻,過濾ICMP包。一些現(xiàn)有的防火墻就會屏蔽ICMP包。
轉(zhuǎn)載于:https://www.cnblogs.com/zhangyiqinga/p/9753664.html
總結(jié)
以上是生活随笔為你收集整理的ICMP(Internet Control Message Protocol)网际控制报文协议初识的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么让狠心男人梦到自己
- 下一篇: 梦到仇人是什么意思