關於路由跟蹤指令 traceroute

2022-06-17 18:36:12 字數 2081 閱讀 6314

我們都用過ping命令來檢查主機與目標位址是否連通,自己的主機與目標位址的通訊包通訊速率,所謂的通訊包也就是那些什麼tcp/ip,udp包。

原理:關於路由跟蹤:

路由跟蹤指令對linux來說是traceroute,在windows則是tracert,這次就主要來說traceroute。

traceroute是用來檢測發出資料報的主機到目標主機之間所經過的閘道器數量的工具。traceroute的原理是試圖以最小的ttl(存活時間)發出探測包來跟蹤資料報到達目標主機所經過的閘道器,然後監聽乙個來自閘道器icmp的應答。傳送資料報的大小預設為38個位元組。

traceroute程式完整過程:首先它傳送乙份ttl欄位為1的ip資料報給目的主機,處理這個資料報的第乙個路由器將ttl值減1,然後丟棄該資料報,並給源主機傳送乙個icmp報文(「超時」資訊,這個報文包含了路由器的ip位址,這樣就得到了第乙個路由器的位址),然後traceroute傳送乙個ttl為2的資料報來得到第二個路由器的ip位址,繼續這個過程,直至這個資料報到達目的主機。

1.命令格式:

traceroute [引數] [主機]

2.命令功能:

traceroute指令讓你追蹤網路資料報的路由途徑,預設資料報大小是40bytes,使用者可另行設定。

**具體引數格式:**traceroute [-dflnrvx][-f《存活數值》][-g《閘道器》…][-i《網路介面》][-m《存活數值》][-p《通訊埠》][-s《**位址》][-t《服務型別》][-w《超時秒數》][主機名稱或ip位址][資料報大小]

3.命令引數:

-d 使用socket層級的排錯功能。

-f 設定第乙個檢測資料報的存活數值ttl的大小。

-f 設定勿離斷位。

-g 設定**路由閘道器,最多可設定8個。

-i 使用指定的網路介面送出資料報。

-i 使用icmp回應取代udp資料資訊。

-m 設定檢測資料報的最大存活數值ttl的大小。

-n 直接使用ip位址而非主機名稱。

-p 設定udp傳輸協議的通訊埠。

-r 忽略普通的routing table,直接將資料報送到遠端主機上。

-s 設定本地主機送出資料報的ip位址。

-t 設定檢測資料報的tos數值。

-v 詳細顯示指令的執行過程。

-w 設定等待遠端主機回報的時間。

-x 開啟或關閉資料報的正確性檢驗。

**4 例項:

例項4.1** : traceroute www.baidu.com

說明:

記錄按序列號從1開始,每個紀錄就是一跳 ,每跳表示乙個閘道器,我們看到每行有三個時間,單位是 ms,其實就是-q的預設引數。探測資料報向每個閘道器傳送三個資料報後,閘道器響應後返回的時間;如果您用 traceroute -q 4 www.baidu.com ,表示向每個閘道器傳送4個資料報。見下圖:

有時我們traceroute 一台主機時,會看到有一些行是以星號表示的。出現這樣的情況,可能是防火牆封掉了icmp的返回資訊,所以我們得不到什麼相關的資料報返回資料。

有時我們在某一閘道器處延時比較長,有可能是某台閘道器比較阻塞,也可能是物理裝置本身的原因。當然如果某台dns出現問題時,不能解析主機名、網域名稱時,也會 有延時長的現象;您可以加-n 引數來避免dns解析,以ip格式輸出資料。

如果在區域網中的不同網段之間,我們可以通過traceroute 來排查問題所在,是主機的問題還是閘道器的問題。如果我們通過遠端來訪問某台伺服器遇到問題時,我們用到traceroute 追蹤資料報所經過的閘道器,提交idc服務商,也有助於解決問題;但目前看來在國內解決這樣的問題是比較困難的,就是我們發現問題所在,idc服務商也不可能幫助我們解決。

例項4.2:跳數設定

命令:traceroute -m 10 www.baidu.com

說明:通過結果可以看到存活數值=10,當存活數值=0時,主機便取消資料報

例項3:探測包使用的基本udp埠設定6888 (此處不太懂)

命令: traceroute -p 6888 www.baidu.com

例項4:把對外發探測包的等待響應時間設定為3秒

命令:traceroute -w 3 www.baidu.com

traceroute 路由跟蹤

traceroute是乙個通用的tcp ip工具,它能顯示出資料報從本地機到達目標機時經過的所有路由器。由於traceroute會人為地給網路造成一些通訊負擔,所有它主要被系統或網路管理員,作為乙個簡單而有效的網路手工查錯工具使用,普通使用者最好少用。儘管如此,traceroute對於使用者了解in...

跟蹤路由 Tracert

tracert 跟蹤路由 是路由跟蹤實用程式,用於確定 ip 資料報訪問目標所採取的路徑。tracert 命令用 ip 生存時間 ttl 欄位和 icmp 錯誤訊息來確定從乙個主機到網路上其他主機的路由。tracert 工作原理 通過向目標傳送不同 ip 生存時間 ttl 值的 internet 控...

路由跟蹤tracert

tracert命令 如果我們要測試某乙個ip都經過哪些路由,用trcert命令即可,這是dos下的乙個基本網路命令,具體使用方法 1,在windows系統下,開啟 執行 輸入 cmd 在彈出的dos視窗中輸入 tracert ip domain 2,ip是您要檢視的ip,網域名稱就是您的網域名稱 這...