WHR-G301NをTFTPでDD-WRTから純正ファームウェアに戻す
タイミング合わせが難しい
TFTP を受け付けるタイミングがシビアなので結構しんどい
が DD-WRT Wiki にやりやすい方法が載っていた
方法
WHR-G300N V2 - DD-WRT Wiki
サイト内"Going back to Buffalo Firmware"の項目を手順通り行うと簡単に純正ファームウェアに戻せる
以下簡単に翻訳したものを記載
1. バッファロー純正ファームウェアを公式サイトから入手する
2. Ubuntu に TFTP をインストールする
sudo apt-get update sudo apt-get install tftp
3. ルーターの底面にあるリセットボタンを10秒以上長押しして初期化
4. ルーターからすべてのLANケーブルと電源ケーブルを抜く
5. ルーターの電源を切ったままコンピュータとルーターをLANケーブルで接続する
6. NetworkManager を無効化する
sudo service network-manager stop
7. イーサネットインターフェースのIPアドレスを"192.168.11.2"に設定する
sudo ifconfig インターフェース名 192.168.11.2
インターフェース名の例 : eth0
8. サブネットマスクを"255.255.255.0"に設定する
sudo ifconfig インターフェース名 netmask 255.255.255.0
9. ルーターのIPアドレスとMACアドレスをarpで指定
sudo arp -s 192.168.11.1 ルーターのMACアドレス
MACアドレスの例 : 00:00:00:00:00:00
10. TFTPの準備
tftpを実行
tftp
Verboseモードをオンに設定
tftp> verbose
Verbose mode on.
Binaryモードをオンに設定
tftp> binary mode set to octet
traceをオンに設定
tftp> trace
Packet tracing on.
パケット毎の再送タイムアウト時間を1秒に設定
tftp> rexmt 1
タイムアウトを60秒に設定
tftp> timeout 60
11. TFTPを192.168.11.1に接続(ルーターの電源はまだ入れない)
tftp> connect 192.168.11.1
ここでLANケーブルがルーターのWANポートではなくLANポートにつながっているか確認する(WANポートは青のポート)
12. TFTPでファームウェアを送信する
tftp> put ファイル名
ファイル名の例 : whrg301n-186
13. ルーターに電源ケーブルを接続する
12のコマンドを入力したらなるべく速めに
(とはいえタイムアウトを60秒に設定しているから十分余裕がある)
14. ファームウェアの送信が完了したら5~10分程度待つ
15. ワイヤレスのLEDが点灯したら完了
16. NetworkManagerを有効化する
まとめ
この方法だとタイミング合わせをTFTPがやってくれるので非常に楽で失敗がない(というか今までうまくできなかった)