廣達LB6M  Switch 可以使用Brocade TurboIron 24x的韌體. 可將一般10G Switch變成功能完整的L3級Switch, 關於這類非官方FW變換功能怎做到的?
1.修改fw韌體校驗位置 可參考 OSSLab 修改Atheros檔頭校驗
2.如本文先在bootloader狀況下 ,下指令將啟動記憶體區塊替換韌體boot引導,再用替換好後的bootloader 載入tftp 臨時OS. 再刷入該韌體
原文出自 http://brokeaid.com/

原來的LB6M  siwtch 網管功能很簡單,經過下面刷寫號

免責聲明和注意事項

對於本文所導致的任何損壞的設備或財產,我們概不負責。本文假設您擁有合法的 Brocade TurboIron 擁有韌體及其使用權。由於硬體差異,兩件事情也會改變:

  • SFP +活動/狀態LED會停止運作。線纜端口和機箱指示燈正常工作。我們猜 Brocade 的 LED 使用不同的I2C 配置,甚至可能是根本上採用不同的方案顯示,其他一切都是正常的。
  • Brocade 只有一個管理端口。原有廣達Switch的#2 OOB端口將失效。您將仍然可以像一樣在管理#1上進行OOB管理。
  • 儘管可以回到Quanta 原來韌體,但還是請小心注意使用。

要先準備的

熟悉tftp等基礎知識跟串口終端操作。如果不是,本指南可能不適合您。開始操作之前,請先閱讀完本文件。

如果你做好準備,做這件事的其風險是低的。可以考慮準備個UPS,如果你在執行 erase 命令後失去了電源,那麼你的設備將變磚。

首先去外面下載:韌體與說明書 (2018 5.14 更新) – 這包含Bootloader/OS/和所有你需要的文件。

啟動TFTP服務器,並確保檔案brocadeboot.bin brocadeimage.bin放在TFTP Server傳送目錄內。

串口連接到交換機打開一個終端窗口(9600 8N1)。另外,請務必將交換機上的#1管理端口連接到具有訪問tftp服務器的網絡.

準備刷寫

在看串口輸出的時候重啟交換機,它應該提示你點擊任何一個鍵來中斷啟動並將會進入bootloader控制台,出現以下提示:

=>

接著使用 讀取RAM指令來驗證您的 Quanta 引導加載程序

md 0xfff80000 20

輸出應該完全一樣:

fff80000: 27051956 552d426f 6f742032 3030392e '..VU-Boot 2009.
fff80010: 30362028 41707220 31392032 30313120 06 (Apr 19 2011 
fff80020: 2d203135 3a35373a 30362900 60000000 - 15:57:06).`... 
fff80030: 3c20d000 60213f80 38000000 9401fffc < ..`!?.8....... 
fff80040: 9401fffc 9421fff8 3c00ffff 6000fffc .....!..<...`... 
fff80050: 9421fff8 9001000c 48000005 7dc802a6 .!......H...}... 
fff80060: 800e171c 7dc07214 480020dd 3c600002 ....}.r.H. .<`.. 
fff80070: 60631200 7c600124 4c00012c 48002065 `c..|`.$L..,H. e

如果交換機上的輸出不匹配,請停下並不要執行後面的操作。

假設您的 md 輸出符合我們的要求。現在可以將 Brocade 引導碼加載到 RAM 中的臨時位置。

設定Switch uboot的 IP,以及準備外部 tftp Server 的 IP:

setenv ipaddr 192.168.1.50
setenv serverip 192.168.1.49

現在將Brocade 引導碼複製到 RAM 中的一個臨時地址(0x300000),用於保存:

tftpboot 0x300000 brocadeboot.bin

下完tftpboot命令後 應該會顯示如下:

=> tftpboot 0x300000 brocadeboot.bin
Enet starting in 1000BT/FD
Speed: 1000, full duplex
Using TSEC0 device
TFTP from server 192.168.1.49; our IP address is 192.168.1.50
Filename 'brocadeboot.bin'.
Load address: 0x300000
Loading: ####################################
done
Bytes transferred = 524288 (80000 hex)

果您看到Error 4訊息,這是正常的。現在您需要驗證臨時地址是否包含 Brocade 引導碼:

md 0x300000 20

檢查 0x300000 記憶體位置 輸出應該與下面的完全一樣:

=> md 0x300000 20
00300000: 4d554348 02057be5 0005a2d6 00004058 MUCH..{.......@X
00300010: 00000000 00012f2c 0004d880 00600028 ....../,.....`.(
00300020: 00030030 0004ffff ffffffff 00000000 ...0............
00300030: 4e6ab6ae 07030000 74727a30 37333030 Nj......trz07300
00300040: 00000000 00000000 00000000 00000000 ................
00300050: 00000000 00000000 00000000 00000000 ................
00300060: 00000000 00000000 00000000 00000000 ................
00300070: 00000000 00000000 00000000 00000000 ................

如果不一樣,則停止您可以通過鍵入 reset 或打開電源重新安全地重新啟動 再處理一次。
如果跟上面一樣的話請繼續。

清除並更改Bootloader

您現在需要將Brocade 引導碼存儲在 ROM  中。我們需要清除現有的引導加載程序,然後將Brocade 引導碼 從該 RAM 地址複製到 Bootloader 地址。從這裡開始,非常小心,並遵循命令。

下指令關閉Flash與DRAM全部唯讀:

protect off all

清除 DRAM中的 Quanta 引導碼資料 :

erase 0xfff80000 0xffffffff

從DRAM中 暫存Brocade 引導碼複製到 0xfff8000 位置:

cp.b 0x300000 0xfff80000 0x80000

目前已經替換好了 Brocade Bootloader(現在可以加載Brocade OS img)不要立即重新啟動!首先驗證 Brocade Bootloader 是否在Bootloader 位置:

md 0xfff80000 20

你Switch的輸出應該完全跟下面的內容一樣:

fff80000: 4d554348 02057be5 0005a2d6 00004058 MUCH..{.......@X
fff80010: 00000000 00012f2c 0004d880 00600028 ....../,.....`.(
fff80020: 00030030 0004ffff ffffffff 00000000 ...0............
fff80030: 4e6ab6ae 07030000 74727a30 37333030 Nj......trz07300 
fff80040: 00000000 00000000 00000000 00000000 ................ 
fff80050: 00000000 00000000 00000000 00000000 ................ 
fff80060: 00000000 00000000 00000000 00000000 ................ 
fff80070: 00000000 00000000 00000000 00000000 ................

如果一樣,繼續下面的引導 Brocade – 風險部分結束。但是,如果沒有,不要恐慌。它是否與您在本指南開始時運行 md 0xfff80000 20 時的輸出相匹配?如果是這樣,那意味著 Quanta Bootloader 仍然在那裡。 您可以像往常一樣重新啟動 .

但是,如果兩者都不匹配,就會失敗。如果你這樣做的話 – 確保你在這裡運行確切的命令,並且再次下指令 tftpboot 0x300000 brocadeboot.bin 直到 Bootloader 啟用。如果你遵循命令,它應該工作。

解決之前,不要重新啟動或中斷電源。如果在該位置沒有有效的 Bootloader ,它將不會自行引導。作為最後的手段,您可以嘗試將原韌體刷新回來,只需使用 uboot.bin 代替所有提及 brocadeboot.bin 的命令即可將 recovery 文件夾中的 uboot.bin 替換掉。如果成功,輸出0xfff80000 20 應該與本指南開頭的示例相匹配,然後重新啟動。

啟動Brocade Bootloader

您現在將 Brocade Bootloader 放在 PowerPC Flash 正確位置。現在我們只需要重新啟動!

reset

會重新引導到 Brocade Bootloader,這應該會顯示類似的提示:

Monitor>

在 Brocade 軟件中,通過串口或 telnet,您需要使用 shift+backspace 來退格。您可以通過在終端>鍵盤下將您的膩子/終端設置更改為“Control+H”退格方法來解決此問題,並且退格不需要移位。

首先,我們需要為引導加載程序提供一個臨時 IP,然後使用 Brocade 的閃存例程重新刷新引導加載程序。這修復了引導扇區閃存權限:

ip address 192.168.1.50/24
copy tftp flash 192.168.1.49 brocadeboot.bin boot

幾秒鐘後,它應該完成閃爍過程。現在引導扇區與庫存相匹配,我們可以刷新主操作系統:

copy tftp flash 192.168.1.49 brocadeimage.bin primary

您的交換機現在已完全刷入 Brocade。要首次啟動到操作系統,請運行以下命令:

boot system flash primary

第一次正式啟動將需要幾分鐘,因為它將主映像複製到備份次映像分區。自從我們使用 Brocade 的例程重新刷新了引導加載程序以來,它仍然沒有重新運行,因此最好在完成引導後通過重新加載交換機來實現這一點:

enable
reload

交換機將完全重啟,重新初始化 brocade 引導加載程序,您就可以開始使用了。要放棄串行電纜和 telnet/SSH 到交換機,請按照本網站上的L3 快速指南為其提供 IP。

檢查新系統的一些命令:

show version
show flash
show chassis
show media

請查看並按照文檔文件夾中包含的指南來配置您的新交換機。

 

SFP +光學訊號強度

Brocade 不限制製造商使用光學器件,只要協議正確,他們就會接受任何東西。但是,除非看到 Brocade 或 Foundry 光學器件,否則光學監控信息將被禁用。

所以如果你想看到這樣的信息:

telnet@Route2(config)# sh optic 5

Port Temperature  Tx Power    Rx Power     Tx Bias Current
+—-+———–+————–+————–+—————+
    5    32.7460 C    -002.6688  dBm -002.8091 dBm 5.472 mA
            Normal          Normal         Normal Normal

您需要在 ebay 上購買一些官方的 Brocade 或 Foundry 光學器件,或者從 FiberStore 購買一些閃存光學器件。

 

 
 
 
Thx Chang

Author Thx Chang

More posts by Thx Chang

Join the discussion One Comment

Leave a Reply