本節書摘來自異步社群《ccnp tshoot 300-135認證考試指南》一書中的第2章,第2.4節利用cisco ios收集資訊,作者 【加】raymond lacoste , 【美】kevin wallace,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視
2.4 利用cisco ios收集資訊
ccnp tshoot 300-135認證考試指南
明确定義了故障問題之後,故障診斷的第一步就是收集資訊(如第1章所述)。由于資訊收集是故障檢測與排除程序中最耗時的階段,因而快速收集恰當資訊的能力就成為一種非常有價值的排障技巧。大家是願意一點一點地慢慢從大海中撈針呢,還是希望用世界上最強最大的磁鐵從大海中撈針呢?當然選擇磁鐵,沒有人會願意浪費大量時間在大海中撈針,因為時間彌足珍貴。本節将介紹用于收集網絡資訊的常見cisco ios指令,并讨論過濾這些指令輸出結果中無關資訊的方式。此外,本節還将介紹一些非常有用的診斷連接配接性故障或硬體故障的指令。
2.4.1 過濾show指令的輸出結果
cisco ios提供了很多用于收集各種有用資訊的show指令和debug指令,本書将在後面介紹大量show指令和debug指令,但很多指令都會産生大量輸出資訊。

例2-31在show processes cpu | include check heaps指令的後面添加了|^cpu|^ pid,其中,^是一個正規表達式,表示“以……開始”,因而這些附加語句表示在輸出結果中顯示以cpu或(空格)pid開始的所有行,由于現在的輸出結果中已經包含了列頭資訊,因而這些數值都有意義了。
此外,在show processes cpu指令中使用參數sorted,能夠按5秒鐘、1分鐘、5分鐘使用率進行排序,因而可以按照降序方式顯示最消耗cpu資源的程序。
與在指令中使用include選項進行輸出過濾一樣,也可以使用exclude選項過濾輸出結果,選項exclu-de的作用是顯示不包含指定字元串的所有輸出行。例如,show ip interface brief指令可以顯示路由器或交換機上所有接口的ip位址和狀态資訊(如例2-32所示)。
例2-32 show ip interface brief指令輸出結果
不過,如果運作配置中的第一個路由器執行個體出現在router ospf部分之前(如例2-34所示),那麼仍然需要篩選運作配置,直至到達router ospf部分。由于希望在運作配置中找到特定段落(即本例的ospf),因而可以将輸出結果過濾為特定段落,例2-35利用section router ospf來過濾show running-config指令的輸出結果,進而僅顯示router ospf部分。如前所述,過濾輸出結果時必須精确指定大小寫和空格,例如,section gigabitethernet0/1正确,但section gigabitethernet 0/1、section gigabitethernet0/1和section gi0/1都不對。
例2-35 利用section過濾show running-config指令的輸出結果
有時可能希望查找172.16.0.0/16位址空間的全部子網,那麼就可以在指令中指定子網路遮罩和選項longer-prefixes。例如,例2-38的指令将顯示網絡172.16.0.0/16中的全部子網。
例2-38 利用選項longer-prefixes來過濾show ip route指令的輸出結果
2.4.2 将show指令的輸出結果重定向到指定檔案
假如正在與cisco tac(technical assistance center,技術支援中心)協作檢測與排除網絡故障,tac人員希望看到在路由器上運作show tech-support指令之後的輸出資訊,那麼是否需要在路由器上應用該指令,然後再在終端視窗中将輸出結果複制粘貼到文本編輯器中呢?雖然這也是一種實作方式,不過例2-39給出了利用選項|redirect将show指令的輸出結果發送到特定檔案的處理方式,本例将show tech-support指令的輸出結果發送到了tftp伺服器上的指定檔案中。
例2-39 将輸出結果重定向到tftp伺服器