一,升級環境:
事情的原因是這樣的,公司下屬部門申請到一定的經費用於網絡升級,因此該部門前幾天新買了一台思科的Catalyst6509交換機,並且配備了WS-X6548-GE-TX這個思科在去年四月才新推出的10M、100M、1000M自適應的48口RJ-45交換模塊。6509一共有9個插槽,所以可以插上9個模塊,為核心設備升級添加模塊是習以為常的事情了。不過由於思科的軟件推出總是滯後於硬件,所以拿到手的Catalyst6509交換機標准配置的12.2(14)SX1版本的IOS並不能支持該模塊。這就涉及到了升級問題,需要升級6509交換機的IOS。於是我和子部門網絡管理員從CISCO官方網站找來支持WS-X6548-GE-TX模塊的新版本的IOS准備升級。沒有想到,這次簡單的升級工作卻弄得我們兩(電腦沒聲音)個“准高手”麻煩連連,問題接二連三地出現。
二,沒有RJ-45接口
對於本次采用的這個WS-X6548-GE-TX模塊一共有48個RJ-45端口,然而6509交換機又沒有配其他的帶RJ-45接口的模塊。這可怎麼辦呢?畢竟用思科的TFTP Server升級IOS就必須得將交換機和網絡上的一台裝有TFTP Server的PC相連。經過一番尋找,終於發現超級引擎720上面有一個RJ-45模樣的接口,旁邊寫著Link的字樣,結果拿來網線插上一試,發現指示燈都不亮。本來我們兩(電腦沒聲音)個以為有了希望,然而指示燈不亮就說明該接口無法使用,不過因為這個接口是惟一的希望,否則只能用xmodem方式傳輸41MB的IOS,傳輸時間恐怕讓我望而卻步。
小提示:
使用XMODEM傳輸IOS速度上是非常讓人頭疼的,筆者曾經用XMODEM方式傳過一個2950交換機的IOS,總容量也就2MB左右,足足用了兩(電腦沒聲音)個鐘頭。按照這個速度來說41MB最快也得30幾個小時。
既然使用XMODEM方式傳輸IOS不太現實,那麼還要從超級引擎720上面那個RJ-45模樣的接口入手。從網上搜索到相關資料,原來超級引擎720上的port2 有兩(電腦沒聲音)種模式:一種是RJ-45接口,還有一種是SFP(a small form-factor pluggable)接口。而默認的設置是SFP,要使用RJ-45接口就必須更改設置。輸入以下命令進行修改——
Router(config)#interface gigabitethemet 5/2
//進入該接口進行設置
Router(config-if)#media-type rj45
//修改模式為RJ45,默認是SFP
Router(config-if)#no shutdown
//啟用該接口
執行命令後發現橘紅色的指示燈終於變成了綠色,接下來就可以使用傳統的TFTP方法將升級所需的IOS文件傳到到交換機中。本來以為接下來的事情就應該很輕松,誰知道攔路虎並沒有就此罷休。
三,TFTP傳輸協議不支持32兆
接下來給接口配上管理地址,再把原來的IOS備份出來。在超級終端全局模式下輸入命令:
Router#copy sup-rootflash: s72033-pk9sv-mz.122-14.SX1.bin tftp://192.168.1.1
TFTP Server 出現一連串#字號,開始傳輸數據,本來以為一切OK。誰知道眼看著就要傳完的時候,系統提示:“timeout Write error”。
根據系統提示的信息我查詢了網線是否斷了,磁盤空間是否不足,答案都是否定的。再次執行傳輸命令故障依舊。到6509上查看傳輸完畢的IOS大小為32MB,比完整的IOS32.1MB稍微小一點。為什麼多出的0.1MB就無法傳送呢?
開始以為是TFTP的軟件有問題,版本過低造成的。從網上下載了一個第三方的TFTP server一試,結果還是這樣。又找來3Com的TFTP Server,這次效果更差,傳到16MB的時候就斷開了,系統提示還是超時和寫入錯誤。仔細分析,終於發現了問題關鍵所在。兩(電腦沒聲音)次傳輸,一次正好32MB,一次正好16MB,連字節數都不差,肯定不是傳輸線路問題。找來資料一查,原來TFTP(Trivial File Transfer Protocol)普通文件傳輸協議最大就支持傳輸32MB的文件。於是又找來思科文檔,一番查詢,找出了第2種解決方法,用FTP就行了。於是在PC上建好FTP服務,鍵入如下命令:
Router# configure terminal
//進入交換機配置模式
Router(config)# ip ftp username username
//設置FTP的訪問用戶名
Router(config)# ip ftp password password
//設置登錄FTP的密碼
Touter(config)# end
//結束,退出
Router#copy sup-bootflash: s72033-pk9sv-mz.122-14.SX1.bin ftp:
[//[username[:password]@]192.168.1.1]
//執行FTP傳輸命令,傳輸文件為s72033-pk9sv-mz.122-14.SX1.bin,
已經建立好的FTP服務器地址為192.168.1.1。
使用FTP傳輸更新IOS後文件復制非常正常,等待了幾分鐘,系統提示“successful”。看來FTP比TFTP就是強http://.大靈活,限制也少很多。
四,協議錯誤
將IOS成功備份到FTP上後就輪到將新的用於升級的IOS進行上傳了。進入6509配置模式使用如下命令進行操作:
Router# configure terminal
//進入配置模式
Router(config)#ip ftp username username
//設置登錄FTP的用戶名
Router(config)#ip ftp password password
//設置登錄FTP的密碼
Router(config)#end
//退出設置
Router# copy ftp:[[//[username[:password]@192.168.1.1] /
s72033-jk9o3sv-mz.122-17a.SX.bin] sup-bootflash:
//復制s72033-jk9o3sv-mz.122-17a.SX.bin新版IOS到本交換機。
本來以為輕輕松松完成的,結果系統這次提示“Protocol error”。協議錯誤?重試一次,下載沒有問題的,上傳還是提示協議錯誤。經過筆者分析懷疑問題可能出在FTP Server上,我的FTP Server是用Server-U這個第三方軟件做的,會不會是兼容性問題造成的呢?於是換成微軟Windows2000自帶IIS中的FTP組件建立FTP服務器。再次嘗試下載與上傳都沒有任何問題了,不再提示協議錯誤。屏幕顯示Loading…。幾秒鐘後又出現提示信息:“Flash空間不足”。
五,Flash空間不足
出現FLASH空間不足信息後我特別查詢了6509核心設備的硬件配置,默認6509標准配置的Flash為64MB,標配IOS大小為32.1MB,要升級的12.2(17a)SX 版本IOS大小為40.6MB,這樣看來空間不足再所難免。但是這個問題還是相對好解決的,將Flash裡(電腦自動關機)原來的IOS刪除了然後再上傳。於是輸入命令:
Router#delete sup-bootflash:s72033-pk9sv-mz.122-14.SX1.bin
然後再傳。提示信息還是空間不足這個時候交換機的IOS已經被我刪除了,要是不小心掉電或者重起的話,交換機就起不來了。在管理界面中用show命令看,IOS文件已經沒有了,但是空間還是剩余30多兆,就是說flash沒有被清空。這時候想起以前刪除vlan.dat文件後要重啟交換機才能生效,可是現在重啟是萬萬不行的。怎麼辦?上思科網站查找有利用價值的信息,終於找到一條命令squeeze,該命令是將已經刪除的文件徹底清空,就好比清空回收站一樣。運行:
Router#squeeze sup-bootflash:後再用SHOW命令查看,發現Flash已經被徹底清空,可用空間為64MB。這時候再用FTP上傳,幾分鐘以後就會看見屏幕上提示的成功信息。Reload一下,用show flash命令看IOS版本已經變成了12 .2(17a)SX。插上新模塊WS-X6548-GE-TX一試,一切OK,新模塊可以正常運行了。
經驗總結:
本來以為輕松完成的工作卻是一波三折,看來高端產品升級也是非常復雜的,很多原來沒有重視的環節都會出現這樣或那樣的問題。本次故障排除使我也明白了一個道理,技術沒有盡頭,遇到問題到官方網站查詢是最好的辦法。還有就是做事情之前一定要三思,如果刪除FLASH後想當然的執行了RELOAD的話,交換機就無法啟動了,那樣的後果將會非常嚴重。操作前請停手思考30秒往往可以減少很多不必要的損失.
實例交換機升級過程故障排除