摘 要 通過對Tracert定義和工作原理的介紹分析使用Tracert的好處,并詳細(xì)分析DOS下的Tracert命令使用流程。
關(guān)鍵詞 Tracert 路由 網(wǎng)絡(luò)
中圖分類號:TP3 文獻(xiàn)標(biāo)識碼:A
1什么是Tracert
Tracert是操作系統(tǒng)提供的一個(gè)路由跟蹤實(shí)用程序,它用于確定 IP 數(shù)據(jù)包訪問目標(biāo)主機(jī)時(shí)所采取的路徑。通過Traceroute可以知道信息從本地計(jì)算機(jī)到互聯(lián)網(wǎng)目標(biāo)主機(jī)是走的什么路徑。當(dāng)然每次數(shù)據(jù)包由某一同樣的出發(fā)點(diǎn)(source)到達(dá)某一同樣的目的地(destination)走的路徑可能會不一樣,但基本上來說大部分時(shí)候所走的路由是相同的。Tracert通過發(fā)送小的數(shù)據(jù)包到目的設(shè)備直到其返回,來測量其需要多長時(shí)間。
2 Tracert的工作原理
Tracert通過向目標(biāo)發(fā)送不同IP生存時(shí)間 (TTL) 值的ICMP回應(yīng)數(shù)據(jù)包,確定到目標(biāo)所采取的路由并要求路徑上的每個(gè)路由器在轉(zhuǎn)發(fā)數(shù)據(jù)包之前至少將數(shù)據(jù)包上的 TTL 遞減 1。數(shù)據(jù)包上的 TTL 減為 0 時(shí),路由器應(yīng)該將“ICMP 已超時(shí)”的消息發(fā)回源系統(tǒng)。Tracert 先發(fā)送 TTL 為 1 的回應(yīng)數(shù)據(jù)包,并在隨后的每次發(fā)送過程將TTL遞增 1,直到目標(biāo)響應(yīng)或 TTL 達(dá)到最大值,從而確定路由。通過檢查中間路由器發(fā)回的“ICMP 已超時(shí)”的消息確定路由。
3為什么要使用Tracert
互聯(lián)網(wǎng)是由遍布全球的幾萬個(gè)局域網(wǎng)和數(shù)以百萬計(jì)的服務(wù)器和計(jì)算機(jī)所組成的。局域網(wǎng)與計(jì)算機(jī)、服務(wù)器之間使用路由器來進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)。這種結(jié)構(gòu)使互聯(lián)網(wǎng)如蛛網(wǎng)一般錯(cuò)綜復(fù)雜,從一個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)到另一個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)通常有多條網(wǎng)絡(luò)鏈路可達(dá),路由器根據(jù)數(shù)據(jù)類型及網(wǎng)絡(luò)負(fù)載等多種情況實(shí)時(shí)選擇最優(yōu)鏈路進(jìn)行數(shù)據(jù)傳輸。如何確定數(shù)據(jù)傳輸?shù)淖罱K路由,這條路由上所有設(shè)備的連通時(shí)間、連接速度,是否安全等多個(gè)指標(biāo)都是我們關(guān)心的焦點(diǎn)。Tracert能夠提供這條路由上每一個(gè)設(shè)備(IP地址)及其連通時(shí)間,為你畫出整個(gè)網(wǎng)絡(luò)的路徑。
4 DOS下Tracert命令的使用
(1)語法
tracert [-d] [-h MaximumHops] [-j HostList] [-w Timeout] [-R] [-S SrcAddr] [-4][-6] TargetName
(2)參數(shù)
-d:防止 tracert 試圖將中間路由器的 IP地址解析為它們的名稱。這樣可加速顯示 tracert 的結(jié)果。
-h MaximumHops:指定搜索目標(biāo)(目的)的路徑中存在的躍點(diǎn)的最大數(shù)。默認(rèn)值為 30 個(gè)躍點(diǎn)。
-j HostList:指定回顯請求消息將 IP 報(bào)頭中的松散源路由選項(xiàng)與 HostList 中指定的中間目標(biāo)集一起使用。使用松散源路由時(shí),連續(xù)的中間目標(biāo)可以由一個(gè)或多個(gè)路由器分隔開。HostList 中的地址或名稱的最大數(shù)量為9。HostList 是一系列由空格分隔的 IP 地址(用帶點(diǎn)的十進(jìn)制符號表示)。僅當(dāng)跟蹤IPv4地址時(shí)才使用該參數(shù)。
-w Timeout:指定等待“ICMP 已超時(shí)”或“回顯答復(fù)”消息(對應(yīng)于要接收的給定“回現(xiàn)請求”消息)的時(shí)間(以毫秒為單位)。如果超時(shí)時(shí)間內(nèi)未收到消息,則顯示一個(gè)星號 (*)。默認(rèn)的超時(shí)時(shí)間為 4000(4 秒)。
-R:指定 IPv6 路由擴(kuò)展標(biāo)頭應(yīng)用來將“回顯請求”消息發(fā)送到本地主機(jī),使用目標(biāo)作為中間目標(biāo)并測試反向路由。
-S:指定在“回顯請求”消息中使用的源地址。僅當(dāng)跟蹤 IPv6 地址時(shí)才使用該參數(shù)。
-4:指定 Tracert.exe 只能將 IPv4 用于本跟蹤。
-6:指定 Tracert.exe 只能將 IPv6 用于本跟蹤。
TargetName:指定目標(biāo),可以是 IP 地址或主機(jī)名。
-?:在命令提示符下顯示幫助。
例如:我們在DOS命令行中輸入“tracert www.163.com”,系統(tǒng)返回結(jié)果為:
C:\>tracert www.163.com
Tracing route to 163.xdwscache.glb0.lxdns.com [122.226.185.94]
over a maximum of 30 hops:
1 2 ms 1 ms 1 ms 192.168.1.1
2 4 ms 4 ms 4 ms 125.124.184.1
3 8 ms 5 ms 5 ms 115.233.128.202
4 11 ms 10 ms 7 ms 220.189.121.225
5 13 ms 15 ms 16 ms 61.175.73.66
6 19 ms 18 ms 18 ms 61.175.85.170
7 463 ms 16 ms 16 ms 61.175.95.38
8 * * * Request timed out.
9 14 ms 14 ms 13 ms 122.226.185.94
Trace complete.
系統(tǒng)首先通過域名解析將域名www.163.com解析到IP地址122.226.185.94,然后通過了8個(gè)路由器轉(zhuǎn)發(fā)數(shù)據(jù)到達(dá)目的地址。
如果我們“tracert 192.168.10.99”,系統(tǒng)返回如下:
C:\>tracert 192.168.10.99
Tracing route to 192.168.10.99 over a maximum of 30 hops
1 10.0.0.1 reports:Destination net unreachable.
Trace complete.
則表明主機(jī)到ip地址“192.168.10.99”沒有有效路徑,這可能是路由器配置問題,也有可能是“192.168.10.99”這個(gè)ip地址不存在。
通過tracert和其他網(wǎng)路測試命令(如ping命令)相結(jié)合,可以有效的查找網(wǎng)絡(luò)故障,確定網(wǎng)絡(luò)通信過程中究竟哪一個(gè)路由器上出現(xiàn)數(shù)據(jù)丟包、網(wǎng)絡(luò)延時(shí)甚至網(wǎng)絡(luò)中斷現(xiàn)象,快速確定網(wǎng)絡(luò)故障節(jié)點(diǎn),就可以在最短時(shí)間內(nèi)修復(fù)網(wǎng)絡(luò)故障。