
廣達LB6M Switch 可以使用Brocade. 這樣可以將一般10G switch變成L3 功能完整 ,關於這類非官方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 2.14 更新) – 這包含Bootloader/OS/和所有你需要的文件。
啟動TFTP服務器,並確保檔案brocadeboot.bin brocadeimage.bin放在TFTP Server傳送目錄內。
串口連接到交換機打開一個終端窗口(9600 8N1)。另外,請務必將交換機上的#1管理端口連接到具有訪問tftp服務器的網絡.
準備刷寫
在看串口輸出的時候重啟交換機,它應該提示你點擊任何一個鍵來中斷啟動並將會進入bootloader控制台
使用 讀取ram指令來驗證您的 Quanta 引導加載程序
md 0xfff80000 20
輸出應該完全一樣:
1 2 3 4 5 6 7 8 | 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:
1 | setenv ipaddr 192.168.1.50 setenv serverip 192.168.1.49 |
現在將Brocade 引導碼複製到 RAM 中的一個臨時地址(0x100000),用於保存:
tftpboot 0x100000 brocadeboot.bin
下完tftpboot命令後 應該會顯示如下:
1 2 3 4 5 | tftpboot 0x100000 brocadeboot.bin Enet starting in 1000BT/FD Speed: 1000, full duplex Using TSEC0 device TFTP from server 192.168.1.51; our IP address is 192.168.1.142 Filename 'brocadeboot.bin'. Load address: 0x100000 Loading: Got error 4 #################################### done Bytes transferred = 524288 (80000 hex) |
如果您看到錯誤4,這是正常的。現在您需要驗證臨時地址是否包含 Brocade 引導碼:
1 | md 0x100000 20 |
檢查 0x100000 記憶體位置 輸出應該與下面的完全一樣:
1 2 3 4 5 6 7 8 | 00100000: 4d554348 02057be5 0005a2d6 00004058 MUCH..{.......@X 00100010: 00000000 00012f2c 0004d880 00600028 ....../,.....`.( 00100020: 00030030 0004ffff ffffffff 00000000 ...0............ 00100030: 4e6ab6ae 07030000 74727a30 37333030 Nj......trz07300 00100040: 00000000 00000000 00000000 00000000 ................ 00100050: 00000000 00000000 00000000 00000000 ................ 00100060: 00000000 00000000 00000000 00000000 ................ 00100070: 00000000 00000000 00000000 00000000 ................ |
如果不一樣,則停止。您可以通過鍵入 reset 或打開電源重新安全地重新啟動 再處理一次。
如果跟上面一樣的話請繼續。
清除並更改Bootloader
您現在需要將Brocade 引導碼存儲在 ROM 中。我們需要清除現有的引導加載程序,然後將Brocade 引導碼 從該 RAM 地址複製到 Bootloader 地址。從這裡開始,非常小心,並遵循命令。
下指令關閉Flash與Dram全部唯讀:
1 | protect off all |
清除 DRAM中的 Quanta 引導碼資料 :
1 | erase 0xfff80000 0xffffffff |
從DRAM中 暫存Brocade 引導碼複製到 0xfff8000 位置:
1 | cp.b 0x100000 0xfff80000 0x80000 |
目前已經替換好了 Brocade Bootloader(現在可以加載Brocade OS img)不要立即重新啟動!首先驗證 Brocade Bootloader 是否在Bootloader 位置:
1 | md 0xfff80000 20 |
你的交換機的輸出應該完全跟下面的內容一樣:
1 2 3 4 5 6 7 8 | 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 – 風險部分結束。但是,如果沒有,不要恐慌。它是否與您 0xfff80000 20
在本指南開始時運行時的輸出相匹配?如果是這樣,那意味著 Quanta Bootloader 仍然在那裡。 您可以像往常一樣重新啟動 .
但是,如果兩者都不匹配,就會失敗。如果你這樣做的話 – 確保你在這裡運行確切的命令,並且再次從指
1 | tftpboot 0x100000 brocadeboot.bin |
開始,直到 Bootloader 啟用。如果你遵循命令,它應該工作。
解決之前,不要重新啟動或中斷電源。如果在該位置沒有有效的 Bootloader ,它將不會自行引導。作為最後的手段,您可以嘗試將原韌體刷新回來,只需使用 uboot.bin 代替所有提及 brocadeboot.bin 的命令即可將 recovery 文件夾中的 uboot.bin 替換掉。如果成功,輸出0xfff80000 20 應該與本指南開頭的示例相匹配,然後重新啟動。
啟動Brocade Bootloader
您現在將 Brocade Bootloader 放在 PowerPC Flash 正確位置。現在我們只需要重新啟動!
1 | reset |
它會重新引導到 Brocade Bootloader,這應該會顯示類似的提示:
1 | BOOT MONITOR |
在 Brocade OS中,通過串口或遠程登錄,您需要使用shift +backspace 刪除。你可以通過在 Client->鍵盤 下改變你的 Putty /終端 設置為backspace方法的“Control + H”來解決這個問題,backspace不需要移位。一旦啟動並運行,您還可以配置使用正常 backspace 的SSH。
首先通過 tftp 啟動操作系統映像。您需要先給 Bootloader 一個臨時的唯一 IP,然後使用您的 tftp Server 的 IP 地址來啟動 FW:
1 | ip address 192.168.1.50/24 boot system tftp 192.168.1.49 brocadeimage.bin |
它現在將引導到完整的Brocade FW,但是我們仍然需要實際將他寫入 ROM 中,並通過使用Brocade Bootloader 刷寫來修復閃存許可。
首先給管理界面設定一個IP,這邊是設定192.168.1.50 /24:
1 | enable conf t int management 1 ip addr 192.168.1.50/24 exit write mem exit |
使用Brocade’s flash routine 來寫入bootloader:
1 | copy tftp flash 192.168.1.49 brocadeboot.bin bootrom |
閃爍時應該會看到一些點。當它完成後,點將停止,你需要按 Enter 返回到提示然後重新啟動交換機,以便新的引導加載程序修復 – 在執行此操作之前,您將無法寫入閃存:
1 | reload |
它會重啟到剛剛寫好的Brocade bootloader,因為我們還沒有更新主FW 。就像上面一樣,啟動tftp上的臨時 OS:
1 | ip address 192.168.1.50/24 boot system tftp 192.168.1.49 brocadeimage.bin |
如果您以前的管理 IP 配置沒有保存,則需要重做這些步驟以再次為其提供 IP。現在加載並寫入FW:
1 | enable copy tftp flash 192.168.1.49 brocadeimage.bin primary |
當它像以前一樣閃爍時,你會看到一些點,當它們停止,回到提示。現在已經燒入了 Brocade TurboIron OS。重新啟動:
1 | reload |
第一次正式啟動需要幾分鐘時間,因為它將主映像複製到備份次映像分區。您可以將RS232 和 Telnet 連接到管理 IP。如果您要使用SSH,則需要啟用它 – 請依照附帶的文件說明書或快速指南進行操作。
命令來檢查你的新系統:
1 | show version show flash show chassis show media |
請按照文檔文件夾中包含的指南來配置您的新交換機。
SFP +光學訊號強度
Brocade 沒有限制他牌 SFP+模組,但是如果想要看光學訊號強度就需要Brocade或Foundry 光纖模組。
指令跟狀況如下:
1 | 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 |
感謝