2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

OpenWrt 化した WSR-2533DHP2 を Buffalo 純正ファームウェアに戻す (Restoring Stock Firmware)

Last updated at Posted at 2025-04-18

この記事の目的

この記事は 以前の記事 の続編です。

以前の記事 では OpenWrt の導入手順について説明しましたが、今回の記事では OpenWrt 化した WSR-2533DHP2 を Buffalo 純正ファームウェアに戻す手順を説明します。

同様の手順で WSR-1166DHP も Buffalo 純正ファームウェアに戻せます。🎉

TL;DR

OpenWrt 公式サイトの解説 の通り、以下のコマンドで純正ファームウェアに戻せます。

mtd -r write original_firmware.bin firmware

この記事では、上記コマンドで指定している original_firmware.bin の取得方法について説明します。

💡 純正ファームウェアの書き込みに ubiformat を使う 方法 もありますが、本記事では 公式サイトの手順 と同じく mtd write を使って説明します。

簡単編: Buffalo 公式ファームウェアから取得

簡単編では Buffalo の公式ファームウェアからリカバリデータを作成します。

👉 ここで説明しているのは、2025 年 4 月時点での手順です。
バージョンが更新されている場合は、バージョンに合わせてコマンドを変更してください。

1. WSR-2533DHP2 の公式ファームウェアの取得

Buffalo 公式サイトから最新のファームウェアをダウンロードします。

📌 Windows 版は拡張子が exe の自動解凍ファイルのため、zip ファイルである Mac 版の方が便利です。

👉 2025 年 4 月時点のファイル名は wsr2533dhp2-128.zip です。

2. ダウンロードしたファイルを解凍して、ファームウェアを取得する

ダウンロードしたファイルを解凍して、wsr_2533dhp2_jp_xyy といったファイルを取得します。

👉 2025 年 4 月時点のファイル名は wsr_2533dhp2_jp_128 です。

3. firmware-wintools を取得する

以下の GitHub ページから最新の firmware-wintools_x.y.z.zip を取得します。

👉 2025 年 4 月時点のファイル名は firmware-wintools_0.8.0.zip です。

firmware-wintools_x.y.z.zip を解凍して、firmware-wintools.exe を取得します。

4. firmware-wintools で WSR-2533DHP2 の公式ファームウェアをリカバリデータに変換

取得した Buffalo ファームウェアを firmware-wintools.exe と同じフォルダに移動/コピーして、コマンドラインで以下のコマンドを実行します。

👉 コマンドライン(コマンドプロンプト)を簡単に開く方法 🤩

エクスプローラーのアドレスバーに cmd と入力して Enter キーを押せば、コマンドライン(コマンドプロンプト)が開きます。

How to open Command Prompt

firmware-wintools buffalo-enc -i wsr_2533dhp2_jp_128 -o wsr_2533dhp2_jp_128.dec -d -O 0xc8 -l

: 改行を加えて見やすくするとこんな感じ 🎉
firmware-wintools buffalo-enc ^
  -i wsr_2533dhp2_jp_128 ^
  -o wsr_2533dhp2_jp_128.dec ^
  -d -O 0xc8 -l

以下のような出力が表示されれば成功です。🎉

===== buffalo-enc モード (復号) =====
 マジック       : 'start'
 シード値       : 0xA1
 プロダクト名   : 'WSR-2533DHP2'
 バージョン     : '1.28'
 データ長       : 11608064 bytes
 チェックサム   : 0x2c545978

wsr_2533dhp2_jp_128.dec が生成されます。

wsr_2533dhp2_jp_128.dec is created.

生成されたファイルを WinSCP や以下のようなコマンドで WSR-2533DHP2 に転送します。

scp -O wsr_2533dhp2_jp_128.dec root@192.168.1.1:/tmp

転送したファイルがあるディレクトリで以下のコマンドを実行すれば Buffalo 純正ファームウェアに戻せます。

mtd -r write wsr_2533dhp2_jp_128.dec firmware

⚠️ Flash の空き容量が足りない場合は、 /tmp に転送してください。

確実編: OpenWrt 化前の WSR-2533DHP2 からデータを取得

確実編では、OpenWrt 化前のルーターからデータを取得し、それを利用してリカバリを行います。

1. Kernel イメージ ( xxx-initramfs-kernel.bin ) で起動

  1. Tftpd64 を利用して、TFTP が利用できるようにします
    👉 tftpd64.xxx.zip をダウンロードして使うのが簡単です
  2. WSR-2533DHP2 の Kernel イメージ をダウンロードし、ファイル名を linux.trx-recovery に変更します
  3. linux.trx-recovery を上記手順 1. で作成した解凍フォルダ内に移動します
    Move linux.trx-recovery to Tftpd64 folder
  4. PC のイーサネットの IP 割り当てを 192.168.11.2 に設定します
    Set IPv4 192.168.11.2
  5. Tftpd64 を起動して、Server interfaces192.168.11.2 に設定します
    Set Server Interfaces 192.168.11.2
  6. PC のファイアウォール設定で TFTP の通信が許可されていることを確認します
    Confirm firewall settings
  7. ルーターの AOSS ボタンを押しながら電源コードを挿し込み、Tftpd64 のウィンドウでデータが転送されることを確認します
    Transfer recovery data
  8. Kernel イメージでルーターが起動できたら、PC のイーサネットの IP 割り当てを「自動 (DHCP)」に戻します

2. firmware mtdblock をダウンロード

  1. ブラウザを使用して、OpenWrt ルーターに http://192.168.1.1 でログインします
    👉 パスワードは不要です 🎉
  2. System > Backup / Flash Firmware と移動します
  3. Save mtdblock contentsChoose mtdblockfirmware を選択します
    Select firmware
  4. Save mtdblock をクリックし、リカバリ用の mtdblock をダウンロードします
  5. ダウンロードした OpenWrt.mtd5.firmware.bin をリカバリに備えて保存します

リカバリを行う際は、WinSCP などで WSR-2533DHP2 にデータを転送し、転送したファイルがあるディレクトリで以下のコマンドを実行すれば Buffalo 純正ファームウェアに戻せます。

mtd -r write OpenWrt.mtd5.firmware.bin firmware

⚠️ Flash の空き容量が足りない場合は、 /tmp に転送してください。

参考資料

謝辞

今回の記事は以下の 2 つの記事を参考にしています。

これらの記事に出会わなければ、私は今回の記事を書くことはできませんでした。 🙏

公式サイトの解説

CLI で全ての mtdblock をバックアップしたい場合には以下の記事が参考になります。🎉

補足

WinSCP の接続設定について

WinSCP を使う場合は、 File protocolSCP にしてください。

WinSCP_SCP

以下のコマンドの -O オプションも、上記設定と同様に SCP プロトコルを使うための設定です。

scp -O original_firmware.bin root@192.168.1.1

📌 OpenWrt で SFTP を使うためには追加パッケージのインストールが必要になります
そのため、SCP で接続した方が簡単です。🎉

データの転送先に /tmp を使う理由

/tmp はメインメモリ内の領域です。
そのため、Flash としては空き容量が無くても、/tmp であればリカバリデータが転送できます。

💡 OpenWrt では、起動時に圧縮されたカーネルイメージをメインメモリ (RAM) 上に展開して動作します
/tmp/var はそれらのファイルの一時的な保存場所です。 (👉 そのため再起動すると消去されます。)

💡 NAND メモリは 読むだけでも劣化していく 😱 ため、/tmp を使用する方が Flash への負担が少なくなります。

2
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?