2010年10月24日日曜日

Buffalo WBR2-G54 へ openwrt をインストール


もともとは NVRAM をクリアしたいために一時的にインストールしました。

すでに WBR2-G54 は立ち上がらない状態になっていましたが、電源オンしたときのファームウェアをロードする部分はちゃんと生きていました。そこで TFTP を使ってファームウェアを流し込む手段を採りました。

今回は debian lenny がインストールされたマシンから流し込むこととしました。

network-manager に Wicd をインストールしてあったのですが、この Wicd はイーサーネットの物理的な断線だけでなく、WBR2-G54 のリセット動作でさえも感知してパソコン側の回線を切断する動作をしてしまいます。
そこでハブを中継して、パソコンとの接続が自動的に切断されないように配慮しました。通常の gnome-networkmanager ではなかったことなので、最初は勝手に回線が切断されていて TFTP でのファーム流し込みが出来なくて少し困りました。

debian lenny には tftp のクライアントソフトをインストールしておきます。後は openwrt や DD-WRT のインストール解説のページにもあるようにコマンドを打ち込むだけです。

 # tftp 192.168.11.1
  ここからは tftp のコマンドモードに入っての作業です。
 tftp> binay
 tftp> trace
 tftp> rexmt 1
 tftp> timeout 15
  ファームウェアの流し込みのputコマンド
 tftp> put firmware.bin (or trx)
  この put コマンドを実行したら WBR2-G54 の電源を入れます。
  1秒間隔で put コマンドが実行されていて、WBR2-G54 が受付たら一気にファームウェアが転送されて行きます。
   転送が終了するしたら quit コマンドで終了です。
 tftp> quit

このまま放置するとファームウェアが順次書き込まれて行きます。3分程度かかっていたようです。しかし十分に時間をおいて WBR2-G54 へ ping 192.168.1.1 を打ち込んでみます。

この ping に反応が返ってきたらブラウザで 192.168.1.1 を開くと設定画面が現れてきます。ここで必要な設定を行ったあと、ネットワークへ接続しなおします。私のところでは 192.168.1.1 はルーターがすでに使用しているので、IP が衝突しないようにする必要があります。さらに DHCP サーバーもルーターで稼働しているので DHCP 機能も停止させておきました。

このファームウェアの流し込みの TFTP の注意点はすでに DD-WRT をインストールしてある場合には、なぜか IP アドレスが Buffalo 特有の初期値の 192.168.11.1 ではなく、DD-WRT で設定した IP アドレスが使用されることです。そのため上記の TFTP のコマンドの最初の部分で tftp 192.168.11.1 としていますが、DD-WRT で設定した IP アドレスを設定する必要があります。なお NVRAM をクリアするとIP アドレスは 192.168.11.1 へ戻ります

DD-WRT(V24preSP2) と openwrt(backfire 10.03.1) をそれぞれインストールした状態で、WPA2-PSK(AES) の暗号化の元で ftp 転送による速度の比較を行っていました。

どちらも差がなく私の環境下では 1,100KB/s 程度の速さでした。Linux 2.4 系を採用している DD-WRT の方が優位ではないかと思っていましたが、意外な結果となりました。

しかし同じ DD-WRT をインストールしてある LINKSYS WRT54G は 2,000KB/s までの速さが出るのが不思議でした。WRT54G も WBR2-G54 も同じ BCM4712 を使用していてクロックも 200MHz で条件が同じように思われたからです。もっと別の部分で何か違いの出る場所があるようです。

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。