全局調試
在配置Cisco路由器時,全局和接口命令的界限是十分明顯的。在這種情況下,我們使用“全局”來標識那些不能用于接口調試或者特定的傳輸介質類型和協議調試的命令。
例如,在2500系列路由器中,就可以使用調試命令分析Cisco發現協議(Cisco Discovery Protocol,CDP)。我們通過telnet遠程登錄到路由器。在缺省方式下,調試命令的輸出被發送到控制臺,如果處于telnet會話中,我們可以使用terminal monitor命令查看輸出。
接口調試
debug serial interface命令是直接與路由器接口和傳輸介質類型相關的調試命令。在下面的示例中,串行接口采用HDLC封裝。端到端的HDLC保持活躍的報文每10秒鐘交換一次。這表明鏈路操作正常并且第二層工作正常。show interface serial0命令表明線路。
Router#debug serial interface
Serial network interface debugging is>Router#
Nov 5 2155 PDT HDLC myseq 171093, mineseen 171093*, yourseen 1256540,line up
Nov5 2105 PDT HDLC myseq 171094, mineseen 171094*, yourseen 1256541,line up
Nov5 2115 PDT HDLC myseq 171095, mineseen 171095*, yourseen 1256542,line up
Router#undebug all
All possible debugging has been turned off
協議調試
下面我們舉協議調試的兩個示例。兩個示例都與IP協議有關。當然,調試命令適用于所有的其他協議。
第一個示例(如下所示)顯示ARP調試。ARP調試啟動,然后清除ARP緩存,同時產生了ARP請求和響應。首先,我們使用命令清除了路由器上所 有的ARP緩存,因此路由器連接的每一個局域網段都將產生ARP報文。因為我們不需要產生過多的ARP報文,所以所選擇的路由器僅與一個以太網段相連。
Router#debug arp
ARP packet debugging is>Router#clear arp
Router#
*Nov5 2136 PDT: IP ARP: sent req src 171.136.10.1 00e0.1eb9.bbcd
dst 171.136.10.34 00a0.24d1.5823 Ethernet0
*Nov5 2136 PDT: IP ARP: sent req src 171.136.10.1 00e0.1eb9.bbcd
dst 171.136.10.10 0080.5f06.ca3d Ethernet0
......
*Nov5 2136 PDT: IP ARP: rcvd req src 171.136.10.10 0080.5f06.ca3d, dst 171.136.10.1 Ethernet0
*Nov5 2136 PDT: IP ARP: creating entry for IP address:171.136.10.10,hw: 0080.5f06.ca3d
......
第二個示例顯示IP RIP調試。在調試開始時,并沒有清空路由器表,因為路由器每隔30秒自動進行一次RIP更新,因此不需要強 制更新。與第一個示例中類似,在獲得了足夠的信息后應該關閉所有的調試。
Router#debug ip rip events
RIP event debugging is>Router#
Nov6 1345 PST: RIP: sending v1 update to 255.255.255.255 via TokenRing1/0 (165.48.65.136)
Nov6 1345 PST: RIP: Update contains 25 routes
Nov6 1345 PST: RIP: Update queued
Nov6 1345 PST: RIP: Update contains 6 routes
Nov6 1345 PST: RIP: Update queued
Nov6 1345 PST: RIP: Update sent via TokenRing1/0
......
Router#undeb all
All possible debugging has been turned off
Ping命令
Ping是最常使用的故障診斷與排除命令。它由一組ICMP回應請求報文組成,如果網絡正常運行將返回一組回應應答報文。ICMP消息以IP數據包傳輸,因此接收到ICMP回應應答消息能夠表明第三層以下的連接都工作正常。
Cisco的ping命令不但支持IP協議,而且支持大多數其他的桌面協議,如IPX和AppleTalk協議的ping命令。我們首先看一下支持IP協議的ping命令以用戶EXEC方式執行的情況,然后再討論在特權模式下,擴展的ping命令包含的許多強大功能。
用戶執行模式
IP PING 簡單的IP ping既可以在用戶模式下執行,也可以在特權模式下執行。正常情況下,命令會發送回5個回應請求,5個驚嘆號表明所有的請求都成功地接收到了響應。輸出中還包括最大、最小和平均往返時間等信息。
每一個“!”表明一個echo響應被成功的接受,如果不是“!”號,則表明echo響應未被接收到的原因:
!響應成功接收
· 請求超時
U 目的不可達
P 協議不可達
N 網絡不可達
Q 源抑制
M 不能分段
?不可知報文類型
IPX PING IPX ping命令只能在運行IOS v 8.2及其以上版本的路由器上執行。用戶模式下的IPX ping通常僅用于測試Cisco路由器接口。在特權模式下,用戶可以ping特定的NOVELL工作站,命令的格式為“ping ipx IPX地址”。
APPLETALE PING 該命令使用Apple Echo Protocol(AEP)以確認AppleTalk節點之間的連通性。需要注意的是,目前的Cisco路由器僅對以太 網接口支持Apple Echo Protocol。命令的格式為“ping apple Appletalk地址”。
特權執行模式
在特權執行模式下,擴展的ping命令適用于任何一種桌面協議。它包含更多的功能屬性,因此可以獲得更為詳細的信息。通過這些信息我們可以分析網絡性能下降的原因而不單單是服務丟失的原因。擴展的ping命令的執行方式也是敲入ping。然后路由器提示各種不同的屬性。
EXTENDED IP PING 其使用方法如下所示:
Router#ping
Protocol [ip]:
Target IP address: 165.48.183.12
Repeat count [5]: 10
Datagram size [100]: 1600
Timeout in seconds [2]:
Extended commands [n]: y
Source address or interface: 165.48.48.3
Type of service [0]:
Set DF bit in IP header? [no]:
Data pattern [0xABCD]:
Loose, Srict, Record, Timestamp, Verbose[none]:
Sweep range of sizes [n]:
Type escape sequence to abort.
Sending 10, 1600-byte ICMP Echoes to 165.58.183.12, timeout is 2 seconds:
!!!!!!!!!!
Success rate is 100 percent (10/10), round-trip min/avg/max = 36/39/48 ms
首先我們討論特權模式下的ping的各種可用屬性。每種屬性的缺省值在括號中顯示。
Protocol 需要測試的協議。
Target address 測試的目標地址。
Repeat count 如果出現間歇性的失敗或者響應時間過慢,ping重復的次數。
Datagram size 如果懷疑報文由于延遲過長或者分段失敗而丟失,則可以提高報文的大小。例如,我們可以使用1600字節的報文來強制分段。
Timeout 如果懷疑超時是由于響應過慢而不是報文丟失,則可以提高該值。
Extended commands 回答確定以獲得擴展屬性。
Source address 必須是路由器接口的地址。
Type of service 根據RFC 791 TOS規定的屬性,通常缺省值為0。
Set DF bit in IP header?通過設置DF位禁止分段,即使是報文超過了路由器定義的MTU也禁止分段。
Data pattern [0xABCD] 通過改變數據模式可以測試線路的噪聲。
Loose,Strict,Record,Timestamp,Verbose[none] 這些都是IP報文頭的屬性。一般只使用Record屬性和Verbose,其他屬性很少被使用。Record可以用來記錄報文每一跳的地址,Verbose屬性給出每一個回應應答的響應時間。
Sweep range of sizes [n] 該屬性主要用于測試大報文被丟失、處理速度過慢或者分段失敗等故障。
EXTEND IPX PING 擴展的IPX ping也允許用戶修改參數,比如報文大小和重復次數。對用戶模式下ping的另一個增強屬性是使用了Novell Standard echo屬性。
使用這一屬性,用戶可以ping裝載IPX的工作站。如果禁用該屬性,Novell IPX設備將不響應ping,因為它們不支持Cisco proprietary IPX ping協議。用戶可以修改設備的屬性使它們支持這一特性。
EXTENDED APPLETALK PING 擴展的AppleTalk ping命令是對用戶模式下ping的增強,這一點與擴展的IPX ping類似。與IP和IPX擴展ping一樣,用戶也可以選擇Verbose等屬性。
trace命令
trace命令提供路由器到目的地址的每一跳的信息。它通過控制IP報文的生存期(TTL)字段來實現。TTL等于1的ICMP回應請求報文將被首先發 送。路徑上的第一個路由器將會丟棄該報文并且發送回標識錯誤消息的報文。
錯誤消息通常是ICMP超時消息,表明報文順利到達路徑的下一跳,或者端口不可達消息,表明報文已經被目的地址接收但是不能向上傳送到IP協議棧。
為了獲得往返延遲時間的信息,trace發送三個報文并顯示平均延遲時間。然后將報文的TTL字段加1并發送3個報文。這些報文將到達路徑的第二個路由器上,并返回超時錯誤或者端口不可達消息。反復使用這一方法,不斷增加報文的TTL字段的值,直到接收到目的地址的響應消息。
在有些情況下,使用trace命令可能會導致故障。因為IOS中存在與trace命令相關的bug。這些bug的相關信息可以從CCO得到。另外一個問題是,某些目標站點不響應ICMP端口不可達消息。當命令的輸出顯示一系列星號(*)時,就可能碰到了此類站點。用戶可以使用Ctrl-Shift-6中斷命令的執行。
用戶執行模式 下面展示了一個簡單的在用戶執行模式下執行的trace命令的輸出。到達目的地的距離是3跳。TTL值為1的3個報文的響應消息是ICMP超時錯誤,并且返回報文的IP地址有兩個。因為路由器1和路由器2在同一個網段中,并且它們到路由器3的距離都是一跳,因此這些路由器都響應該報文。
Router3#trace 171.144.1.39
Type escape sequence to abort.
Tracing the route to Router9 (171.144.1.39)
1 Router2 (165.48.48.2) 0 msec
Router2 (165.48.48.2) 0 msec
Router1 (165.48.48.1) 0 msec
2 165.48.48.129 12 msec
Router6 (165.48.49.129) 12 msec 12 msec
3 Router4 (171.133.1.2) 12 msec 12 msec
Router9 (171.144.1.39) 12 msec 12 msec
Router3
下面列出了IP trace命令的輸出中出現的不同字符及其含義:
XY msec 在接收到響應消息之前的往返延遲(以毫秒為單位)
* 報文超時
?報文類型不能識別
U 端口不可達
P 協議不可達
N 網絡不可達
H 主機不可達
Q ICMP 源抑制
特權模式擴展Trace 用于擴展ping命令的許多屬性都可以用來擴展trace命令的功能。
擴展trace命令的特殊屬性有:
Numeric display 在缺省情況下,trace命令的輸出中既包括IP地址也包括其對應的DNS域名。如果用戶不需要顯示DNS域名,則可以使用該屬性。
Probe count 其缺省值為3,用戶可以根據需要進行調整。
TTL 該值可以在最大和最小TTL值之間變化。
Port number 這是一個非常有用的屬性,它可以使工程技術人員跟蹤特定的傳輸層端口。因此,不但可以確認源端與目的端之間的IP連通性, 而且可以確認高層服務是否可被訪問。
與trace命令相關的另外一個問題是,如果存在到達目的地的多條路徑,返回報文的源地址可能不相同。
在這種情況下,用戶需要仔細比較不同返回報文的延遲時間。如果仍不能得到明確的結果,可以遠程訪問路徑上的一個或多個路由器,使用trace命令訪問源地址和目的地址。
審核編輯:陳陳
-
路由器
+關注
關注
22文章
3707瀏覽量
113538 -
CISCO
+關注
關注
1文章
65瀏覽量
24655 -
CISCO路由器
+關注
關注
0文章
2瀏覽量
5015
原文標題:干貨】Cisco路由器調試命令大全,看完就全部學會
文章出處:【微信號:通信弱電交流學習,微信公眾號:通信弱電交流學習】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論