【路由器】小米 WR30U 解鎖并刷機
時間:2023-08-25 15:40:24
本文主要記錄個人對小米 WR30U 路由器的解鎖和刷機過程,整體步驟與 一般安裝流程 類似,但是由于 WR30U 的解鎖 ssh和刷機的過程中有一些細節需要注意,因此記錄一下
需要一臺同時具有 WiFi 和有線網絡的電腦,以及一根網線
然后需要配置 python環境,并且安裝 pycryptodome依賴
【資料圖】
conda create -n wr30uconda activate wr30uconda install pycryptodome然后是解鎖腳本,可以直接從 PatriciaLee3 的倉庫中下載
解鎖過程PatriciaLee3 的倉庫中已經給出了詳細的解鎖過程,這里只是簡單記錄一下
電腦連接原廠固件的路由器,進入 192.168.31.1 的管理后臺,在常用設置-上網設置里分別設置:
上網設置 DHCP,自動配置 DNS啟動與智能網關無線配置同步(會重啟)固定 WAN 口為 1(會重啟)電腦連接有正常網絡的 WiFi,然后將網線連接到路由器的 WAN 口
打開 控制面板 - 網絡和 Internet - 網絡和共享中心 - 更改適配器設置 - 選擇 WLAN - 右鍵屬性 - 共享,勾選第一個并確認,這個時候 WR30U 會通過有線連接共享電腦的網絡,并且網絡指示燈會變成藍色
打開 控制面板 - 系統和安全 - Windows Defender 防火墻 - 啟動或關閉 Windows Defender 防火墻,關閉 Windows Defender 防火墻
運行解鎖腳本,并按照腳本提示操作
conda activate wr30upython server_emulator.py解鎖完成后,路由器的賬號密碼為 root和 admin,之后記得重新開啟防火墻,并且關閉共享網絡
這里首先推薦刷入 hanwckf 的 mt798x uboot,這個 uboot 有很多功能,其中以下兩點非常實用:
【使用方便】自帶 MTK 原廠開發的簡易 WebUI 恢復界面,可以通過 WebUI 直接刷入固件或者更新 uboot【兼容性好】支持多種 Flash 分區布局切換功能(僅支持 spi-nand),可以在 WebUI 中切換不同的分區布局,完美兼容小米原廠固件刷入流程電腦接入正常網絡,然后去 hanwckf 的倉庫 release 頁面下載對應的 uboot 文件:mt7981_wr30u-fip-fixed-parts-multi-layout.bin
電腦接入路由器網絡,通過 scp將 uboot 傳到路由器上
scp mt7981_wr30u-fip-fixed-parts-multi-layout.bin root@192.168.31.1:/tmp通過 ssh登錄路由器,查看布局
# on PCssh root@192.168.31.1# on Router# 查看當前分區布局cat /proc/mtd默認布局如下:
dev: size erasesize namemtd0: 08000000 00020000 "spi0.0"mtd1: 00100000 00020000 "BL2"mtd2: 00040000 00020000 "Nvram"mtd3: 00040000 00020000 "Bdata"mtd4: 00200000 00020000 "Factory"mtd5: 00200000 00020000 "FIP"mtd6: 00040000 00020000 "crash"mtd7: 00040000 00020000 "crash_log"mtd8: 02200000 00020000 "ubi"mtd9: 02200000 00020000 "ubi1"mtd10: 02000000 00020000 "overlay"mtd11: 00c00000 00020000 "data"mtd12: 00040000 00020000 "KF"如果需要備份,可以通過 nanddump命令備份,之后通過 scp將備份的文件傳到電腦上
# on Routernanddump -f /tmp/BL2.bin /dev/mtd1nanddump -f /tmp/Nvram.bin /dev/mtd2nanddump -f /tmp/Bdata.bin /dev/mtd3nanddump -f /tmp/Factory.bin /dev/mtd4nanddump -f /tmp/FIP.bin /dev/mtd5nanddump -f /tmp/ubi.bin /dev/mtd8nanddump -f /tmp/KF.bin /dev/mtd12# on PCscp root@192.168.31.1:/tmp/*.bin .然后將 uboot 刷入 FIP 分區,之后關機
# on Routermtd write /tmp/mt7981_wr30u-fip-fixed-parts-multi-layout.bin FIPpoweroff刷入 ImmortalWrt簡介ImmortalWrt 是 OpenWrt 的一個分支,相比于 OpenWrt 有更多的軟件包以及設備支持,并且對中國大陸用戶有特殊優化
刷入流程電腦連接正常網絡,去官網下載 Sysupgrade 固件
這里選擇了 custom U-Boot layout 的固件,也就是 112M UBI layout 的固件,這樣可以有更多的空間用于安裝軟件包,固件名格式為 immortalwrt-xxxxxx-mediatek-filogic-xiaomi_mi-router-wr30u-112m-nmbm-squashfs-sysupgrade.bin
針按住 reset 不放,再接上電源,等待 10s 左右松開,路由器的系統燈變藍后就是成功進入 uboot 了
因 uboot 不支持 DHCP 功能,需要把電腦的 IP 地址設置成固定 IP:
電腦通過網線連接路由器,然后在網絡設置里將以太網設置為靜態,IP地址:192.168.31.100,子網掩碼:255.255.255.0,網關:192.168.31.1,首選 DNS:192.168.31.1,最后保存
直接訪問 WebUI 進行刷固件,將 layout 選為 immortalwrt-112m,然后上傳前面下載的固件,點擊刷機即可
刷回原廠固件的過程與刷入 ImmortalWrt 類似,只是需要下載原廠固件,然后在 WebUI 中將 layout 配置為 default,之后上傳原廠固件刷機即可
本文作者:ywang_wnlo本文鏈接:https://ywang-wnlo.github.io/posts/e6410576.html版權聲明:本博客所有文章除特別聲明外,均采用 BY-NC-SA 許可協議。轉載請注明出處!


