Buffalo WSR-1166DHP OpenWrt インストール
注意
この手順でやると純正ファームウェアに戻れない。
シリアルコンソールなし、純正ファームウェアのデバッグモードなしの環境ではこの方法でOpenWrt化可能。
OpenWrt 18.06.2 時代の手順。
対象のハードウェアはBuffalo WSR-1166DHP。Buffaloの無線LANルーターはちょっとでも型番が違うと別物なので、WZR-1166DHP、WSR-1166DHP2はこの手順、ファイルでは適用できないと思われる。
Buffalo WSR-1166DHP OpenWrt インストール
- 各種ファイルのダウンロード
- factoryファームウェアで純正ファームウェアを上書き更新
- initramfsファイルでTFTPブート
- sysupgradeファイルでファームウェア更新
今回はWindowsパソコンを使う。Windows10 64bit版。scpコマンドとsshコマンドが入っていたので、これを使う。
1. 各種ファイルのダウンロード
1.1 factoryファームウェア 純正ファームウェアから更新できるのはこれだけ
- LEDE (a.k.a. OpenWrt)
http://naobsd.org/lede-openwrt/ lede-ramips-mt7621-wsr-1166dhp-initramfs-factory.bin
1.2 OpenWrtのinitramfsファイル sysupgradeコマンドでちゃんと更新できるのはこれだけ
- OpenWrt (master) for BUFFALO WSR-1166DHP
https://taiha.net/jenkins/job/OpenWrt-master-BUFFALO-WSR-1166DHP/ openwrt-ramips-mt7621-wsr-1166-initramfs-kernel.bin
1.3 sysupgradeファイル 下記3種のどれでもOK
- OpenWrt (master) for BUFFALO WSR-1166DHP
https://taiha.net/jenkins/job/OpenWrt-master-BUFFALO-WSR-1166DHP/ openwrt-ramips-mt7621-wsr-1166-squashfs-sysupgrade.bin
- OpenWrt Buffalo WSR-1166DHP
https://openwrt.org/toh/buffalo/wsr-1166dhp openwrt-18.06.2-ramips-mt7621-wsr-1166-squashfs-sysupgrade.bin
- AirStation™ AC1200 Gigabit Dual Band Open Source DD-WRT NXT Wireless Router
https://www.buffalotech.com/products/airstation-ac1200-gigabit-dual-band-open-source-dd-wrt-nxt-wireless-router wsr1166dd-r1.5.5.bin
1.4 Windows TFTPサーバー tftpd64 portable edition
- The industry standard TFTP server
http://www.tftpd64.com tftpd64 portable edition
2. factoryファームウェアで純正ファームウェアを上書き更新
TFTPブート可能にするために、いったんfactoryファームウェアを書き込む。
2.1 WSR-1166DHPのHUBへWindowsパソコンを接続する。
2.2 WindowsパソコンのイーサネットのIPv4設定をDHCPサーバーから取得するように設定する。
2.3 WindowsパソコンからWSR-1166DHPの管理Web画面を開く admin/password(初期値)
2.4 純正ファームウェアからfactoryファームウェアをアップロード
ファームウェア更新画面からアップロードする。 これでもう純正ファームウェアには戻れない。
3. initramfsファイルでTFTPブート
sysupgradeコマンドが動作する環境をTFTPブートで作る。
3.1 手順1.4 tftpd64 portable editionのZIPファイルを展開する。フォルダ名はtftpd64
3.2 手順1.2のOpenWrt initramfsファイルを手順3.1のtftpd64フォルダへコピーする。ファイル名はlinux.trx-recovery へ変更すること。
3.3 WindowsパソコンのイーサネットIPv4を設定する。
固定値 IPアドレス 192.168.11.2 ネットマスク 255.255.255.0 デフォルトゲートウェイ 192.168.11.1
3.4 Windowsパソコンでtftpd64.exe を起動する。
3.6 WSR-1166DHPのHUBとWindowsパソコンを接続する
3.7 WSR-1166DHPのAOSSボタンを押しながら電源を入れる。
Windowsパソコン側のネットワークが接続状態になったらAOSSボタンを離す。電源を入れてからここまで5秒くらい。TFTPサーバーからlinux.trx-recoveryがWSR-1166DHPへ転送される。 POWER LEDが点滅から常時点灯になればTFTPブート完了
ちなみにTFTPブートしない場合はfactoryファームウェアが起動して、SSH接続するとシェルも使える。 sysupgradeコマンドでsysupgradeファームウェアを書き込んでもfactoryファームウェアが上がってくるので、うまいこと書き込めていない模様。
4. sysupgradeファイルでファームウェア更新
TFTPブートしたinitramfsからsysupgradeコマンドでファームウェアを更新する。
4.1 WindowsパソコンのイーサネットIPv4を設定する。
DHCP自動取得
4.2 手順1.3のファームウェアをSCPで転送する。 fingerprintが毎回変わるのでknown_hostsを削除しないといけないかも。
(例)Windowsパソコンのコマンドプロンプト del .ssh\known_hosts scp openwrt-18.06.2-ramips-mt7621-wsr-1166-squashfs-sysupgrade.bin root:192.168.1.1:/tmp/
4.3 SSHで192.168.1.1へ接続する。 fingerprintが毎回変わるのでknown_hostsを削除しないといけないかも。
(例)Windowsパソコンのコマンドプロンプト del .ssh\known_hosts ssh root@192.168.1.1 (rootユーザーのパスワードは設定されていない)
4.4 ファームウェアを更新
(例)ssh接続後のWSR-1166DHPのシェルで実行 sysupgrade -n -v /tmp/openwrt-18.06.2-ramips-mt7621-wsr-1166-squashfs-sysupgrade.bin
POWER LEDが点滅から常時点灯になれば更新完了。
4.5 SSHでログイン
(例)Windowsパソコンのコマンドプロンプト del .ssh\known_hosts ssh root@192.168.1.1 BusyBox v1.28.4 () built-in shell (ash) _______ ________ __ | |.-----.-----.-----.| | | |.----.| |_ | - || _ | -__| || | | || _|| _| |_______|| __|_____|__|__||________||__| |____| |__| W I R E L E S S F R E E D O M ----------------------------------------------------- OpenWrt 18.06.2, r7676-cddd7b4c77 ----------------------------------------------------- root@OpenWrt:~#
参考文献
- 1.バッファローのWZR-1750DHPをDD-WRT化する。
http://vii.cocolog-nifty.com/blog/2014/12/wzr-1750dhpdd-w.html
- 2.ファームウェア・設定ファイルなどのバックアップ・書き込み
- 3.WSR-1166DHPのファームを入れ替える
- 4.dd-wrt