ルータの性能としてはCPUは1GHZの2コアとのことで早いほうになり、高速無線に対応できるはずの機種、USB端子つきになります。
諸注意
WXR-1900DHPはbrodcomチップになっていて、u-bootからCFEに変わっています
したがって昔のコマンド、経験は使えないので注意です
オリジナルファイルのバックアップについて
・古い公式ファームにアップデート(下記コマンドが使えない様に対策されていないバージョン、2015年くらいの2.34とか。ただし古すぎる一番初期のやつはだめですといわれます)
・その後下記でログイン
ユーザー名:bufpy
パスワード:otdpopy+ルートのパスワード
・管理→変なurlがでてきますのでここでデバックができる。debugのところから設定で、telnetを有効化する
・teratermというフリーソフトで192.168.1.1にtelnetモードでログインして
cat /proc/mtd
で状態を確認、
mtd0: 00040000 00010000 "boot"
mtd1: 00010000 00010000 "org_nvram"
mtd2: 01d40000 00020000 "kernel"
mtd3: 01b66a4c 00020000 "rootfs"
mtd4: 03000000 00020000 "linux"
mtd5: 01d40000 00020000 "kernel_recover"
mtd6: 01b66a4c 00020000 "rootfs_recover"
mtd7: 03000000 00020000 "linux_recover"
mtd8: 01f00000 00020000 "user_property_raw"
mtd9: 00100000 00020000 "BBT"
mtd10: 0001f800 0001f800 "user_property"
mtd11: 0001f800 0001f800 "nvram"
・mtdの2や3など一通りバックアップしておくのがよいかと、
dd if=/dev/mtdblock/2 of=/tmp/full_flash_backup2.rom
でバックアップ、最後のファイル名は任意
・バックアップファイルはブラウザから下記でファイルを入手できる
http://192.168.1.1/html/py-db/tmp/full_flash_backup4.rom
・USBメモリに保存する場合は
dd if=/dev/mtdblock/2 of=/mnt/usb0_0/full_flash_backup2.rom
という形のコマンドになります
(mountで現在の状況が出るはずなのでusb0_0に割り当てられていること確認)
DD-WRTからの復旧
・元ファームの kernelとrootfs のバックアップデータを一つに結合する
windowsのコマンドプロンプトを起動して
copy /b full_flash_backup2.rom+full_flash_backup3.rom wxr1900dhp_cfe.trx
これでDD-WRTファームと同様のHDR0から始まるファイルになる(58MBくらい)
・DD-WRTのファームアップのところから更新(設定初期化も)。HDR0から始まる未暗号化ファイルなのでこれが出来ます。
・最初の再起動では何かやってエラーがでたのか時間がかかった後に勝手に再起動が掛かります。この後は正常に行き、192.168.11.1に行くと純正画面が見られるようになるかと思います(本体スイッチをルータモードに)
諸注意
・DD-WRTやOPEN-WRTの状態で
tftpをwindowsで起動した状態でPCを192.168.11.2にし、ファイル名と書き込み先flash0.trxを指定したコマンドをシリアルケーブル経由で入力しようとすると
flash -noheader 192.168.11.2:wxr1900dhp_cfe.trx flash0.trx
flash -noheader 192.168.11.2:wxr1900dhp_cfe.trx nflash1.trx_recovery
を入力しても32M程度転送した段階で転送が中断して更新し始め失敗します。tftpには32MBの壁があるようでこれに引っかかるようです。素直にdd-wrt webから入れてよかったようです
・暗号化されている純正webにあるファーム(bgn~startが見えるファイル)で更新しようとしてもそのままではこの技は使えません
おまけ:OPEN-WRTからdd-WRTに書き換え(というか本体が起動しなくなったときの復旧方法)は
tftpをPCで起動して、シリアルケーブルをつなぎ(設定は前回の記事参照)
電源投入直後にCTRL+C連打でコマンド入力画面にして、下記コマンド
flash -noheader 192.168.11.2:buffalo-wxr-1900dhp-webflash20150223.bin flash0.trx
と
flash -noheader 192.168.11.2:buffalo-wxr-1900dhp-webflash20150223.bin nflash1.trx_recovery
と
flash -noheader 192.168.11.2:buffalo-wxr-1900dhp-webflash20150223.bin nflash1.trx_recovery
を打つことでエラーがたくさん出照るように見えるけど一応起動できるようです。パスワード変更画面が出るのでパスワードの2箇所だけ打つことでログインできます(usernameのデフォルトはroot)
webから2018年のファームを上書きすることで本格的に使えます
DDWRTの掲示板WXR-1900DHP
https://forum.dd-wrt.com/phpBB2/viewtopic.php?p=986152
(2)CFEプロンプトからの復旧(Buffalo)
https://www57.atwiki.jp/ddwrt_openwrt/pages/115.html
wxr1900dhpにOPENWRTを入れてみたときの失敗例
http://okoya.seesaa.net/article/465149182.html