Transcript CH 5

第5章
管理 Cisco 互連
網路
本著作僅授權老師於課堂使用, 切勿置放在網路上
播放或供人下載, 除此之外, 未經授權不得將全部
或局部內容以任何形式重製、轉載、變更、散佈或
以其他任何形式、基於任何目的加以利用。
著作權所有 © 旗標出版股份有限公司
本章重點







5 - 1 Cisco 路由器的內部元件
5 - 2 路由器的開機序列
5 - 3 管理組態暫存器
5 - 4 備份與復原 Cisco IOS
5 - 5 備份與復原 Cisco 組態
5 - 6 使用 Cisco 發現協定 (CDP)
5 - 7 使用 telnet
2
本章重點



5 - 8 解析主機名稱
5 - 9 檢查網路連通性與問題檢修
5 - 10 摘要
3
管理 Cisco 互連網路



本章教您如何管理互連網路上的 Cisco 路由器。
IOS 與組態檔存放在 Cisco 裝置的不同位置, 但
您必須瞭解這些檔案位於何處, 以及他們如何運
作。
您會學到路由器的主要元件, 路由器的開機序列
(boot sequence), 以及組態暫存器
(configuration register), 包括如何利用組態暫存
器來復原密碼。
4
管理 Cisco 互連網路


之後, 學習當您使用 Cisco IOS 檔案系統 (IOS
File System, IFS) 與 Cisco SDM 時, 如何利用
搭配 TFTP 伺服器的 copy 命令來管理路由器。
本章最後會探索 Cisco 發現協定 (Cisco
Discovery Protocol, CDP), 並學習如何解析主
機名稱, 以及一些重要的 Cisco IOS 檢修技能。
5
5 - 1 Cisco 路由器的內部元件

為了設定與檢修 Cisco 互連網路, 必須知道
Cisco 路由器的主要元件, 並瞭解每個元件的作
用。表 5.1 描述 Cisco 路由器的主要元件。
6
Cisco 路由器的內部元件
7
Cisco 路由器的內部元件
8
5 - 2 路由器的開機序列


路由器開機時會執行一系列的步驟, 稱為開機序
列 (boot sequence), 以測試硬體, 並載入必要的
軟體。
開機序列包括以下的步驟:



1. 路由器執行 POST。POST 測試硬體, 以確認
裝置的所有元件都存在且能運作。
例如, POST 檢查路由器上的各種界面。POST
存放於 ROM, 並且從該處執行。
2. 開機區程式尋找並載入 Cisco IOS 軟體。開
機區程式儲存在 ROM 中, 用來執行其他程式。
9
路由器的開機序列




它要負責找尋每個 IOS 程式的位置, 然後加以載
入。
根據預設, 所有 Cisco 路由器的 IOS 軟體都是從
快閃記憶體載入的。
3. IOS 軟體尋找 NVRAM 中的有效組態檔, 這個
檔稱為 "startup-config" (啟動組態)。
而且只在系統管理員有拷貝運行組態檔到
NVRAM 時才會存在 (如您所知, 新的 ISR 路由
器有一個預載的小型啟動組態檔)。
10
路由器的開機序列




4. 如果啟動組態檔在 NVRAM 中, 路由器就會將
該檔拷貝到 RAM 中, 並且稱之運行組態檔
(running-config)。
接著路由器就會執行該檔, 然後開始運作。
如果啟動組態檔不在 NVRAM 中, 路由器就會從
所有的界面廣播媒介偵測 (Carrier Dectect, CD)
訊號來偵測 TFTP 主機, 以尋找組態檔。
如果失敗 (通常會失敗 - 大部分的人甚至不瞭
解路由器曾嘗試這個程序), 則路由器會啟動裝配
模式 (setup mode) 的設定程序。
11
5 - 3 管理組態暫存器



所有 Cisco 路由器都有一個 16 位元的軟體暫
存器, 放在 NVRAM 中。
這個組態暫存器的預設值是要從快閃記憶體載
入 Cisco IOS, 然後從 NVRAM 中尋找並載入啟
動組態檔。
以下討論組態暫存器的設定, 以及如何利用這些
設定來復原路由器上的密碼。
12
瞭解組態暫存器位元



這個 16 位元 (2 位元組) 組態暫存器的解讀方
式是從 15 到 0, 亦即從左至右。
Cisco 路由器上的預設組態設定是 0 x 2102, 也
就是第 13、8、1 等位元是開啟的, 如表 5.2 所
示。
請注意每 4 個位元 (半位元組) 一組, 其對應的
二進位值分別為 8, 4, 2, 1:
13
瞭解組態暫存器位元


表 5.3 列出軟體組態位元的意義。
請注意第 6 位元可用來忽略 NVRAM 的內容。
這個位元是為了復原密碼 - 本章的 "復原密碼"
一節會加以討論。
14
瞭解組態暫存器位元


開機欄位由組態暫存器的 0 - 3 位元所組成, 作
用是控制路由器的開機序列。
表 5.4 描述這些開機欄位的位元。
15
瞭解組態暫存器位元
16
檢視目前的組態暫存器值

利用 show version (縮寫成 sh version 或 show
ver) 命令可檢視目前的組態暫存器內容, 例如:

這個命令提供的最後一列資訊是組態暫存器的
值, 在這個範例中, 其值為 0 x 2102 - 預設值。
17
檢視目前的組態暫存器值


0 x 2102 的組態暫存器值是要告訴路由器到
NVRAM 中找尋開機序列。
請注意 show version 命令也提供 IOS 的版本資
訊, 此範例中顯示 IOS 的版本為 12.4 (12)。
18
修改組態暫存器

您可以修改組態暫存器的值, 以改變路由器如何
開機與執行。以下是幾個修改組態暫存器的可
能理由:







強迫系統進入 ROM 監視模式。
選擇開機來源與預設的開機檔案名稱。
打開或關閉中斷功能。
控制廣播位址。
設定控制台終端機的傳輸速率。
從 ROM 載入作業軟體。
開啟從 TFTP 伺服器開機的功能。
19
修改組態暫存器



您可以利用 config-register 命令來改變組態暫
存器。
例如, 以下的命令告訴路由器從 ROM 的小型
IOS 開機, 然後顯示目前的組態暫存器值:
請注意 show version 命令顯示組態暫存器目前、
以及路由器重開機時的值。
20
修改組態暫存器



對組態暫存器所作的任何修改會一直到路由器
重開機才會發生作用。
0 x 2101 表示下次路由器重開機時會從 ROM
載入 IOS。有時您會看到 0 x 101 的輸出, 基本
上這是同一件事, 2 種方式都可以。
以下是將路由器的組態暫存器設成 0 x 2101, 並
且重載後的輸出:
21
修改組態暫存器

此時如果輸入 show flash, 仍然會發現 IOS 還
好好地在快閃記憶體中呢!但我們告訴路由器
要從 ROM 載入 IOS, 這也是為什麼主機名稱會
顯示 (boot)。
22
修改組態暫存器

因此, 即使快閃記憶體中有完整的 IOS, 藉由改
變組態暫存器的值, 就可以改變路由器軟體的預
設載入來源。
23
修改組態暫存器

如果您想要將組態暫存器改回預設值, 則只要輸
入:

下一節將告訴您如何載入路由器到 ROM 監視
模式, 以執行密碼的復原。
24
復原密碼




如果因為忘了密碼而被鎖在路由器之外, 可以改
變組態暫存器來幫助您重新控制該路由器。
如同我們方才所說的, 組態暫存器的第 6 個位元
是用來告訴路由器是否要使用 NVRAM 的內容
來載入路由器的組態。
預設的組態暫存器值是 0 x 2102, 其第 6 個位
元是關閉的。根據這個預設值, 路由器會找尋並
載入 NVRAM 中的路由器組態 (啟動組態)。
若要復原密碼, 需將第 6 個位元打開, 這樣做是
要告訴路由器忽略 NVRAM 的內容。
25
復原密碼


打開第 6 位元後組態暫存器的值變成 0 x 2142。
以下是復原密碼的主要步驟:




1. 開機並執行中斷功能來插斷開機序列, 這會將
路由器帶入 ROM 監視模式。
2. 改變組態暫存器的值, 將第 6 個位元打開 (所
以值為 0 x 2142)。
3. 重載路由器。
4. 進入特權模式。
26
復原密碼






5. 拷貝啟動組態檔給運行組態檔。
6. 改變密碼。
7. 將組態暫存器重置為預設值。
8. 儲存路由器組態。
9. 重載路由器 (選擇性的)。
接下來讓我們更詳細地討論這些步驟, 並以 ISR、
2600、或甚至是 2500 系列的路由器為例 (您仍
然可能使用 2500, 而且您也不會知道何時可能
會需要這些資訊), 展示如何操作命令來重新取
得對它們的存取權。
27
復原密碼


如剛才說的, 在路由器開機過程中壓下 Enter +
Break, 就可進入監視模式。
但如果 IOS 已經損毀或遺失, 然後也沒有網路
可用來找尋 TFTP 主機, 最後也無法從 ROM 載
入迷你 IOS, 則路由器的預設就會進入 ROM 監
視模式。
28
插斷路由器的開機序列


第 1 個步驟是要重開機並執行中斷功能, 這通常
是在使用 HyperTerminal (筆者個人愛用
SecureCRT), 而且當路由器一開始重開機時使
用 Ctrl + Break 來完成的。
您執行中斷動作之後應該會看到如下的畫面 (這
是 2600 系列路由器的輸出, 與 ISR 路由器的非
常類似)。
29
插斷路由器的開機序列

請注意 monitor: command "boot" aborted due
to user interrupt. 這一列, 這時您會在 rommon
1> 的提示列上, 我們稱之為 ROM 監視模式。
30
修改組態暫存器


如之前所說明的, 您可以利用 config-register 命
令來修改組態暫存器。
若要打開暫存器的第 6 位元, 請使用值為 0 x
2142 的組態暫存器。

Cisco ISR / 2600 系列的命令:要在 Cisco ISR
/ 2600 系列的路由器上改變這個位元的值, 只需
在 rommon 1> 提示列輸入如下的命令:
31
修改組態暫存器



Cisco 2500 系列的命令:要在 Cisco 2500 系列
的路由器上改變組態暫存器, 需在中斷路由器的
開機序列後輸入 o。
這會產生組態暫存器選項設定的功能選單, 輸入
o / r 命令, 再跟著新的暫存器值, 即可改變組態
暫存器。
以下是在 2501 路由器上打開第 6 位元的範例:
32
修改組態暫存器

請注意路由器輸出的最後一項是 03 - 00, 這告訴
路由器什麼是 IOS 開機檔。
33
修改組態暫存器


預設上路由器會使用快閃記憶體中發現的第 1
個檔案。
因此如果您想要以不同的檔案名稱來開機, 可以
修改組態暫存器或使用 boot system
flash:ios_name 命令 (稍後就會討論到 boot
system 命令)。
34
重載路由器並進入特權模式

此時您需要重置 (reset) 路由器, 做法如下:




對於 ISR / 2600 系列路由器, 輸入 I (代表初始化,
Initialize) 或 reset。
對於 2500 系列路由器, 輸入 I。
路由器會重載, 並詢問您是否要使用裝配模式
(因為沒有使用啟動組態檔)。
請回答不要進入裝配模式, 按下 Enter 鍵進入使
用者模式, 然後輸入 enable 進入特權模式。
35
檢視與變更組態

現在您已經通過了需要輸入使用者模式與特權
模式密碼的地方了。接下來請將啟動組態檔拷
貝給運行組態檔:

或縮寫成:

這是目前在 RAM 中執行的組態, 而您正處於特
權模式中, 這表示現在您可以檢視與變更組態。
36
檢視與變更組態


但您無法檢視 enable secret 的密碼設定, 因為
它是經過加密的。
若要改變這個密碼, 請輸入:
37
重設組態暫存器並重載路由器

更改密碼完成之後, 請利用 config-register 命令
將組態暫存器設回原來的預設值:

最後, 以 copy running-config startup-config 命
令來儲存這個新的組態設定, 並重載路由器。
38
boot system 命令




您是否知道, 如果快閃記憶體損毀時, 您可以設
定路由器從另一個 IOS 開機?
事實上, 您或許可能希望所有的路由器每次都從
某一台 TFTP 主機來開機, 那您就不用個別幫每
一台路由器升級。
您只要改變 TFTP 主機上的一個檔案, 就能進行
升級。
有幾個 boot 命令可以用來協助您管理路由器用
Cisco IOS 開機的方式-請注意, 這邊討論的是
路由器的 IOS, 而不是路由器的組態。
39
boot system 命令


boot 命令提供了很多的選項, 但是, 首先我們會
先說明 Cisco 建議的典型設定。
boot system 命令可以讓您告訴路由器要從快閃
記憶體的哪個檔案開機。
40
boot system 命令

根據預設, 路由器會使用它在快閃記憶體中所找
到的第一個檔案開機。您可以使用下面命令來
更改:
41
boot system 命令




上面的命令會設定路由器使用命令中所列的
IOS 檔來開機。
當您將新的 IOS 載入快閃記憶體, 並且想要進
行測試的時候, 或是當您想要完全改變載入時的
預設 IOS 時, 都可以使用這個命令。
下個命令被認為是個應急的常式, 我們之前也說
過, 您可以固定讓路由器從 TFTP 主機開機。
不過筆者個人並不建議您這樣做 (單一的故障
點);這裡只是要讓您知道也可以這樣做。
42
boot system 命令

最後一個應急的選項 - 如果沒有載入快閃記憶
體中的 IOS, 而且 TFTP 主機也沒有產生 IOS
- 從 ROM 中載入迷你 IOS。
43
boot system 命令

總而言之, 我們現在已經將 Cisco 建議的 IOS
備份常式都設定在路由器上了, 包括:快閃記憶
體、TFTP 主機、ROM。
44
5 - 4 備份與復原 Cisco IOS



在升級或復原 Cisco IOS 之前, 應該要拷貝既有
的檔案到 TFTP 主機當作備份, 以防萬一新的映
像損毀。
您可以使用任何一部 TFTP 主機來完成這個工
作。
預設上是使用路由器中的快閃記憶體來儲存
Cisco IOS, 以下幾節將說明如何檢查快閃記憶
體的容量、拷貝快閃記憶體中的 Cisco IOS 到
TFTP 主機。
45
備份與復原 Cisco IOS


然後展示如何從 TFTP 主機拷貝 Cisco IOS 到
快閃記憶體中。
但在您備份 IOS 映像到網路伺服器之前, 必須
先完成 3 件事:



確認您可以存取該網路伺服器。
確定網路伺服器有足夠的空間可容納該映像。
確認檔案名稱與路徑的要求。
46
備份與復原 Cisco IOS

如果您用膝上型電腦或工作站的乙太網路埠直
接連到路由器的乙太網路埠, 如圖 5.1 所示, 那
麼在您試著從電腦拷貝映像到路由器, 或從路由
器備份映像到電腦之前, 要先確認以下幾件事:



必須在管理員的工作站上執行 TFTP 伺服軟體。
路由器與工作站之間的乙太網路連線必須是交叉
式纜線。
工作站與路由器之乙太網路界面必須屬於同一個
子網路。
47
備份與復原 Cisco IOS


如果您要備份路由器快閃記憶體中的映像, 則必
須提供 IP 位址給 copy flash tftp 命令。
如果您要拷貝映像到快閃記憶體中, 則必須先確
認快閃記憶體有足夠的空間可容納所要拷貝的檔
案。
48
確認快閃記憶體



嘗試對路由器升級 Cisco IOS 之前, 應該養成一
個好習慣, 那就是先確認路由器的快閃記憶體是
否有足夠的空間可容納新的映像。
您可以用 show flash (或縮寫成 sh flash) 命令
來確認快閃記憶體的容量, 以及快閃記憶體中儲
存的檔案。
例如:
49
確認快閃記憶體


這部 ISR 路由器有 64 MB 的 RAM, 目前大約
用到一半。
其實您可以用 ISR 路由器上的 show version 命
令來算出快閃記憶體的量:
50
確認快閃記憶體



快閃記憶體的容量顯現在最後一列。
請注意這個範例中的檔案名稱是 c2800nmadvsecurityk9-mz.124-12.bin。
show flash 命令與 show version 命令之輸出的
主要差異是, show flash 命令會顯示快閃記憶體
中的所有檔案, 而 show version 命令則會顯示
路由器當時正用來執行該路由器的檔案名稱。
51
備份 Cisco IOS



要備份 Cisco IOS 到 TFTP 伺服器, 需使用
copy flash tftp 命令。這是個很直覺的命令, 只
需來源檔案名稱與 TFTP 伺服器的 IP 位址。
備份工作的成功關鍵是要確認您已經與 TFTP
伺服器有良好的連通性。
要做這樣的檢查, 請在路由器控制台的提示列
ping TFTP 裝置, 例如:
52
備份 Cisco IOS

ping TFTP 伺服器確認了 IP 能運作之後, 就可
使用 copy flash tftp 命令來拷貝 IOS 到 TFTP
伺服器, 例如:
53
備份 Cisco IOS



您只要複製 show flash 命令或 show version 命
令所輸出的 IOS 檔案名稱, 然後在畫面提示您
輸入來源檔案名稱時貼上即可。
以上的範例成功地拷貝快閃記憶體的內容給
TFTP 伺服器。
遠端主機的位址就是 TFTP 伺服器的 IP 位址,
而來源檔案名稱就是快閃記憶體中的檔案。
54
復原或升級 Cisco 路由器 IOS



如果您需要復原 Cisco IOS 到快閃記憶體中, 以
取代已經被損毀的原始檔案, 或如果您想要升級
IOS, 怎麼辦?
您可以利用 copy tftp flash 命令從 TFTP 伺服
器下載檔案到快閃記憶體中, 這個命令需要
TFTP 伺服器的 IP 位址, 以及您想要下載的檔
案名稱。
但在開始之前, 請先確定所要放入快閃記憶體的
檔案確實在主機的預設 TFTP 目錄中。
55
復原或升級 Cisco 路由器 IOS


當您發出這個命令時, TFTP 不會詢問您檔案的
位置。
所以如果想要復原的檔案不在 TFTP 伺服器的
預設目錄中, 則這個命令就會失敗。
56
復原或升級 Cisco 路由器 IOS


在上述的例子裡, 筆者拷貝同名的檔案到快閃記
憶體中, 所以路由器會詢問筆者是否真的想要覆
蓋舊檔。
如果藉由覆寫而破壞了檔案, 那可得一直到路由
器重開機時才會發現。
57
復原或升級 Cisco 路由器 IOS


請小心使用這個命令, 如果檔案損毀了, 則需要
從 ROM 監視模式來復原 IOS。
如果正當您在載入新檔案時, 快閃記憶體沒有足
夠的空間可同時容納新的與既存的檔案, 則路由
器會要求在寫入新檔案至快閃記憶體之前, 先消
除快閃記憶體的內容。
58
使用 Cisco IOS 檔案系統




Cisco 建立了稱為 Cisco IFS (IOS File System)
的檔案系統, 能夠讓您用在 Windows DOS 提示
列的方式來使用檔案和目錄。
包括 dir、copy、more、delete、erase、
format、cd、pwd、mkdir、和 rmdir。
IFS 可讓您對所有檔案進行檢視和分類 - 包括
位於遠端伺服器上的檔案。
您一定想要在複製遠端伺服器上的某個映像檔
之前, 先確定它是有效的, 不是嗎?您或許還想
知道它有多大。
59
使用 Cisco IOS 檔案系統




另外, 您可能也會想要檢查遠端伺服器的組態,
以便在將檔案載入路由器之前先確定一切都很
好。
IFS 讓檔案系統的使用者介面能一體適用 - 它
不再與特定平台相關。
您現在可以在所有路由器上用相同語法來使用
所有的命令, 而不論是什麼平台!
這聽起來好像美好得難以置信?的確有一點, 因
為您會發現不是所有檔案系統和平台都支援所
有的命令。
60
使用 Cisco IOS 檔案系統




不過這並不是大問題, 因為不同檔案系統所執行
的動作並不相同;所以與特定檔案系統不相干
的命令通常也就是那些沒有被支援的命令。
您可以確信所有檔案系統或平台對於您在管理
上需要的所有命令都有提供完整的支援。
IFS 另一項很酷的功能就是它大幅減少許多命
令所需的必要提示列。
如果您要輸入一個命令, 只要將必要的資訊直接
輸入命令列即可 - 不再需要穿越一大堆的提示
列!
61
使用 Cisco IOS 檔案系統


因此, 如果您希望將一個檔案拷貝到 FTP 伺服
器上, 則只要先在路由器上指出所需的來源檔案,
精確地指出目標檔案要在 FTP 伺服器的位置,
決定您連到伺服器時要使用的使用者名稱和密
碼, 並且通通輸入在一行之中就好了!
對於不願意改變的人而言, 還是可以讓路由器的
提示列要求您輸入所需的資訊, 並且很高興地輸
入比以前更優雅的簡化版命令即可。
62
使用 Cisco IOS 檔案系統




但即使如此, 路由器可能還是會提示訊息給您
- 即使您的命令列正確無誤。
這取決於您如何設定 file prompt 命令, 以及您
要使用的是哪個命令。
但是別擔心 - 果真如此, 命令的預設值還是會
被輸入, 您只要按下 Enter 來確認這些值正確無
誤就好了。
IFS 還讓您能在任何目錄下檢視各種目錄和檔
案。此外, 您還可以在快閃記憶體或界面卡上建
立子目錄 - 但這僅限於較新的平台。
63
使用 Cisco IOS 檔案系統




另外, 請記住新的檔案系統介面是使用 URL 來
決定檔案的位置。
所以, 就像 URL 可以指定網站的位置一樣, 它現
在也可以用來指示檔案是位於 Cisco 路由器、
或甚至於遠端檔案伺服器的何處!
只要在命令中輸入 URL 來指定檔案或目錄的位
置即可。
要將檔案從一處拷貝至另一處真的很簡單, 只要
輸入 copy 來源_URL 目的_URL 命令就 OK 囉!
64
使用 Cisco IOS 檔案系統


不過, IFS 的 URL 比過去的做法要困難一些, 它
所使用的格式有相當多種, 取決於檔案的位置而
不同。
我們使用 Cisco IFS 命令的方式跟在前面 IOS
一節中使用 copy 命令的方式非常相同:



備份 IOS
升級 IOS
檢視文字檔案
65
使用 Cisco IOS 檔案系統

現在就讓我們來檢視可以用來管理 IOS 的常見
IFS 命令。我們很快就會進入組態檔了, 但是目
前要先概略說明管理新 Cisco IOS 的基礎。



dir 跟 Windows 一樣, 這個命令可以檢視目錄中
的檔案。輸入 dir, 按下 Enter, 根據預設, 您就會
取得 flash:/ 目錄的內容輸出。
copy 這是個很常用的命令, 通常用來升級、復原、
或備份 IOS。
但是在使用的時候, 請務必要注意細節 - 您在
拷貝什麼、它從哪裡來、要拷貝到哪裡。
66
使用 Cisco IOS 檔案系統



more 跟 Unix 一樣, 這個命令會提供文字檔讓您
檢視。您可以使用它來檢查組態檔或是備份的組
態檔。
在討論真正的組態設定時還會更詳細討論這個命
令。
show file 這個命令會提供指定檔案或檔案系統
的內容, 但是人們很少用它, 所以比較不為人知。
67
使用 Cisco IOS 檔案系統




delete 猜猜看 - 沒錯, 它會刪除一些東西。但
是在某些類型的路由器上, 可能跟您想像的不一
樣。
因為即使它會破壞檔案, 不表示它會將所佔用的
空間釋放出來。要真正釋放空間, 還必須使用
squeeze 命令。
erase / format 請務必小心使用 - 當您在拷貝檔
案的時候, 對於詢問是否要清除檔案系統的對話
框, 請確定說「不」!
您所使用的記憶體種類會決定是否能拒絕快閃磁
碟。
68
使用 Cisco IOS 檔案系統



cd / pwd 跟 Unix 和 DOS 一樣, cd 是用來改變
目錄的命令。使用 pwd 命令則會列出工作中的
目錄。
mkdir / rmdir 某些路由器和交換器使用這些命令
來建立和刪除目錄 - mkdir 命令是用來建立,
rmdir 是用來刪除。
使用 cd 和 pwd 命令可以變換到這些目錄中。
69
利用 Cisco IFS 來升級 IOS


現在以主機名稱 R1 的 ISR 路由器 (1841 系列)
為例, 檢視一些 Cisco IFS 命令。
首先用 pwd 命令來確認預設的目錄, 然後使用
dir 命令確認預設目錄 (flash:/) 的內容:
70
利用 Cisco IFS 來升級 IOS

從上面可以看到這台是基本的 IP IOS (c1841iphase-mz.124-1c.bin)。看來我們必須升級這
台 1841。
71
利用 Cisco IFS 來升級 IOS


您還可以看到 Cisco 現在是如何將 IOS 的種類
放進檔名中。
首先讓我們先使用 show file 命令來檢視快閃記
憶體中某個檔案的大小 (也可以使用 show
flash):
72
利用 Cisco IFS 來升級 IOS



在我們加入新的 IOS 檔案 (c1841advipservicesk9-mz.124-12.bin) 之前, 因為
IOS 檔案很大 - 檔案長度超過 21 MB, 所以必
須先將現有的 IOS 清除。
我們將使用 delete 命令, 但別忘了, 我們可以更
動快閃記憶體中的任何檔案, 但是除非重開機,
否則不會發生什麼嚴重的事情 (也就是說, 如果
犯錯的話, 這時我們可能也不會發現)。
所以, 顯然我們在此必須非常小心。
73
利用 Cisco IFS 來升級 IOS
74
利用 Cisco IFS 來升級 IOS


利用上面的命令, 我們刪除了現有檔案, 並且使
用 show flash 和 show file 命令來驗證這項刪
除。
現在讓我們使用 copy 命令加入新的檔案, 但是
同樣地要非常小心, 因為這也不會比先前的第一
個動作更安全:
75
利用 Cisco IFS 來升級 IOS
76
利用 Cisco IFS 來升級 IOS

我們可以使用 show file 命令來檢查檔案資訊:

請記住當路由器開機時, IOS 會展開到 RAM 中,
所以新的 IOS 要等到您重新載入路由器時才會
執行。
接著, 讓我們來看看如何使用 Cisco 的 SDM 來
升級路由器的 IOS。

77
利用 SDM 來管理快閃記憶體



原本打算將這一節叫做「使用 SDM 在路由器
上升級 / 復原 / 備份 IOS」, 但是 SDM 可以管
理快閃記憶體 (和 NVRAM) 中的所有檔案, 而不
僅僅是 IOS。
它可能是快閃檔案管理的簡易方法, 但未必更安
全。不過, 它依然是管理檔案的一種方法。所以
讓我們來看看吧。
這節要連到另一台 1841 路由器 (叫做 R3), 並
且使用 SDM 來升級 IOS。
78
利用 SDM 來管理快閃記憶體


讓我們先連上, 並且看看快閃記憶體裡有什麼。
在第一個畫面中可以看到 IP 是唯一可用的功能,
而 Firewall、VPN、IPS 和 NAC 都被打叉。
讓我們來修正它!
79
利用 SDM 來管理快閃記憶體

下個畫面顯示如何開啟快閃的檔案管理。選擇
『File / File Management』。
80
利用 SDM 來管理快閃記憶體

此時, 畫面中出現了快閃中的所有檔案, 我們可
以看到目前有的是「ipbase」的 IOS。
81
利用 SDM 來管理快閃記憶體

點選螢幕上方的 Load file from PC, 以加入新檔
案。當我們嘗試載入新 IOS 時, 會收到下面的
訊息:
82
利用 SDM 來管理快閃記憶體

點選 OK, 嘗試刪除現有檔案, 然後會收到下面
的訊息:
83
利用 SDM 來管理快閃記憶體

選擇 yes, 然後再次檢視 File Management 視窗
以確認檔案已經刪除。
84
利用 SDM 來管理快閃記憶體

接著再次選擇 Load file from PC, 檔案開始上傳
到快閃記憶體。
85
利用 SDM 來管理快閃記憶體

呵呵 - 終於成功!
86
利用 SDM 來管理快閃記憶體

在重新開機後, 就可以看到這個新的 IOS 中, IP、
Firewall、VPN、IPS 和 NAC 都可以使用了。
87
5 - 5 備份與復原 Cisco 組態




對路由器的組態設定所進行的任何修改都會儲
存在運行組態檔中, 如果您修改運行組態後沒有
輸入 copy run start 命令, 則路由器關機或重開
機後這些異動就會失效。
您可能也會想要對組態資訊做備份, 以防萬一路
由器或交換器突然停擺。
即使您的機器是很正常的, 做這樣的備份也有益
於日後的參考與文件說明。
以下幾節描述如何拷貝路由器的組態到 TFTP
伺服器, 以及如何復原這些組態。
88
備份 Cisco 路由器組態


要拷貝路由器的組態到 TFTP 伺服器, 可以用
copy running-config tftp 或 copy startup-config
tftp 命令。
他們會備份目前在 DRAM 中運作的, 或儲存於
NVRAM 中的路由器組態。
89
確認目前的組態

要確認 DRAM 中的組態, 請使用 show runningconfig 命令 (縮寫成 sh run), 例如:

根據目前的組態資訊顯示, 路由器現在正在執行
12.4 版的 IOS。
90
確認儲存的組態

接下來應該要檢查 NVRAM 中的組態, 這時要
使用 show startup-config 命令 (縮寫成 sh
start), 例如:

第 2 列告訴我們備份這個組態需要多少空間。
91
確認儲存的組態




這裡, 我們可以看到 NVRAM 的容量有 239KB,
目前使用了 776 位元組 (如果您用的是 ISR 路
由器, 則用 show version 命令來檢視記憶體會
比較容易)。
如果您不確定兩個檔案是否一樣, 而且這個運行
組態就是您想要用的,
則可以使用 copy running-config startup-config
命令。這幫助您確定 2 個檔案
確實是相同的。接下來我們就進行這樣的操作。
92
拷貝目前的組態給 NVRAM


拷貝運行組態給 NVRAM 當作備份, 這樣就可
以確保路由器重開機時, 運行組態一定可以被重
新載入, 例如以下所示的範例。
在這個新版的 IOS 12.0 中, 會提示您輸入想要
的檔案名稱:
93
拷貝目前的組態給 NVRAM

當您使用 copy 命令時會出現檔案名稱的提示,
主要是因為這時有很多的選項可用:
94
拷貝目前的組態給 NVRAM

接著我們還要再討論 copy 命令。
95
拷貝組態給 TFTP 伺服器

拷貝檔案給 NVRAM 之後, 接下來可利用 copy
running-config tftp (縮寫成 copy run tftp 命令來
製作第 2 個備份到 TFTP 伺服器上, 例如:
96
拷貝組態給 TFTP 伺服器


在這個範例中, 檔案名稱設為 todd-confg, 因為
我們沒有為路由器設定主機名稱。
如果您已經設了主機名稱, 則這個命令會自動使
用主機名稱加上副檔名-confg 來當作檔案的名
稱。
97
復原 Cisco 路由器組態


如果您已經更改了路由器的運行組態檔, 但想要
將組態回復為啟動組態檔中的版本, 最簡單的方
法就是利用 copy startup-config running-config
命令 (縮寫成 copy start run)。
您也可以使用舊版的 Cisco 命令 config mem
來復原組態, 當然, 這只有在您變更組態設定之
前已先拷貝運行組態檔到 NVRAM 中才行!
98
復原 Cisco 路由器組態


如果您之前已拷貝路由器的組態到 TFTP 伺服
器當作第 2 個備份, 則可利用 copy tftp runningconfig 命令 (縮寫成 copy tftp run) 或 copy tftp
startupconfig 命令 (縮寫成 copy tftp start) 來復
原組態。
例如 (請記住提供這個功能的舊命令是 config
net):
99
復原 Cisco 路由器組態

組態檔是個 ASCII 文字檔, 這表示在您拷貝
TFTP 伺服器上的組態檔到路由器之前, 可以用
任何的文字編輯器來修改它。
100
復原 Cisco 路由器組態


最後, 請注意這個命令變成了一個 URL -
tftp://1.1.1.2/todd-config。
這是 Cisco IOS 檔案系統 (如之前討論的), 稍後
我們將使用它來備份與復原我們的組態。
101
清除組態

要刪除 Cisco 路由器上的啟動組態檔, 需使用
erase startup-config 命令, 例如:
102
清除組態


這個命令會刪除路由器上 NVRAM 的內容。
因此, 如果您在特權模式下輸入 reload, 並且回
答說您不要儲存變動, 則路由器就會重開機並進
入裝配模式。
103
使用 Cisco IOS 檔案系統來管理路
由器的組態 (Cisco IFS)


老式而可靠的 copy 命令還是很好用, 而且筆者
也很推薦。不過, 您還是必須瞭解 Cisco IFS。
我們要做的第一件事是使用 show file 命令來觀
察 NVRAM 和 RAM 的內容。
104
使用 Cisco IOS 檔案系統來管理路
由器的組態 (Cisco IFS)


其實, 並沒有其他命令可以真正顯示 NVRAM
的內容。不過話說回來, 筆者也不確定如果我們
真的看到它的內容會有什麼好處。
現在讓我們來看看 RAM 的內容:
105
使用 Cisco IOS 檔案系統來管理路
由器的組態 (Cisco IFS)
106
使用 Cisco IOS 檔案系統來管理路
由器的組態 (Cisco IFS)


同樣地, 不是很令人興奮。現在讓我們在 Cisco
的 IFS 中使用 copy 命令, 將檔案從 TFTP 伺服
器拷貝到 RAM。
首先, 先試試過去 10 年間用來達成這份工作所
用的舊命令 config net:
107
使用 Cisco IOS 檔案系統來管理路
由器的組態 (Cisco IFS)

雖然這個命令說它已經被新的 URL 命令取代,
但它仍舊還是有用。現在讓我們以 Cisco IFS
來試試看:
108
使用 Cisco IOS 檔案系統來管理路
由器的組態 (Cisco IFS)


也許我們可以說這比使用 copy tftp run 命令簡
單 - Cisco 是這麼說啦。也許還要稍微花時間
習慣一下。
現在, 讓我們透過 HTTP 或 HTTPS 連上路由器,
並且使用 SDM 來管理組態檔案, 看看是否能更
簡單一點。
109
使用 SDM 來備份、復原和編輯路
由器的組態




老實說, SDM 處理路由器組態設定的方式真的
沒什麼特別的。
基本上, 如果您 telnet 到路由器上, 執行 show
run, 並且將輸出拷貝到 PC 上的文字檔中, 您就
相當於 (多多少少) 完成了 SDM 和它的組態管
理工具所能做的工作。
但是使用 SDM 來管理檔案還是比透過 Cisco
IFS 要容易令人了解。
為什麼呢?使用 SDM 比使用前面提到的 copy
命令簡單之處在於, 它不需要 TFTP 主機。
110
使用 SDM 來備份、復原和編輯路
由器的組態




藉由使用 SDM, 您可以 http 或 https 到路由器
上, 並且讓所有檔案存在您的 PC 上, 而不用設
定 TFTP 主機。
如第 4 章所述, SDM 最適合使用在進階組態設
定, 例如安全性、IPS、QOS、和 NAT。
您可以猜到, 筆者其實是個命令列界面 (CLI) 的
老骨頭。怎麼說呢, 積習難改。
讓我們速迅地檢視一下 SDM 如何透過您的主
機來備份和復原組態。
111
使用 SDM 來備份、復原和編輯路
由器的組態

在主功能表下選擇『File / Write to Startup
Config』, 以便將組態備份到 NVRAM。
112
使用 SDM 來備份、復原和編輯路
由器的組態

然後選擇『File / Save Running Config to PC』。
113
使用 SDM 來備份、復原和編輯路
由器的組態

最後一個管理檔案的選項是使用在 Additional
Tasks 下面的 Configuration Management 畫面。
114
使用 SDM 來備份、復原和編輯路
由器的組態

Config Editor 可以讓您改變運行組態, 但在此之
前, 您必須先同意您可能會把路由器的組態搞亂,
而且您覺得沒有關係!
115
使用 SDM 來備份、復原和編輯路
由器的組態

最好是點選 Save Running Configuration 按鈕。
然後您可以選擇從 RAM 或您的 PC 匯入檔案。
116
使用 SDM 來備份、復原和編輯路
由器的組態

最後, 您可以從 Configuration Management 選
擇 Reset to Factory Default。
117
使用 SDM 來備份、復原和編輯路
由器的組態


如您所見, 有很多不同的方法可以把快閃記憶體、
NVRAM、甚至於 RAM 中的檔案搞壞, 嗯~筆者
是說改變啦。
請在第 4 章提到的 SDM demo 上練習, 或是試
著跟朋友借台路由器 (您不會想在自己的路由器
上練習這些命令吧)。
118
5 - 6 使用 Cisco 發現協定 (CDP)



Cisco 發現協定 (Cisco Discovery Protocol,
CDP) 是 Cisco 設計的專屬協定, 用來幫助管理
員收集本地與遠端裝置的相關資訊。
藉由 CDP 可收集鄰居裝置的硬體與協定資訊,
這對網路的檢修與書面說明是很有助益的!
以下幾節將討論 CDP 計時器, 以及用來確認網
路的 CDP 命令。
119
取得 CDP 計時器與保留期限

show cdp 命令 (縮寫成 sh cdp) 提供 2 個可在
Cisco 裝置上設定的 CDP 整體參數:



CDP 計時器 (timer), 這是從所有運作界面送出
CDP 封包的頻率。
CDP 保留期限 (holdtime), 這是裝置對它從鄰居
裝置接收之封包的保留時間。
Cisco 路由器與 Cisco 交換器都使用相同的參
數。
120
取得 CDP 計時器與保留期限

Corp 路由器的輸出類似:

利用 cdp holdtime 與 cdp timer 這 2 個整體命
令來設定路由器上的 CDP 保留期限與計時器,
例如:
121
取得 CDP 計時器與保留期限


您可以使用整體設定模式下的 no cdp run 命令
來關閉所有界面的 CDP。
若要關閉或開啟某個界面的 CDP, 則要使用 no
cdp enable 與 cdp enable 命令;別急, 稍後我
們會展示這些設定。
122
收集鄰居資訊



show cdp neighbor 命令 (縮寫成 sh cdp nei)
提供直接相連之裝置的相關資訊。CDP 封包無
法穿過 Cisco 交換器, 所以您只能看到直接相連
的裝置。
這表示如果您的路由器連到交換器, 就無法看到
插入該交換器的任何裝置。
以下是在筆者之 ISR 路由器上使用 show cdp
neighbor 命令所產生的輸出:
123
收集鄰居資訊

好的, 您已經直接以控制台埠連結 Corp ISR 路
由器, 而該路由器則直接連結了 4 部裝置, 其中
有 2 條連結到 R1 路由器。
124
收集鄰居資訊



裝置識別碼 (Device ID) 顯示相連裝置的主機名
稱, 本地界面 (Local Intrace) 指的是這部路由器
的界面, 而埠識別碼 (port ID) 則是另一端裝置
上直接來連結的界面。
這份輸出所看到的都是直接相連的裝置。
表 5.5 摘要了 show cdp neighbor 命令為每個
裝置顯示的資訊:
125
收集鄰居資訊

另一個提供鄰居資訊的命令是 show cdp
neighbor detail (縮寫成 show cdp nei de), 這個
命令可以在路由器與交換器上執行, 而且會顯示
相連之每部裝置的詳細資訊。
126
收集鄰居資訊

例如:
127
收集鄰居資訊
128
收集鄰居資訊
129
收集鄰居資訊



從這份輸出可看到什麼呢?首先, 它提供了每部
直接相連裝置的主機名稱與 IP 位址。
除了 show cdp neighbor 命令所提供的相同資
訊之外, 這個命令還提供鄰居裝置的 IOS 版本。
show cdp entry * 命令會顯示與 show cdp
neighbors detail 命令相同的資訊。
130
收集鄰居資訊

以下是 show cdp entry * 命令的輸出範例:
131
收集鄰居資訊

show cdp neighbors detail 命令與 show cdp
entry * 命令所顯示的資訊並沒有不同。
132
收集鄰居資訊

不過 show cdp entry * 命令有 2 個選項是 show
cdp neighbors detail 命令所沒有的:
133
收集鄰居資訊

show cdp entry * protocols 命令只顯示每個直
接相連之鄰居的 IP 位址, 而 show cdp entry *
version 命令則只顯示每個直接相連之鄰居的
IOS 版本。
134
收集鄰居資訊
135
收集鄰居資訊


雖然 show cdp neighbors detail 命令與 show
cdp entry 命令非常類似, 但 show cdp entry 命
令可讓我們為每部直接相連的鄰居只顯示一列
資訊, show cdp neighbors detail 命令則不行。
接下來讓我們來學習如何使用 show cdp traffic
命令。
136
收集界面交通資訊



show cdp traffic 命令顯示界面交通的資訊, 包
括收送 CDP 封包的數目與 CDP 的錯誤。
以下是在 Corp 路由器上使用 show cdp traffic
命令的輸出範例:
這並非最重要的資訊, 不過它確實顯示出裝置收
送了多少 CDP 封包。
137
收集埠與界面資訊




show cdp interface 命令提供路由器界面或交換
器埠上的 CDP 狀態。
如之前所說的, 您可以利用 no cdp run 命令完
全關閉路由器上的 CDP。
但請記住, 您也可以用 no cdp enable 命令一次
只關閉一片界面上的 CDP, 而利用 cdp enable
命令來開啟一個埠的 CDP。
所有埠與界面的預設都是 cdp enable。
138
收集埠與界面資訊


在路由器上, show cdp interface 命令會顯示每
個使用 CDP 的界面資訊, 包括線路上的封裝、
每個界面的計時器與保留期限。
以下是 ISR 路由器上的輸出範例:
139
收集埠與界面資訊
140
收集埠與界面資訊


這份輸出很好, 因為它總是告訴我們界面的狀態。
若要關閉路由器之某片界面的 CDP, 請在界面
設定模式下使用 no cdp enable 命令, 例如:
141
收集埠與界面資訊
142
收集埠與界面資訊


請注意, 因為序列 0 / 0 / 0 的 CDP 已經關閉了,
所以這份輸出並沒有序列 0 / 0 / 0。
如果要得到它的資訊, 必須在序列 0 / 0 / 0 上執
行 cdp enable 命令, 然後它才會出現在輸出中。
143
CDP 可以救命!



Karen 剛剛受雇為德州達拉斯一家大型醫院的
資深網路顧問。
院方期望她能處理所有可能產生的問題, 這裡就
不加以強調;她只是擔心如果網路當掉, 人們就
可能無法得到正確的醫療!這攸關潛在的生死
風險!
剛開始 Karen 工作得很愉快, 然後, 當然網路出
了一些問題。Karen 跟資淺的管理員要網路圖,
以便能檢修網路。
144
CDP 可以救命!




但他們說網路圖一直在一位資深管理員 (剛剛被
解雇) 那兒, 現在沒有人能找得到...天啊!
醫生每幾分鐘就會來呼喊一下, 因為他們無法得
到必要的資訊, 他們需要照顧他們的病人。
Karen 該怎麼辦?
這時 CDP 成了救命仙丹!幸虧這家醫院的設備
全是 Cisco 路由器與交換器, 而且預設上所有
Cisco 裝置上的 CDP 都是開啟的。
此外, 所幸這位剛被解雇的管理員在離開之前並
沒有關閉任何裝置上的 CDP。
145
CDP 可以救命!




現在 Karen 必須做的就是利用 show cdp
neighbor detail 命令找出所有她需要知道之每
部裝置的資訊, 幫助她畫出醫院網路, 拯救生命!
接下來的障礙可能是不知道那些裝置的密碼, 那
麼只好期待能找出這些密碼, 或在他們上面執行
密碼復原的工作。
因此, 使用 CDP - 您從來不知道何時可能會用
到它來解救生命!
附註:這是真實的故事。
146
利用 CDP 記錄網路拓樸





如本節標題所示, 現在我們要說明如何使用
CDP 來記錄一個範例網路。
您會學到如何只使用 CDP 命令和 show
running-config 命令, 來判斷路由器的類型、界
面種類、和各個界面的 IP 位址。
而且, 您只能透過 Lab_A 路由器來記錄網路。
另外這裡有個規定:所有遠端路由器會分配到
各個網路位址範圍的下一個 IP 位址。
圖 5.2 是您要用來完成記錄的東西。
147
利用 CDP 記錄網路拓樸
148
利用 CDP 記錄網路拓樸


在這個輸出中, 可以看到路由器有 4 個界面:2
個 FastEthernet 和 2 個序列界面。
首先, 使用 show running-config 命令找出每個
界面的 IP 位址。
149
利用 CDP 記錄網路拓樸
150
利用 CDP 記錄網路拓樸


這個步驟完成後, 您現在可以寫下 Lab_A 路由
器 4 個界面的 IP 位址。
接著, 您必須決定連接每個界面之另一端裝置的
種類。
151
利用 CDP 記錄網路拓樸

這很簡單 - 只要使用 show cdp neighbors 命
令即可:

您現在已經取得很多資訊了!
152
利用 CDP 記錄網路拓樸



藉由使用 show running-config 和 show cdp
neighbors 命令, 可以知道 Lab_A 路由器的所有
IP 位址, 以及連到每條 Lab_A 路由器鏈路的路
由器種類, 以及遠端路由器的所有界面。
而且, 透過從 show running-config 和 show cdp
neighbors 蒐集到的資訊, 我們就能夠建立圖
5.3 的拓樸了。
如果有需要的話, 我們也可以使用 show cdp
neighbors details 命令來檢視鄰居的 IP 位址。
153
利用 CDP 記錄網路拓樸

但是由於我們知道 Lab_A 路由器所有鏈路的 IP
位址, 所以根據這
個網路的規定, 我
們已經知道下個
可用的 IP 位址是
多少了。
154
5 - 7 使用 telnet



telnet 是 TCP / IP 協定組的一份子, 它是一種虛
擬終端機協定, 讓您能與終端裝置連線, 收集資
訊, 並執行程式。
設定好路由器、交換器之後, 就可以利用 telnet
程式來重新設定, 或檢查他們的狀況, 而不需要
使用控制台埠。
您可以在任何提示列 (DOS 或 Cisco) 輸入
telnet 來執行 telnet 程式, 不過需要在這些路由
器上設定 VTY 密碼才行。
155
使用 telnet


請記住, 您無法使用 CDP 來收集那些沒有直接
相連的路由器與交換器資訊, 但可以利用 telnet
程式先連到鄰居裝置, 然後再於那些鄰居裝置上
執行 CDP, 以收集更遠端裝置的資訊。
您可以從路由器上發出 telnet 命令, 例如:
156
使用 telnet




如您所視, 我們並沒有設定密碼。
這部路由器的 VTY 埠設定為 login, 這表示我們
要不就得設定 VTY 密碼, 要不就得使用 no
login 命令。
在 Cisco 路由器上其實不需要使用 telnet 命令,
而只要在命令提示列輸入 IP 位址即可, 路由器
會假定您想要 telnet 至該裝置。
例如:
157
使用 telnet

此時, 在那些我們想要以 telnet 登入的路由器上
設定 VTY 密碼是不錯的想法, 例如我們在名稱
為 R1 的遠端路由器設定如下:
158
使用 telnet

現在, 讓我們再試一次, 我們從 Corp ISR 的控
制台連上該路由器:

記住嗎, 這個 VTY 密碼是使用者模式的密碼, 不
是 enable 模式的密碼。
159
使用 telnet

注意看當我們 telnet 進 R1 路由器之後, 試著進
入特權模式時會發生什麼事:

基本上這個輸出的意思是 "門都沒有"!
這真是不錯的安全功能, 因為您總不希望任何人
telnet 到您的路由器, 然後只要輸入 enable 命
令就進入特權模式吧。

160
使用 telnet


若要利用 telnet 來設定遠端裝置, 您得先在該裝
置上設定 enable 密碼或 enable secret 密碼!
在以下的範例中, 我們將告訴您如何同時 telnet
到多個裝置, 然後教您如何使用主機名稱, 而非
IP 位址。
161
同時 telnet 至多個裝置



如果您 telnet 到路由器或交換器, 隨時都可以輸
入 exit 來結束連線。
但如果您想要維持與遠端裝置的連線, 而仍然能
回到原來路由器的控制台, 怎麼辦?
其實您只要按 Ctrl + Shift + 6 的組合鍵, 釋放,
然後按 X 鍵即可。
162
同時 telnet 至多個裝置

以下是從 Corp 路由器控制台同時連結多部裝
置的範例:

在以上的範例中, 我們 telnet 到 R1 路由器, 然
後輸入密碼進入使用者模式。
163
同時 telnet 至多個裝置



接下來按 Ctrl + Shift + 6 的組合鍵, 然後按 X
鍵 (但您看不到, 因為它不會顯示在螢幕輸出上)。
請注意現在命令提示列又回到 Corp 路由器。
接著, 我們來討論幾個確認命令。
164
檢查 telnet 連線

要檢視您路由器與遠端裝置正在進行的連線, 可
利用 show sessions 命令。例如:

看到第 2 條連線旁邊的星號嗎?它代表第 2 個
會談是您上次的會談, 只要按 2 次 Enter 就可以
回到上次的會談。
您也可以輸入連線的號碼, 按下 Enter, 就可回
到所要的會談。

165
檢查 telnet 使用者

show users 命令會列出路由器上所有作用中的
控制台與 VTY 埠, 例如:

這個命令的輸出中, con 代表本地的控制台。這
個範例中, 控制台連結了 2 個遠端 IP 位址, 換
句話說, 就是 2 部裝置。
下個範例中, 我們在剛才已從 Corp 路由器
telnet 登入 (經由 1 號線路) 的 ap 裝置上輸入
sh users 命令。

166
檢查 telnet 使用者

這份輸出顯示控制台有在作用, 而且 1 號 VTY
埠正在使用中。星號表示目前的終端會談,
show user 命令就是從這個會談輸入的。
167
關閉 telnet 會談




結束 telnet 會談的方法有幾種 - 輸入 exit 或
disconnect 可能是最簡單、也最快的方法。
以下的 exit 命令展示了如何結束與遠端裝置的
會談:
因為 ap 裝置是上個會談, 所以只要按 2 次
Enter 即可返回該會談。
若要從本地裝置來結束會談, 可使用 disconnect
命令。
168
關閉 telnet 會談


在這個範例中, 我們使用 2 號會談, 因為這是與
R1 路由器的連線, 也是我們想要結束的會談。
如之前所說的, 您可以使用 show sessions 命令
來檢視會談號碼。
169
關閉 telnet 會談



如果您想要結束一個透過 telnet 來連結本地裝
置的會談, 應該先檢查是否有任何使用者 telnet
到您的路由器。
利用 show users 命令就可以得到這樣的資訊,
例如:
這份輸出顯示該 VTY 有 10.2.2.1 的 IP 位址與
之連結, 其實它就是 Corp 路由器。
170
關閉 telnet 會談

而且 Corp 路由器是連結到 194 號線路 - 記住,
您無法選擇要連結哪一條線路!這也就是為什
麼我們要為所有的線路設定相同密碼的原因。
要清除連線, 請使用 clear line # 命令, 例如:

這份輸出確認該連線已經清除。

171
利用 SDM 來 telnet 到您的路由器



在使用 SDM 時, 關於 Telnet 服務就沒有太多可
說的了。
您不會看到任何的功能選單或選項, 只會看到一
個彈出式的 DOS 視窗 telnet 到您已經透過
HTTP 或 HTTPS 連線的路由器。
點選 Tools 功能選單, 然後選擇 Telnet。
172
利用 SDM 來 telnet 到您的路由器

一旦選擇 Telnet 之後, 就會彈出 DOS 視窗, 而
您會處於使用者模式 (當然要在輸入 telnet 密碼
之後)。

SDM 中的 Telnet 如果有其他的選項當然很好,
不過目前還沒有就是了。
173
5 - 8 解析主機名稱


連接遠端裝置時若要以主機名稱取代 IP 位址,
則進行連線的裝置必須有能力將主機名稱轉換
為 IP 位址。
將主機名稱解析為 IP 位址的方法有 2 種:在每
部路由器上建構主機表 (host table), 或建置網
域名稱系統 (Domain Name System, DNS) 伺
服器 - 類似動態的主機表。
174
建構主機表

主機表只能為它所在的路由器提供名稱解析的
服務, 在路由器上建構主機表的命令是:

telnet 的預設 TCP 埠號是 23, 但您可以利用不
同的 TCP 埠號來建立 telnet 會談。
您最多可指定 8 個 IP 位址給一個主機名稱。
以下的範例在 Corp 路由器上建構了含有 2 筆
記錄的主機表, 為 R1 路由器與 ap 裝置解析名
稱。


175
建構主機表

請注意在上面的路由器設定中, 我們可以一個接
著一個地增加 IP 位址來參照同一部主機, 最多
可有 8 個 IP 位址。
176
建構主機表

而只要使用 show hosts 命令就可檢視這個新建
構的主機表:
177
建構主機表




這份輸出可以看到 2 筆記錄:主機名稱與它們
對應的 IP 位址, Flags 欄位中的 perm 表示該筆
記錄是手動設定的。
如果該欄為 temp, 表示它是由 DNS 解析出來
的記錄。
要確認主機表是否能解析名稱, 請試著在路由器
的提示列輸入主機名稱。
記住, 如果您沒有指定命令, 路由器會假定您想
要使用 telnet。
178
建構主機表

在以下的範例中, 我們使用主機名稱來 telnet 遠
端裝置, 然後按 Ctrl + Shift + 6, 接著按 X 鍵, 以
返回 Corp 路由器的主要控制台:
179
建構主機表



我們成功地使用主機表中的記錄來產生與 2 部
裝置的會談, 並且利用這些名稱 telnet 到這 2 部
裝置。
主機表中的名稱是不分大小寫的。
請注意下列的 show sessions 命令輸出, 它現在
同時顯示了主機名稱與 IP 位址, 而非只是 IP 位
址。
180
建構主機表

如果想要移除表中的主機名稱, 只要使用 no ip
host 命令即可, 例如:

利用主機表來解析名稱的問題是, 每部想要解析
名稱的路由器都得各自建構一個主機表。
如果您有不少路由器, 而且想要解析名稱, 則使
用 DNS 應該會是比較好的選擇!

181
使用 DNS 來解析名稱



如果有許多裝置, 而又不想要個別在每部裝置上
建構主機表, 則可以使用 DNS 伺服器來解析主
機名稱。
預設上, 任何時候 Cisco 裝置收到它不瞭解的命
令時, 就會試著利用 DNS 來解析。
讓我們來看看如果在某部 Cisco 路由器的提示
列輸入特殊的命令 todd 時, 會發生什麼事:
182
使用 DNS 來解析名稱



路由器不知道我們所輸入的是什麼名稱, 或什麼
命令, 因此它試著透過 DNS 來解析它。
這真的很惱人, 理由有二:首先, 因為它不知道
我們的名稱。其次, 我們會掛在那兒, 直到名稱
的查詢逾時為止。
您可以克服這個問題, 就是利用整體設定模式的
no ip domain-lookup 命令來避免耗時的 DNS
查詢。
183
使用 DNS 來解析名稱

如果您的網路上有 DNS 伺服器, 需加上一些命
令才能讓 DNS 的名稱解析得以運作:



第 1 個命令是 ip domain-lookup。預設上這是打
開的, 如果您之前已關閉它 (利用 no ip domainlookup 命令), 則只要輸入這個命令即可。
這個命令也可以寫成 ip domain lookup (不含底
線)。
第 2 個命令是 ip name-server。這個命令設定
DNS 伺服器的 IP 位址, 您最多可輸入 6 部伺服
器的 IP 位址。
184
使用 DNS 來解析名稱



最後一個命令是 ip domain-name, 雖然這個命令
是選擇性的, 但真的應該要設定。它會附加網域
名稱到您所輸入的主機名稱。
因為 DNS 使用完全限定的網域名稱 (fully
qualified domain name, FQDN) 系統, 所以必須
有完全的 DNS 名稱, 也就是類似 domain.com
的形式。
以下是使用這 3 個命令的範例:
185
使用 DNS 來解析名稱


設好這些 DNS 組態之後, 就可利用主機名稱來
ping 或 telnet 裝置, 以測試 DNS 伺服器。
例如:
186
使用 DNS 來解析名稱


現在路由器已使用 DNS 伺服器來解析名稱。
利用 DNS 來解析名稱之後, 您可使用 show
hosts 命令來檢視那些快取在主機表中的資訊:
187
使用 DNS 來解析名稱


在以上的輸出中, DNS 解析出來的記錄顯示
temp, 但 ap 裝置仍然是 perm, 這表示它是靜態
的記錄。
請記住主機名稱是完全限定的網域名稱, 如果之
前沒有使用 ip domain-name lammle.com 命令,
就得輸入 ping r1.lammle.com 才行。
188
您應該使用主機表或 DNS 伺服器
嗎?



最後 Karen 利用 CDP 完成了她的網路圖, 醫生
也高興多了。
不過 Karen 在網路管理上卻很不順, 因為她每
次要 telnet 到一部遠端路由器時, 都得從網路圖
中找尋其 IP 位址。
Karen 想要在每部路由器上放主機表, 不過在幾
百部路由器逐一進行這樣的設定實在是非常可
怕。
189
您應該使用主機表或 DNS 伺服器
嗎?



無論如何, 現在大部分的網路都有 DNS 伺服器,
所以增加大約百部的主機名稱到 DNS 伺服器要
簡單多了。
當然比個別增加這些主機名稱到每部路由器上
要容易得多!只要在每部路由器增加 3 個命令
就可解析名稱了!
使用 DNS 伺服器也會讓更改舊資訊的工作容易
得多。
190
您應該使用主機表或 DNS 伺服器
嗎?


記住, 如果您使用靜態的主機表, 即使只是小小
的異動, 還是得到每部路由器手動地修改。
請記住這與網路上的名稱解析無關, 也與網路上
的主機所要完成的事無關, 這只是當您試著在路
由器控制台上解析名稱時使用的。
191
5 - 9 檢查網路連通性與問題檢修




您可以使用 ping 或 traceroute 命令來測試與遠
端裝置的連通性, 而且它們都可以利用許多協定,
而非只是 IP。
但別忘了, show ip route 命令是不錯的檢修命
令, 它可用來檢驗路徑表。而 show interfaces
命令可顯示每片界面的狀態。
這裡不再詳細地討論 show interfaces 命令, 因
為第 4 章已經討論過。
不過這裡要討論 debug 命令與 show process
命令, 您會需要用它們來檢修路由器。
192
使用 ping 命令


到目前為止, 您已經看過許多利用 ping 來測試
IP 連通性, 以及配合使用 DNS 進行名稱解析的
範例。
若要檢視 ping 程式能利用的各種協定, 請輸入
ping ?:
193
使用 ping 命令

ping 的輸出會顯示它的封包找到特定系統並返
回所花的最短、平均、與最長時間。例如:

您可看到它使用 DNS 伺服器來解析名稱, 而且
ping 該裝置所花的時間是 1 ms, 平均 2 ms, 最
多 4 ms。
194
利用 SDM 進行 ping

不像 SDM 中的 Telnet 沒有任何選項, 這裡至少
有一個畫面可以選擇 1 或 2 個選項。
195
利用 SDM 進行 ping

一旦選擇『Tools / Ping』, 就會出現 Ping 畫面。

這裡可以讓我們選擇要從哪個來源界面 ping 出
去, 這是個不錯的選項。然後輸入目的地, 並按
下 Ping。
196
使用 traceroute 命令



traceroute (縮寫成 trace) 命令顯示封包抵達遠
端裝置的過程所採用的路徑。
這個命令利用 TTL 截止與 ICMP 錯誤訊息, 勾
勒出封包穿越互連網路抵達遠端主機的過程所
採用的路線。
trace 命令可在使用者模式或特權模式下使用,
讓您找出通往無法抵達之網路主機的路途中, 那
部路由器應該更仔細地檢查, 以找出網路故障的
原因。
197
使用 traceroute 命令

若要看這個命令可配合那些協定使用, 請輸入
traceroute ?:

trace 命令顯示封包一路傳送到遠端裝置所經過
的中繼站。
198
使用 traceroute 命令

例如:

這個例子顯示封包只經過 1 個中繼站就找到了
目的地。
下面是從 Windows DOS 提示列使用 tracert 的
例子 (請注意 tracert 命令)。

199
使用 traceroute 命令

現在讓我們繼續, 並且討論如何使用 debug 命
令來檢測網路。
200
除錯




Debug 是在 Cisco IOS 特權 exec 模式下可以
使用的檢測命令。
它是用來顯示路由器的各項運作資訊, 以及路由
器產生或收到的相關交通, 和任何的錯誤訊息。
這是很有用、也很具資訊性的工具, 但是您確實
必須瞭解關於它在使用上的一些重要事實。
Debug 被認為是優先權非常高的任務, 它可能
會消耗大量的資源, 而且路由器被迫要處理並交
換除錯中的封包。
201
除錯



所以您不能將 debug 當做監測工具 - 它只能
在很短的時間內使用, 而且僅僅用來做為故障檢
測的工具。
藉由它, 您真的可以找到一些關於正常及故障的
軟硬體元件之重要資訊。
因為除錯的輸出比其他網路交通優先, 而且
debug all 命令產生的輸出比其他的 debug 命令
更多, 所以可能會嚴重影響路由器的效能 - 甚
至讓它變得不穩定。
202
除錯


所以在絕大多數情況下, 最好是使用比較具體的
debug 命令。
從下面的輸出可以看到, 您無法在使用者模式、
而只能在特權模式開啟除錯:
203
除錯

如果您可以自由取用路由器, 而且真的想好好玩
玩除錯, 就可以使用 debug all 命令:
204
除錯

要關閉路由器上的除錯, 只要在除錯命令前加上
no:
205
除錯



但是筆者通常是使用 undebug all 命令, 因為它
的縮寫比較簡單:
請記住, 通常使用特定命令會比使用 debug all
命令要好 - 而且只能使用一小段時間。
下面的例子是使用 debug ip rip 命令來顯示路
由器上傳送和接收到的 RIP 更新:
206
除錯

您想必已經看到 debug 命令真的是很有威力的
一個命令。
207
除錯



因此, 您應該知道在開始使用任何除錯命令之前,
應該先確實檢查過路由器的使用率。
這很重要, 因為在大多數情況下, 您並不會希望
您的除錯動作對這個裝置處理互連網路封包的
能力有負面的影響。
您可以使用 show processes 命令來判斷路由
器的使用率資訊。
208
運用 show processes 命令




如前所述, 您在裝置上使用 debug 命令時, 真的
必須很小心。
如果您路由器的 CPU 使用率一直維持在 50%
或更多時, 可能就不太適合輸入 debug all 命令
- 除非您真的想讓路由器看起來像掛掉一樣。
所以您可以用甚麼其他辦法呢?要判斷路由器
的 CPU 使用率, show processes (或者 show
processes cpu) 是個不錯的工具。
此外, 它還會給您一份作用中行程的清單, 以及
它們對應的行程 ID、優先權、排程器測試 (狀
態)、已使用的 CPU 時間、啟動的次數等等。
209
運用 show processes 命令



很多很棒的資訊!另外, 當您想評估路由器的效
能和 CPU 使用率 - 例如當您發現再不然就要
使用 debug 命令的時候 - 這個命令就特別好
用。
好啦 - 您在下面的輸出中看到什麼?第一行是
最近 5 秒、1 分鐘、和 5 分鐘的 CPU 使用率
輸出。
在最近 5 秒的 CPU 使用率的後面是 2 % / 0 %;
前面的數字等於整體使用率, 後面的數字則限定
是中斷常式的使用率。
210
運用 show processes 命令

基本上, 這份 show processes 命令的輸出顯示
路由器應該能夠快樂地處理除錯命令, 而不會過
載。
211
5 - 10 摘要




本章教您如何設定 Cisco 路由器, 以及如何管理
這些組態設定。
本章涵蓋了路由器的內部元件, 包括 ROM、
RAM、NVRAM、以及快閃記憶體。
此外, 我們也討論了路由器開機時發生哪些動作,
以及載入哪些檔案。
組態暫存器告訴路由器要如何開機, 以及要到哪
兒去找檔案。我們也學習如何修改與確認組態
暫存器的設定, 以進行密碼的復原。
212
摘要




接下來學習了如何備份與復原 Cisco IOS 映像,
以及如何備份與復原 Cisco 路由器的組態設定。
我們展示了如何利用 CLI、IFS、與 SDM 來管
理這些檔案。
然後是如何利用 CDP 與 telnet 來取得遠端裝置
的資訊。
最後, 本章討論了如何解析主機名稱, 以及利用
ping 與 traceroute 命令來測試網路的連通性,
以及如何使用 debug 與 show processes 命令。
213