第5章差錯(cuò)與控制報(bào)文協(xié)議_第1頁
第5章差錯(cuò)與控制報(bào)文協(xié)議_第2頁
第5章差錯(cuò)與控制報(bào)文協(xié)議_第3頁
第5章差錯(cuò)與控制報(bào)文協(xié)議_第4頁
第5章差錯(cuò)與控制報(bào)文協(xié)議_第5頁
已閱讀5頁,還剩50頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第5章差錯(cuò)與控制報(bào)文協(xié)議5.1因特網(wǎng)控制報(bào)文協(xié)議

5.2ICMP報(bào)文格式與類型

5.3ICMP差錯(cuò)報(bào)告

5.4ICMP控制報(bào)文

5.5ICMP請求與應(yīng)答報(bào)文對

5.6ICMP報(bào)文封裝

IP層的差錯(cuò)控制的特點(diǎn)IP層解決的主要是信宿機(jī)不可達(dá)的問題,由于信宿機(jī)本身不可達(dá),使得信宿機(jī)無法參與控制,所以通達(dá)端到端的方式來解決不太現(xiàn)實(shí)。IP層僅僅涉及與路徑和可達(dá)相關(guān)的差錯(cuò)問題,而不解決數(shù)據(jù)本身的差錯(cuò)問題。IP層的差錯(cuò)與控制由一個(gè)獨(dú)立的協(xié)議ICMP完成,IP協(xié)議不負(fù)責(zé)完成差錯(cuò)與控制功能??刂剖墙⒃趯π畔⒘私獾幕A(chǔ)上的,在ICMP中控制方可以通過主動(dòng)和被動(dòng)兩種方式了解信息。5.1因特網(wǎng)控制報(bào)文協(xié)議(ICMP)ICMP協(xié)議設(shè)計(jì)的最初目的主要是用于IP層的差錯(cuò)報(bào)告,由路由器或信宿以一對一的模式向信源報(bào)告?zhèn)鬏斿e(cuò)誤的原因。隨著網(wǎng)絡(luò)的發(fā)展,檢測和控制功能逐漸被引入到ICMP協(xié)議中,使得ICMP協(xié)議不僅用于傳輸差錯(cuò)報(bào)告,而且大量用于傳輸控制報(bào)文。ICMP與IP協(xié)議位于同一個(gè)層次(IP層),但I(xiàn)CMP報(bào)文是封裝在IP數(shù)據(jù)報(bào)的數(shù)據(jù)部分進(jìn)行傳輸?shù)?。ICMP協(xié)議是IP協(xié)議的補(bǔ)充,用于IP層的差錯(cuò)報(bào)告、擁塞控制、路徑控制以及路由器或主機(jī)信息的獲取。返回5.2ICMP報(bào)文格式與類型ICMP報(bào)文由首部和數(shù)據(jù)段組成。首部為定長的8個(gè)字節(jié),前4個(gè)字節(jié)是通用部分,后4個(gè)字節(jié)隨報(bào)文類型的不同有所差異。ICMP報(bào)文的一般格式如圖所示。ICMP報(bào)文雖然細(xì)分為很多類,但總的來看可以分為如圖所示的三大類:差錯(cuò)報(bào)告、控制報(bào)文和請求應(yīng)答報(bào)文。返回5.3ICMP差錯(cuò)報(bào)告ICMP差錯(cuò)報(bào)告的數(shù)據(jù)區(qū)包含出錯(cuò)數(shù)據(jù)報(bào)的首部及該數(shù)據(jù)報(bào)的前64位數(shù)據(jù),這些信息有助于信源或管理人員發(fā)現(xiàn)錯(cuò)誤原因。ICMP差錯(cuò)報(bào)告具有以下特點(diǎn):1)只報(bào)告差錯(cuò),但不負(fù)責(zé)糾正錯(cuò)誤,糾錯(cuò)工作留給高層協(xié)議去處理。2)發(fā)現(xiàn)出錯(cuò)的設(shè)備只向信源報(bào)告差錯(cuò)。3)差錯(cuò)報(bào)告作為一般數(shù)據(jù)傳輸,不享受特別優(yōu)先權(quán)和可靠性。4)產(chǎn)生ICMP差錯(cuò)報(bào)告的同時(shí),會丟棄出錯(cuò)的IP數(shù)據(jù)報(bào)。形成ICMP差錯(cuò)報(bào)告時(shí)有以下例外:1)ICMP差錯(cuò)報(bào)文本身不會再產(chǎn)生ICMP差錯(cuò)報(bào)告。2)分片報(bào)文的非第一個(gè)分片不會產(chǎn)生ICMP差錯(cuò)報(bào)告。3)組播地址報(bào)文不會產(chǎn)生ICMP差錯(cuò)報(bào)告。4)特殊地址和的報(bào)文不會產(chǎn)生ICMP差錯(cuò)報(bào)告。5.3.1信宿不可達(dá)報(bào)告

當(dāng)路由器無法根據(jù)路由表轉(zhuǎn)發(fā)IP數(shù)據(jù)報(bào)時(shí)或主機(jī)無法向上層協(xié)議和端口提交IP數(shù)據(jù)報(bào)時(shí),將丟棄當(dāng)前的數(shù)據(jù)報(bào),并產(chǎn)生信宿不可達(dá)差錯(cuò)報(bào)告,向信源報(bào)告出錯(cuò)。信宿不可達(dá)報(bào)文如圖所示。信宿不可達(dá)報(bào)文可能由路由器產(chǎn)生,也可能由信宿機(jī)產(chǎn)生。產(chǎn)生信宿不可達(dá)報(bào)文的原因的16種可能:類型報(bào)文代碼描述3信宿不可達(dá)0網(wǎng)絡(luò)不可達(dá)1主機(jī)不可達(dá)2協(xié)議不可達(dá)3端口不可達(dá)4數(shù)據(jù)報(bào)無法分片5源路由失敗6信宿網(wǎng)絡(luò)未知7信宿主機(jī)未知8源主機(jī)被隔離9與信宿網(wǎng)絡(luò)的通信被禁止10與信宿主機(jī)的通信被禁止11對特定的服務(wù)類型(TOS)網(wǎng)絡(luò)不可達(dá)12對特定的服務(wù)類型(TOS)主機(jī)不可達(dá)13因管理者設(shè)置過濾而使主機(jī)不可達(dá)14因非法的優(yōu)先權(quán)而使主機(jī)不可達(dá)15因報(bào)文的優(yōu)先級低于網(wǎng)絡(luò)設(shè)置的最小優(yōu)先級而使主機(jī)不可達(dá)5.3.2數(shù)據(jù)報(bào)超時(shí)報(bào)告在數(shù)據(jù)報(bào)的傳輸過程中,首部的TTL值用于防止數(shù)據(jù)報(bào)因路由表的問題而無休止地在網(wǎng)絡(luò)中傳輸。當(dāng)TTL值為0時(shí),路由器會丟棄當(dāng)前的數(shù)據(jù)報(bào),并產(chǎn)生一個(gè)ICMP數(shù)據(jù)報(bào)超時(shí)報(bào)告。另外。在信宿進(jìn)行分片重組時(shí)會啟動(dòng)重組定時(shí)器,一旦重組定時(shí)器超時(shí),信宿就會丟棄當(dāng)前正在重組的數(shù)據(jù)報(bào),然后產(chǎn)生一個(gè)ICMP數(shù)據(jù)報(bào)超時(shí)報(bào)告,并向信源發(fā)送該超時(shí)報(bào)告。數(shù)據(jù)報(bào)超時(shí)報(bào)告的報(bào)文格式與信宿不可達(dá)報(bào)告的報(bào)文格式相同,只是類型和代碼值不同。數(shù)據(jù)報(bào)超時(shí)報(bào)告的類型和代碼的含義如表所示。類型值11表示是數(shù)據(jù)報(bào)超時(shí)報(bào)文,代碼“0”表示TTL超時(shí),代碼“1”表示分片重組超時(shí)。類型報(bào)文代碼描述11超時(shí)0路由TTL超時(shí)1分片重組超時(shí)5.3.3數(shù)據(jù)報(bào)參數(shù)錯(cuò)報(bào)告數(shù)據(jù)報(bào)參數(shù)錯(cuò)報(bào)告是由數(shù)據(jù)報(bào)首部字段值不明確或空缺而引起的差錯(cuò)報(bào)告。一旦路由器或信宿機(jī)發(fā)現(xiàn)錯(cuò)誤的數(shù)據(jù)報(bào)首部和錯(cuò)誤的數(shù)據(jù)報(bào)選項(xiàng)參數(shù)時(shí),便拋棄該數(shù)據(jù)報(bào),并向信源發(fā)送差錯(cuò)報(bào)告報(bào)文。數(shù)據(jù)報(bào)參數(shù)錯(cuò)報(bào)文的格式如圖6-4所示。類型12表明數(shù)據(jù)報(bào)參數(shù)錯(cuò)代碼“0”表示數(shù)據(jù)報(bào)首部中的某個(gè)字段的值有錯(cuò)或不明確,這時(shí)ICMP報(bào)文首部的指針指向數(shù)據(jù)報(bào)中有問題的字節(jié);代碼“1”表示數(shù)據(jù)報(bào)首部中缺少某一選項(xiàng)所必須具有的部分參數(shù),此時(shí)的ICMP報(bào)文沒有指針字段。表6-3給出了數(shù)據(jù)報(bào)參數(shù)錯(cuò)報(bào)告的類型。代碼為“0”的參數(shù)錯(cuò)只能報(bào)告一個(gè)出錯(cuò)參數(shù)代碼為“1”的參數(shù)錯(cuò)只能報(bào)告缺少參數(shù),不能說明缺少哪個(gè)參數(shù)。類型報(bào)文代碼描述12參數(shù)錯(cuò)0IP首部參數(shù)錯(cuò)1缺少選項(xiàng)所要求的部分返回5.4ICMP控制報(bào)文ICMP控制報(bào)文包括源抑制報(bào)文和重定向報(bào)文源抑制報(bào)文——用于擁塞控制重定向報(bào)文——用于路徑控制下表給出了這兩類報(bào)文的類型和作用描述。類型作用代碼描述4擁塞控制0源抑制報(bào)文5路徑控制0網(wǎng)絡(luò)重定向1主機(jī)重定向2基于服務(wù)類型的網(wǎng)絡(luò)重定向3基于服務(wù)類型的主機(jī)重定向5.4.1源抑制報(bào)文IP協(xié)議采用的是無連接數(shù)據(jù)報(bào)方式進(jìn)行傳輸發(fā)送方事先并不了解中間的路由器和信宿的處理能力和緩沖區(qū)大小在數(shù)據(jù)報(bào)傳輸過程中沒有采用任何流量控制機(jī)制 當(dāng)大量的數(shù)據(jù)報(bào)進(jìn)入路由器或信宿時(shí),會造成緩沖區(qū)溢出,即出現(xiàn)擁塞(Congestion)。ICMP利用源抑制的方法來進(jìn)行擁塞控制。通過源抑制來減緩信源發(fā)出數(shù)據(jù)報(bào)的速率。源抑制報(bào)文的格式如圖6-5所示。源抑制包括三個(gè)階段:發(fā)現(xiàn)擁塞階段、解決擁塞階段和恢復(fù)階段。在發(fā)現(xiàn)擁塞階段,路由器對緩沖區(qū)進(jìn)行監(jiān)測,一旦發(fā)現(xiàn)擁塞,立即向相應(yīng)的信源發(fā)送ICMP源抑制報(bào)文。該信源收到源抑制報(bào)文后,便知道擁塞已經(jīng)發(fā)生,而且所發(fā)送的數(shù)據(jù)報(bào)已經(jīng)丟掉。在解決擁塞階段,信源根據(jù)收到的源抑制報(bào)文中所帶的原數(shù)據(jù)報(bào)的首部信息決定對去往某一特定信宿的信息流進(jìn)行抑制。通常信源在收到源抑制報(bào)文后,按一定的規(guī)則降低發(fā)往某信宿的數(shù)據(jù)報(bào)傳輸率。擁塞解除后,信源逐漸恢復(fù)數(shù)據(jù)報(bào)傳輸速率。在擁塞控制中以下幾點(diǎn)值得關(guān)注:1)雖然對于每個(gè)因擁塞而丟棄的數(shù)據(jù)報(bào)都產(chǎn)生ICMP源抑制報(bào)文,但信源只按照自己的時(shí)間段進(jìn)行響應(yīng)。2)擁塞的解除由信源依據(jù)是否有進(jìn)一步的源抑制報(bào)文到達(dá)來進(jìn)行判斷。3)擁塞可能是由多個(gè)源共同行為的結(jié)果,由于各個(gè)信源的發(fā)送速率相差較大,源抑制的效果未必很好。5.4.2重定向報(bào)文因特網(wǎng)上的路由器和主機(jī)中都存有一個(gè)路由表,路由表決定了去往目的地的下一跳路由器的地址。路由器上的路由表能夠及時(shí)地反映網(wǎng)絡(luò)結(jié)構(gòu)的變化,這一特點(diǎn)由路由器之間定期交換路由信息加以保證。主機(jī)因?yàn)椴荒鼙WC全天開機(jī),所以主機(jī)中的路由表不能及時(shí)反映網(wǎng)絡(luò)結(jié)構(gòu)的變化情況。另外,由于因特網(wǎng)上的主機(jī)數(shù)量遠(yuǎn)大于路由器的數(shù)量,主機(jī)如果參與路由信息的交換,勢必帶來大量的通信開銷。因此主機(jī)中的路由表不通過路由協(xié)議進(jìn)行更新。但主機(jī)所在的網(wǎng)絡(luò)可能和多個(gè)路由器相連,主機(jī)在發(fā)送信息時(shí)也要根據(jù)其路由表來選擇下一跳路由器,為了解決主機(jī)路由表的刷新問題,ICMP提供了重定向機(jī)制。主機(jī)路由表所給出的下一跳路由器可能并非去往信宿的最佳下一跳路由器,當(dāng)主機(jī)的下一跳路由器收到數(shù)據(jù)報(bào)后,該路由器根據(jù)它的路由表判斷本路由器是否是去往信宿的最佳選擇,如果不是,該路由器仍然會向信宿網(wǎng)絡(luò)轉(zhuǎn)發(fā)該數(shù)據(jù)報(bào),但在轉(zhuǎn)發(fā)的同時(shí)會產(chǎn)生一個(gè)ICMP重定向報(bào)文,通知信源修改它的路由表,重定向報(bào)文中將給出信源最佳下一跳路由器的IP地址。主機(jī)A根據(jù)重定向報(bào)文修改路由表的例子。ICMP重定向報(bào)文的格式如圖所示。代碼從0到3分別代表不同的重定向方式,具體含義由前面的表6-4給出。主機(jī)開機(jī)后在ICMP重定向機(jī)制的作用下,經(jīng)過不斷積累逐漸充實(shí)和完善其路由表。動(dòng)態(tài)且優(yōu)化值得注意的是:1)ICMP產(chǎn)生重定向報(bào)文的時(shí)候并不丟棄原數(shù)據(jù)報(bào)。2)ICMP重定向報(bào)文由位于同一網(wǎng)絡(luò)的路由器發(fā)送給主機(jī),完成對主機(jī)的路由表的刷新。3)被刷新的路由表項(xiàng)與重定向報(bào)文數(shù)據(jù)部分指示的IP數(shù)據(jù)報(bào)首部中的信宿地址相關(guān)。內(nèi)容為重定向報(bào)文中目標(biāo)路由器的IP地址。

返回5.5ICMP請求與應(yīng)答報(bào)文對ICMP請求與應(yīng)答報(bào)文對的出現(xiàn)使得因特網(wǎng)上的任何主機(jī)或路由器可以向其他主機(jī)或路由器發(fā)送請求并獲得應(yīng)答。通過ICMP請求與應(yīng)答報(bào)文對,網(wǎng)絡(luò)管理人員、用戶或應(yīng)用程序可以對網(wǎng)絡(luò)進(jìn)行檢測,了解:設(shè)備的可達(dá)性地址掩碼的設(shè)置時(shí)鐘的同步等情況目的是利用這些有用的信息,對網(wǎng)絡(luò)進(jìn)行故障診斷和控制。ICMP請求與應(yīng)答報(bào)文對如表6-5所示。其中的信息請求與應(yīng)答報(bào)文已經(jīng)不再使用。類型作用代碼報(bào)文8回應(yīng)請求與應(yīng)答0回應(yīng)請求00回應(yīng)應(yīng)答10路由器請求與通告0路由器請求90路由器通告13時(shí)間戳請求與應(yīng)答0時(shí)間戳請求140時(shí)間戳應(yīng)答15信息請求與應(yīng)答(已不用)0信息請求160信息應(yīng)答17地址掩碼請求與應(yīng)答0地址掩碼請求180地址掩碼應(yīng)答5.5.1回應(yīng)請求與應(yīng)答報(bào)文回應(yīng)請求與應(yīng)答報(bào)文的目的是對網(wǎng)絡(luò)進(jìn)行診斷和測試。回應(yīng)請求與應(yīng)答不僅可以被用來測試主機(jī)或路由器的可達(dá)性,還可以測試IP協(xié)議的工作情況。TCP/IP網(wǎng)絡(luò)系統(tǒng)所提供的ping命令大多是利用ICMP回應(yīng)請求與應(yīng)答報(bào)文來實(shí)現(xiàn)的,該命令通常用于測試信宿的可到達(dá)性。ICMP回應(yīng)請求與應(yīng)答報(bào)文的格式如圖所示。類型“8”表明是回應(yīng)請求報(bào)文類型“0”表明是回應(yīng)應(yīng)答報(bào)文協(xié)議未對標(biāo)識符和序列號字段進(jìn)行正式定義,通常將標(biāo)識符和序列號用于匹配請求與應(yīng)答,標(biāo)識符一般為發(fā)起請求進(jìn)程的進(jìn)程ID?;貞?yīng)請求與應(yīng)答報(bào)文的標(biāo)識符和序列號一致。5.5.2時(shí)間戳請求與應(yīng)答報(bào)文因特網(wǎng)中的各個(gè)主機(jī)和路由器都是獨(dú)立運(yùn)行的,因此在時(shí)鐘上存在著較大的差異,而一些分布式應(yīng)用系統(tǒng)要求各個(gè)設(shè)備的時(shí)鐘是同步的,ICMP時(shí)間戳請求與應(yīng)答報(bào)文就是用于設(shè)備間進(jìn)行時(shí)鐘同步的報(bào)文對。用時(shí)間戳請求與應(yīng)答報(bào)文進(jìn)行時(shí)鐘同步的基本思路是請求方主機(jī)通過獲取另一主機(jī)的時(shí)間戳信息,將該信息和請求方主機(jī)的時(shí)間戳信息進(jìn)行比較后,估算兩者的時(shí)鐘差異。請求/應(yīng)答格式如圖。類型13:請求報(bào)文,類型14:應(yīng)答報(bào)文。初始時(shí)間戳字段用于指示請求方發(fā)出請求的時(shí)間接收時(shí)間戳字段用于指示應(yīng)答方主機(jī)收到請求的時(shí)間發(fā)送時(shí)間戳字段用于指示應(yīng)答方主機(jī)發(fā)送應(yīng)答的時(shí)間三個(gè)時(shí)間戳字段各為32比特長,以毫秒為單位從世界時(shí)間午夜0點(diǎn)起計(jì)時(shí)。時(shí)間戳的計(jì)數(shù)值不能超過86400000(24小時(shí))。請求報(bào)文:填初始時(shí)間戳,接收時(shí)間戳和發(fā)送時(shí)間戳為0。應(yīng)答報(bào)文:初始時(shí)間戳直接從請求報(bào)文中復(fù)制,接收時(shí)間戳和發(fā)送時(shí)間戳由應(yīng)答方主機(jī)根據(jù)自己接收和發(fā)送時(shí)的時(shí)鐘填寫。

為了估算請求方與應(yīng)答方之間的時(shí)鐘差異,首先要計(jì)算出時(shí)間戳請求和應(yīng)答的往返延遲,然后據(jù)此計(jì)算出單程傳輸延遲,最后由兩設(shè)備的時(shí)間戳和單程傳輸延遲計(jì)算出兩臺設(shè)備之間的時(shí)間差,從而實(shí)現(xiàn)時(shí)鐘的同步。 往返延遲時(shí)間可以用下式計(jì)算:往返時(shí)間=t當(dāng)前-t初始-(t發(fā)送-t接收) =t接收-t初始+t當(dāng)前-t發(fā)送

假設(shè)傳輸請求的時(shí)延和傳輸應(yīng)答的時(shí)延相同,那么單程時(shí)延就等于往返時(shí)間的一半。

一個(gè)時(shí)鐘同步的例子:主機(jī)A發(fā)出時(shí)間戳請求時(shí)的初始時(shí)間戳為1000毫秒,主機(jī)B收到請求時(shí)的接收時(shí)間戳是1055毫秒,主機(jī)B給出應(yīng)答時(shí)的發(fā)送時(shí)間戳是1057毫秒,主機(jī)A收到應(yīng)答時(shí)的時(shí)間為1030毫秒。主機(jī)A可以根據(jù)這些時(shí)間戳計(jì)算出兩臺主機(jī)間的時(shí)間差。往返時(shí)間=t當(dāng)前-t初始-(t發(fā)送-t接收) =1030-1000-(1057-1055)=28(毫秒)單程時(shí)延=28÷2=14(毫秒)時(shí)間差=t接收-(t初始+單程時(shí)延)=1055-(1000+14)=41(毫秒)由上面的計(jì)算可知:主機(jī)B的時(shí)鐘比主機(jī)A的時(shí)鐘快了41毫秒。

5.5.3地址掩碼請求與應(yīng)答報(bào)文地址掩碼請求與應(yīng)答報(bào)文使得一臺主機(jī)可以獲得另一臺主機(jī)或路由器的子網(wǎng)掩碼。如果能夠獲得本網(wǎng)絡(luò)中路由器的子網(wǎng)掩碼,也就得到了本機(jī)所屬子網(wǎng)的掩碼。無盤機(jī)通過RARP獲得IP地址后,可以利用地址掩碼請求來獲得子網(wǎng)掩碼。地址掩碼請求與應(yīng)答報(bào)文的格式如圖6-11所示。類型“17”表示地址掩碼請求,地址掩碼請求報(bào)文的地址掩碼字段為“0”。類型“18”表示地址掩碼應(yīng)答。5.5.4路由器請求與通告報(bào)文初始化路由表的方法:在配置文件中指定靜態(tài)路由利用ICMP路由器請求和通告報(bào)文來獲得路由器的IP地址。 通過路由器請求和通告報(bào)文還可以知道路由器是否處于活動(dòng)狀態(tài)。 主機(jī)在引導(dǎo)以后通過廣播或組播發(fā)出路由器請求報(bào)文。一臺或更多臺路由器以路由器通告報(bào)文作為響應(yīng)。即使沒有路由器請求報(bào)文,路由器也可以定期廣播或組播路由器通告報(bào)文。ICMP路由器請求報(bào)文和路由器通告報(bào)文的格式如圖。

地址數(shù)字段指明報(bào)文所含的地址項(xiàng)的個(gè)數(shù)。一個(gè)地址項(xiàng)由一個(gè)IP地址和一個(gè)4字節(jié)的地址優(yōu)先級構(gòu)成。地址項(xiàng)大小字段指明每個(gè)路由器地址項(xiàng)所占32比特字的數(shù)目,一般為2。生存期字段以秒為單位指明所通告地址的有效時(shí)間。數(shù)據(jù)區(qū)是一到多個(gè)地址項(xiàng)。地址項(xiàng)中的優(yōu)先級指出該IP地址作為默認(rèn)路由器地址的優(yōu)先等級,值越小優(yōu)先級越高。若地址優(yōu)先級為0,則該地址可作為默認(rèn)路由器地址。優(yōu)先級為0x80000000時(shí),表明該地址不能作為默認(rèn)路由器地址使用。返回5.6ICMP報(bào)文封裝向下:雖然ICMP協(xié)議可以接受來自上層的請求,但并不直接封裝來自上層協(xié)議的數(shù)據(jù)。ICMP協(xié)議將請求轉(zhuǎn)變?yōu)镮CMP報(bào)文,然后將報(bào)文封裝在IP協(xié)議中進(jìn)行發(fā)送。包含ICMP報(bào)文的IP數(shù)據(jù)報(bào)首部的協(xié)議字段為“1”。向上:IP軟件一旦接收到差錯(cuò)或控制報(bào)文,立即交給ICMP模塊進(jìn)行處理。ICMP模塊可以形成應(yīng)答報(bào)文,也可以交給上層的應(yīng)用程序或協(xié)議去處理。5.7Windows環(huán)境下的ping命令

在網(wǎng)絡(luò)中ping是一個(gè)十分強(qiáng)大的TCP/IP工具。它主要的作用是用來檢測網(wǎng)絡(luò)的連通情況和分析網(wǎng)絡(luò)速度。ping命令的語法格式ping命令的完整的語法格式如下:ping[-t][-a][-ncount][-lsize][-f][-iTTL][-vTOS][-rcount][-scount][[-jhost-list]|[-khost-list]][-wtimeout]<目標(biāo)地址(IP或主機(jī)名)>2.Ping的參數(shù)介紹如下圖所示,從命令格式中可以看出它的復(fù)雜程序,Ping命令后面是它的執(zhí)行參數(shù),下面對其參數(shù)作詳細(xì)的介紹。調(diào)用幫助

不帶參數(shù)的ping命令TimeToLiveTTL值:TimeToLive,表示DNS記錄在DNS服務(wù)器上存在的時(shí)間,它是IP協(xié)議包的一個(gè)值,告訴路由器該數(shù)據(jù)包何時(shí)需要被丟棄??梢酝ㄟ^Ping返回的TTL值大小,粗略地判斷目標(biāo)系統(tǒng)類型是Windows系列還是UNIX/Linux系列。TTL值:100~130ms之間,Windows系統(tǒng)240~255ms之間,UNIX/Linux系統(tǒng)//TTL的值在對方的主機(jī)里是可以修改的,Windows系列的系統(tǒng)可以通過修改注冊表以下鍵值實(shí)現(xiàn):[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]

"DefaultTTL"=dword:000000ff

-t:不間斷地Ping指定計(jì)算機(jī),直到管理員中斷。

使用CTRL+C停止

-lsize:發(fā)送size指定大小的到目標(biāo)主機(jī)的數(shù)據(jù)包。在默認(rèn)的情況下Windows的ping發(fā)送的數(shù)據(jù)包大小為32byt,最大能發(fā)送65500byt。當(dāng)一次發(fā)送的數(shù)據(jù)包大于或等于65532byt時(shí),將可能導(dǎo)致接收方計(jì)算機(jī)當(dāng)機(jī)。這個(gè)參數(shù)配合其它參數(shù)以后危害非常強(qiáng)大,比如攻擊者可以結(jié)合-t參數(shù)實(shí)施DOS攻擊。例如:ping-l65500-t8//-t:連續(xù)對IP地址執(zhí)行ping命令,直到被用戶以Ctrl+C中斷響應(yīng)時(shí)間明顯變慢-a:將地址解析為計(jì)算機(jī)名(NetBios名)。

例如:ping–a35和ping35的不同NetBios名NetBIOS:

是NetworkBasicInput/OutputSystem的簡稱,一般指用于局域網(wǎng)通信的一套API(應(yīng)用程序編程接口)。在win32環(huán)境中,針對每個(gè)可用的LANA編號,每個(gè)進(jìn)程都會為其維持一張NETBIOS名字表。

-ncount:發(fā)送count指定的Echo數(shù)據(jù)包數(shù)。

//在默認(rèn)情況下,ping將發(fā)送四個(gè)數(shù)據(jù)包。例如:ping-n100-rcount:在“記錄路由”字段中記錄傳出和返回?cái)?shù)據(jù)包的路由,探測經(jīng)過的路由個(gè)數(shù),但最多只能跟蹤到9個(gè)路由。圖3-4參數(shù)-r的使用-scount:count指定的躍點(diǎn)數(shù)的時(shí)間戳。此參數(shù)和-r差不多,只是這個(gè)參數(shù)幾乎不記錄數(shù)據(jù)包返回所經(jīng)過的路由,最多也只記錄4個(gè)。-jhost-list利用computer-list指定的計(jì)算機(jī)列表路由數(shù)據(jù)包。連續(xù)計(jì)算機(jī)可以被中間網(wǎng)關(guān)分隔(路由稀疏源)IP允許的最大數(shù)量為9。-khost-list利用computer-list指定的計(jì)算機(jī)列表路由數(shù)據(jù)包。連續(xù)計(jì)算機(jī)不能被中間網(wǎng)關(guān)分隔(路由嚴(yán)格源)IP允許的最大數(shù)量為9。-wtimeout指定超時(shí)間隔,單位為毫秒。

思考題HowtoImplementPing?5.7跟蹤網(wǎng)絡(luò)連接的Tracert命令

Tracert(跟蹤路由)命令是路由跟蹤實(shí)用程序,用于確定IP數(shù)據(jù)包訪問目標(biāo)所采取的路徑。Tracert命令用IP生存時(shí)間(TTL)字段和ICMP錯(cuò)誤消息來確定從一個(gè)主機(jī)到網(wǎng)絡(luò)上其他主機(jī)的路由1.使用格式tracert[-d][-hmaximum_hops][-jhost-list][-wtimeout]target_name2.參數(shù)介紹-d:指定不將地址解析為計(jì)算機(jī)名。-hmaximum_hops:指定搜索目標(biāo)的最大躍點(diǎn)數(shù)。-jhost-list:指定沿computer-list的稀疏源路由。-wtimeout:每次應(yīng)答等待timeout指定的微秒數(shù)。target_name:目標(biāo)計(jì)算機(jī)的名稱。C:\>tracert

Tracingrouteto[3]

overamaximumof30hops:

125ms26ms22ms21.[]

256ms49ms53ms18.[1]

346ms55ms46ms18.[25]

466ms70ms65ms18.[01]

561ms*64ms29

652ms49ms49ms2

765ms67ms72ms21

834ms38ms34ms4

968ms*78ms8

1087ms88ms85ms[3]

Tracecomplete.不帶參數(shù)的tracert命令問題:有了IP記錄路由選項(xiàng)和Ping命令,為何還需要Traceroute?(1)不是所有的路由器都支持記錄路由選項(xiàng)(2)Ping記錄下來的地址翻了一番(一來一回)(3)IP首部中記錄路由選項(xiàng)空間有限2、traceroute工作原理

ICMP超時(shí)報(bào)文+IP首部的TTL(1)發(fā)送IP數(shù)據(jù)報(bào),TTL=1,則到達(dá)第一個(gè)路由器后TTL=0,該路由器向源端發(fā)送ICMP超時(shí)報(bào)文,該報(bào)文封裝在IP數(shù)據(jù)報(bào)中,源端收到該報(bào)文后提取IP首部的IP地址字段,則記錄了第一個(gè)路由器。(2)發(fā)送IP數(shù)據(jù)報(bào),TTL=2,記錄第二個(gè)路由器?!瓎栴}:如何判斷何時(shí)到達(dá)目的主機(jī)?1.利用端口不可達(dá)報(bào)文(1)源端發(fā)送的IP報(bào)文封裝了UDP報(bào)文,其端口為65535,同時(shí)IP首部按照Tracert的原理構(gòu)造。(2)途中的路由器回應(yīng)ICMP超時(shí)報(bào)文。(3)目的主機(jī)回應(yīng)端口不可達(dá)報(bào)文。(4)源端根據(jù)返回的報(bào)文類型判斷是否到達(dá)目的端。2.利用ICMPECHO和ECHOREPLY報(bào)文問題:如果目標(biāo)不活動(dòng)怎么辦?R1R2SDR3TTL=1ICMP超時(shí)TTL=2ICMP超時(shí)本章要點(diǎn)ICMP協(xié)議是IP協(xié)議的補(bǔ)充,用于IP層的差錯(cuò)報(bào)告、擁塞控制、路徑控制以及路由器或主機(jī)信息的獲取。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論