ファームウェア転送のまとめ

古くなったルーターで遊んでみようという方もいるかと思うので、敷居を下げる為に細かな部分まで説明していますがご了承ください。また、記事中のリンクは知識補完のために設置していますので不要な方は読み進めて下さい。

DSC00489

OpenWrtのコンソールからMTD(Memory Technology Device )の情報を表示すると以下のように表示される。MTDに関してはIBMの「組み込みデバイスでのLinuxシステム開発」を参照して頂くと諸々の知識を得られます。

ルーターの様な組み込みデバイスはBIOSが存在しない代わりにフラッシュメモリ上のブートコード、ここではu-bootが実行され、u-bootが機器を運用するためのカーネルを起動します。

WHR-HP-G300Nや多くのBuffalo製組み込み機器は、u-bootに内包された機能としてシリアル転送やtftpからフラッシュイメージの受け取り、自身のOSを書き換える機能を持っています。
このため誤動作や誤操作でOS部を破損しても、u-bootの機構が残っている限り復帰させることが出来ます。u-boot関連の情報はこちらから

ではOpenWrt化したWHR-HP-G300Nを日本語オフィシャルのファームウェアに戻してみましょう。

オフィシャルファームウェアへの復帰

ドライバーダウンロード WHR-HP-G300Nシリーズ | BUFFALO バッファロー
では上記リンクよりオリジナルファームをダウンロードして解凍しておきましょう。他のルーターをお持ちの方は機種にあったものを用意しましょう。

tftpでfirmwareを転送するホストはWindowsXPを使用します。XP以降の場合はtelnetやtftpの機能が無効化されているためこれを有効にする必要があります。telnetクライアントもあると色々捗ります。
2013-11-18-enable-telnet-tftp-for-windows7

ホストとルーターをLANケーブルでつなぎ、ホストのLANアダプタのIPを192.168.11.xに固定します。ルーターが192.168.11.1のIPで起動しているのでxはそれ以外の数値にして通信できるようにしましょう。
2013-11-18-buffalo_lan_default_config

プロンプトを立ち上げ、ファームウェアを保存してあるディレクトリへ移動しておきます。メモ帳などに転送用のコマンドを書いてコピーして置き、ルーターが起動した後LanのアップLEDが点灯した時にコマンドを流し込みましょう。厳密にはファームの転送は2度目の点灯後ですがarpコマンドの送信とタイムアウトまでのウェイトを考えると1度目の点灯で問題ありません。
2013-11-18_whr-hp-g300n-lan-linkled

流し込むコマンドは以下の通り

xx-xx-xx-xx-xx-xxの部分はルーターのWAN側のMACアドレスです。Buffaloのルーターの場合は初期SSIDがその値になっているので本体のシールに書かれています。
arpコマンドは目的のIPアドレスがどのMACアドレスを挿すものなのかを判別するためのデータキャッシュを設定します。arp -aを実行すると今現在のキャッシュの情報が表示されます。
2013-11-18_whr-hp-g300n-default_ssid_and_wan_macaddress

うまくコマンドが通ると転送が終了した旨を知らせるメッセージが表示されます。その後、各LEDの点灯が安定したらブラウザからルーターのアドレスへアクセスすればファームウェアが復帰したことが確認できると思います。
2013-11-18-whr-hp-g300n-fw196init

なお、通信できるかどうかのタイミングをpingを打ってとらえようという記事を見かけますが、WHR-HP-G300Nに関してはu-bootのシステムがpingを受け付けません。シリアル接続をしてコンソール出力が出来る方もそうそう居るとは思えないのでLEDでタイミングを見計らいましょう。

日本語ファームからDD-WRTへ

web flash、tftpともにリージョンコードが異なるファームウェアは転送時にはじかれます。
2013-11-18-whr-hp-g300n-failed-upgrade-ddwrt19154enc

Router Database | www.dd-wrt.com
ルーターデータベースから検索できるファイルはリュージョンフリーの特別ファームがあるので、これに書き換えた後に最新のバージョンへアップグレードすると良いでしょう。
2013-11-18-whr-hp-g300n-ddwrt-special_file

2013-11-04_whr-g300n-write_the_firmware

日本語ファームからOpenWrtへ

Buffalo WHR-HP-G300N – OpenWrt Wiki

OpenWrtにもリージョンフリーの特別ファームがあり、これを元にOpenWrtへweb flashを使って書き換えができる。無論、tftpのイメージをu-bootのシーケンスから書き込む事も出来ますがweb flashが使える内はこちらの方が手軽でしょう。

書き換え後は、DD-WRTとOpenWrtは共にWANポートからDHCPでアドレスを取得、ローカルアドレスは192.168.1.1となっていて、オフィシャルファームとは違いWAN側からはアクセス出来ないようにフィルタされているので、適宜設定の変更と環境の整備をする事。

OpenWrtはrootパスワード設定後はSSHが有効になりログイン出来るようになるので、Windowsユーザーの方はTeraTermのようなSSHが使えるターミナルエミュレーターを用意しておくと良いでしょう。

2013-11-17-openwrt-weblogin
2013-11-17_openwrt-login

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください