天天看點

路由跟蹤指令大全

C:\tracert http://www.baidu.com/

C:\pathping http://www.baidu.com/

除了顯示路由外 還提供325S的分析 計算丢失包的%

使用 nbtstat 解決 NetBIOS 名稱問題

TCP/IP 上的 NetBIOS (NetBT) 将 NetBIOS 名稱解析成 IP 位址。TCP/IP 為 NetBI

OS 名稱解析提供了很多選項,包括本地緩存搜尋、WINS 伺服器查詢、廣播、DNS 服

務器查詢以及 Lmhosts 和主機檔案搜尋。

Nbtstat 是解決 NetBIOS 名稱解析問題的有用工具。可以使用 nbtstat 指令删除或

更正預加載的項目:

nbtstat -n 顯示由伺服器或重定向器之類的程式在系統上本地注冊的名稱。

nbtstat -c 顯示 NetBIOS 名稱緩存,包含其他計算機的名稱對位址映射。

nbtstat -R 清除名稱緩存,然後從 Lmhosts 檔案重新加載。

nbtstat -RR 釋放在 WINS 伺服器上注冊的 NetBIOS 名稱,然後重新整理它們的注冊。

nbtstat -a name 對 name 指定的計算機執行 NetBIOS 擴充卡狀态指令。擴充卡狀态

指令将傳回計算機的本地 NetBIOS 名稱表,以及擴充卡的媒體通路控制位址。

nbtstat -S 列出目前的 NetBIOS 會話及其狀态(包括統計),如下例所示:

NetBIOS connection table

Local name State In/out Remote Host Input Output

------------------------------------------------------------------

CORP1 <00> Connected Out CORPSUP1<20> 6MB 5MB

CORP1 <00> Connected Out CORPPRINT<20> 108KB 116KB

CORP1 <00> Connected Out CORPSRC1<20> 299KB 19KB

CORP1 <00> Connected Out CORPEMAIL1<20> 324KB 19KB

CORP1 <03> Listening

使用 netstat 顯示連接配接統計

可以使用 netstat 指令顯示協定統計資訊和目前的 TCP/IP 連接配接。netstat -a 指令

将顯示所有連接配接,而 netstat -r 顯示路由表和活動連接配接。netstat -e 指令将顯示

Ethernet 統計資訊,而 netstat -s 顯示每個協定的統計資訊。如果使用 netstat

-n,則不能将位址和端口号轉換成名稱。下面是 netstat 的輸出示例:

路由指令

C:\\>netstat -e

Interface Statistics

Received Sent

Bytes 3995837940 47224622

Unicast packets 120099 131015

Non-unicast packets 7579544 3823

Discards 0 0

Errors 0 0

Unknown protocols 363054211

C:\\>netstat -a

Active Connections

Proto Local Address Foreign Address State

TCP CORP1:1572 172.16.48.10:nbsession ESTABLISHED

TCP CORP1:1589 172.16.48.10:nbsession ESTABLISHED

TCP CORP1:1606 172.16.105.245:nbsession ESTABLISHED

TCP CORP1:1632 172.16.48.213:nbsession ESTABLISHED

TCP CORP1:1659 172.16.48.169:nbsession ESTABLISHED

TCP CORP1:1714 172.16.48.203:nbsession ESTABLISHED

TCP CORP1:1719 172.16.48.36:nbsession ESTABLISHED

TCP CORP1:1241 172.16.48.101:nbsession ESTABLISHED

UDP CORP1:1025 *:*

UDP CORP1:snmp *:*

UDP CORP1:nbname *:*

UDP CORP1:nbdatagram *:*

UDP CORP1:nbdatagram *:*

C:\\>netstat -s

IP Statistics

Packets Received = 5378528

Received Header Errors = 738854

Received Address Errors = 23150

Datagrams Forwarded = 0

Unknown Protocols Received = 0

Received Packets Discarded = 0

Received Packets Delivered = 4616524

Output Requests = 132702

Routing Discards = 157

Discarded Output Packets = 0

Output Packet No Route = 0

Reassembly Required = 0

Reassembly Successful = 0

Reassembly Failures =

Datagrams Successfully Fragmented = 0

Datagrams Failing Fragmentation = 0

Fragments Created = 0

ICMP Statistics

Messages 693 4

Destination Unreachable 685 0

Time Exceeded 0 0

Parameter Problems 0 0

Source Quenches 0 0

Redirects 0 0

Echoes 4 0

Echo Replies 0 4

Timestamps 0 0

Timestamp Replies 0 0

Address Masks 0 0

Address Mask Replies 0 0

TCP Statistics

Active Opens = 597

Passive Opens = 135

Failed Connection Attempts = 107

Reset Connections = 91

Current Connections = 8

Segments Received = 106770

Segments Sent = 118431

Segments Retransmitted = 461

UDP Statistics

Datagrams Received = 4157136

No Ports = 351928

Receive Errors = 2

Datagrams Sent = 13809

使用 tracert 跟蹤網絡連接配接

Tracert(跟蹤路由)是路由跟蹤實用程式,用于确定 IP 資料報通路目标所采取的路

徑。Tracert 指令用 IP 生存時間 (TTL) 字段和 ICMP 錯誤消息來确定從一個主機到

網絡上其他主機的路由。

Tracert 工作原理

通過向目标發送不同 IP 生存時間 (TTL) 值的“Internet 控制消息協定 (ICMP)”回

應資料包,Tracert 診斷程式确定到目标所采取的路由。要求路徑上的每個路由器在

轉發資料包之前至少将資料包上的 TTL 遞減 1。資料包上的 TTL 減為 0 時,路由器

應該将“ICMP 已逾時”的消息發回源系統。

Tracert 先發送 TTL 為 1 的回應資料包,并在随後的每次發送過程将 TTL 遞增 1,

直到目标響應或 TTL 達到最大值,進而确定路由。通過檢查中間路由器發回的“ICM

P 已逾時”的消息确定路由。某些路由器不經詢問直接丢棄 TTL 過期的資料包,這在

Tracert 實用程式中看不到。

Tracert 指令按順序列印出傳回“ICMP 已逾時”消息的路徑中的近端路由器接口清單

。如果使用 -d 選項,則 Tracert 實用程式不在每個 IP 位址上查詢 DNS。

在下例中,資料包必須通過兩個路由器(10.0.0.1 和 192.168.0.1)才能到達主機

172.16.0.99。主機的預設網關是 10.0.0.1,192.168.0.0 網絡上的路由器的 IP 地

址是 192.168.0.1。

C:\\>tracert 172.16.0.99 -d

Tracing route to 172.16.0.99 over a maximum of 30 hops

1 2s 3s 2s 10,0.0,1

2 75 ms 83 ms 88 ms 192.168.0.1

3 73 ms 79 ms 93 ms 172.16.0.99

Trace complete.

用 tracert 解決問題

可以使用 tracert 指令确定資料包在網絡上的停止位置。下例中,預設網關确定 19

2.168.10.99 主機沒有有效路徑。這可能是路由器配置的問題,或者是 192.168.10.

0 網絡不存在(錯誤的 IP 位址)。

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.

Tracert 實用程式對于解決大網絡問題非常有用,此時可以采取幾條路徑到達同一個

點。

Tracert 指令行選項

Tracert 指令支援多種選項,如下表所示。

tracert [-d] [-h maximum_hops] [-j host-list] [-w timeout] target_name

選項 描述

-d 指定不将 IP 位址解析到主機名稱。

-h maximum_hops 指定躍點數以跟蹤到稱為 target_name 的主機的路由。

-j host-list 指定 Tracert 實用程式資料包所采用路徑中的路由器接口清單。

-w timeout 等待 timeout 為每次回複所指定的毫秒數。

target_name 目标主機的名稱或 IP 位址。

詳細資訊,請參閱使用 tracert 指令跟蹤路徑。

使用 pathping 測試路由器

pathping 指令是一個路由跟蹤工具,它将 ping 和 tracert 指令的功能和這兩個工

具所不提供的其他資訊結合起來。pathping 指令在一段時間内将資料包發送到到達最

終目标的路徑上的每個路由器,然後基于資料包的計算機結果從每個躍點傳回。由于

指令顯示資料包在任何給定路由器或連結上丢失的程度,是以可以很容易地确定可能

導緻網絡問題的路由器或連結。某些選項是可用的,如下表所示。

選項 名稱 功能

-n Hostnames 不将位址解析成主機名。

-h Maximum hops 搜尋目标的最大躍點數。

-g Host-list 沿着路由清單釋放源路由。

-p Period 在 ping 之間等待的毫秒數。

-q Num_queries 每個躍點的查詢數。

-w Time-out 為每次回複所等待的毫秒數。

-T Layer 2 tag 将第 2 層優先級标記(例如,對于 IEEE 802.1p)連接配接到資料包并

将它發送到路徑中的每個網絡裝置。這有助于辨別沒有正确配置第 2 層優先級的網絡

裝置。-T 開關用于測試服務品質 (QoS) 連通性。

-R RSVP test Che檢查以确定路徑中的每個路由器是否支援“資源保留協定 (RSVP)”

,此協定允許主機為資料流保留一定量的帶寬。 -R 開關用于測試服務品質 (QoS) 連

通性。

預設的躍點數是 30,并且逾時前的預設等待時間是 3 秒。預設時間是 250 毫秒,并

且沿着路徑對每個路由器進行查詢的次數是 100。

以下是典型的 pathping 報告。躍點清單後所編輯的統計資訊表明在每個獨立路由器

上資料包丢失的情況。

D:\\>pathping -n msw

Tracing route to msw [7.54.1.196]

over a maximum of 30 hops:

0 172.16.87.35

1 172.16.87.218

2 192.68.52.1

3 192.68.80.1

4 7.54.247.14

5 7.54.1.196

Computing statistics for 125 seconds...

Source to Here This Node/Link

Hop RTT Lost/Sent = Pct Lost/Sent = Pct Address

0/ 100 = 0% │

1 41ms 0/ 100 = 0% 0/ 100 = 0% 172.16.87.218

13/ 100 = 13% │

2 22ms 16/ 100 = 16% 3/ 100 = 3% 192.68.52.1

3 24ms 13/ 100 = 13% 0/ 100 = 0% 192.68.80.1

4 21ms 14/ 100 = 14% 1/ 100 = 1% 10.54.247.14

5 24ms 13/ 100 = 13% 0/ 100 = 0% 10.54.1.196

當運作 pathping 時,在測試問題時首先檢視路由的結果。此路徑與 tracert 指令所

顯示的路徑相同。然後 pathping 指令對下一個 125 毫秒顯示忙消息(此時間根據躍

點計數變化)。在此期間,pathping 從以前列出的所有路由器和它們之間的連結之間

收集資訊。在此期間結束時,它顯示測試結果。

最右邊的兩欄 This Node/Link Lost/Sent=Pct 和 Address 包含的資訊最有用。172

.16.87.218(躍點 1)和 192.68.52.1(躍點 2)丢失 13% 的資料包。 所有其他鍊

接工作正常。在躍點 2 和 4 中的路由器也丢失尋址到它們的資料包(如 This Node

/Link 欄中所示),但是該丢失不會影響轉發的路徑。

對連結顯示的丢失率(在最右邊的欄中标記為 │)表明沿路徑轉發丢失的資料包。該

丢失表明連結阻塞。對路由器顯示的丢失率(通過最右邊欄中的 IP 位址顯示)表明

這些路由器的 CPU 可能超負荷運作。這些阻塞的路由器可能也是端對端問題的一個因素,尤其是在軟體路由器轉發資料包時。