您好,登錄后才能下訂單哦!
TraceRoute是什么?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
TraceRoute命令利用ICMP協議定位您的計算機和目標計算機之間的所有路由器,其中TTL值可以反映數據包經過的路由器或網關的數量,通過操縱獨立ICMP 呼叫報文的TTL 值和觀察該報文被拋棄的返回信息。
TraceRoute原理
Traceroute最簡單的基本用法是:traceroute hostname
Traceroute程序的設計是利用ICMP及IP header的TTL(Time To Live)欄位(field)。首先,traceroute送出一個TTL是1的IP datagram(其實,每次送出的為3個40字節的包,包括源地址,目的地址和包發出的時間標簽)到目的地,當路徑上的第一個路由器(router)收到這個datagram時,它將TTL減1。此時,TTL變為0了,所以該路由器會將此datagram丟掉,并送回一個「ICMP time exceeded」消息(包括發IP包的源地址,IP包的所有內容及路由器的IP地址),traceroute 收到這個消息后,便知道這個路由器存在于這個路徑上,接著traceroute 再送出另一個TTL是2 的datagram,發現第2 個路由器...... traceroute 每次將送出的datagram的TTL 加1來發現另一個路由器,這個重復的動作一直持續到某個datagram 抵達目的地。當datagram到達目的地后,該主機并不會送回ICMP time exceeded消息,因為它已是目的地了,那么traceroute如何得知目的地到達了呢?
Traceroute在送出UDP datagrams到目的地時,它所選擇送達的port number 是一個一般應用程序都不會用的號碼(30000 以上),所以當此UDP datagram 到達目的地后該主機會送回一個「ICMP port unreachable」的消息,而當traceroute 收到這個消息時,便知道目的地已經到達了。所以traceroute 在Server端也是沒有所謂的Daemon 程式。
Traceroute提取發 ICMP TTL到期消息設備的IP地址并作域名解析。每次 ,Traceroute都打印出一系列數據,包括所經過的路由設備的域名及 IP地址,三個包每次來回所花時間。
Traceroute 有一個固定的時間等待響應(ICMP TTL到期消息)。如果這個時間過了,它將打印出一系列的*號表明:在這個路徑上,這個設備不能在給定的時間內發出ICMP TTL到期消息的響應。然后,Traceroute給TTL記數器加1,繼續進行。
網關
一般使用Traceroute(或者是Tracert)是基于一臺主機的,但是通常您只能知道以手邊的主機為源地址到互聯網絡上任意一臺在線的主機的路由連接質量以及數據傳輸效率的情況,而使用基于WEB的方式,只要一臺主機安裝了特定的CGI程序,用戶就可以通過這臺主機運行相關的程序,執行Traceroute的功能。這臺主機我們把它叫做Traceroute網關。Traceroute網關可以幫助用戶了解網絡的物理與邏輯連接的拓撲情況以及數據傳輸的效率。如果這種網關足夠多,我們就可以方便地了解到各主機之間連接的情況了。
功能
Traceroute最早是由Van Jacobson在1988寫出的小程序。當時主要是解決他自己碰到的一些網絡的問題。Traceroute是一個正確理解IP網絡并了解路由原理的重要工具。他們對負責網絡工程技術與系統管理的Webmaster是一個使用方便的程序。
對ISP而言,設立Traceroute網關,將使網絡服務提供商幫助用戶建立并維持對服務商服務質量的信心。服務質量高的ISP可以通過設立Traceroute網關,使用戶了解其與網絡連接以及數據傳輸的效率。當然,基礎設施差,服務質量低的ISP是比較害怕提供這種服務。因為,這樣用戶可以使用這一工具了解服務商網絡連接情況。
在一臺主機安裝了相關的Traceroute的CGI程序后,您可以輸入相應的目的主機的IP地址或者名字,就可以得到相關的數據。
關于TraceRoute是什么問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。