2005-09-23 (金)
- 天気:曇り
*Linux on BBR-4MG NAT動いてます
NAT動きました.今はLinux経由でインターネットに繋いでいます.ルータを再起動したりすると,もとのファームウェアに戻りますが….
BusyBoxを最新の1.01にする.完全に同じオプションで無いので確かではないですが,最新版の方がサイズが小さいですね.まだ実際には転送してませんがtftpも動きそうです.udhcpもbusyboxに組み込まれたものを使うことにする.さらにカーネルモジュールを別に入れておく余裕はない気がするので,insmodとかも消す.
これで,40KB以上サイズが小さくなりました.圧縮した状態だと25KBくらいですが….あと80KB小さくなればBBR-4MG用ファームウェアが作れるのだけど(笑).やっぱり一度,シリアル経由でイメージを転送して,Linuxからフラッシュメモリの使ってない領域にデータを書いて次回からそっちを使って起動するようにするのが正攻法かな.そうすれば,webサーバくらいは入れられるかもしれない.
dnrdってresolv.confを参照してくれないんだ.IPを設定しなければいけないということは,DHCPのスクリプトに書いておくのが良いかな.
そろそろ,NATを動かしてみようかと思ってパケットのフォワードはどうやるんだろうと思って調べると,/proc/sys/net/ipv4/ip_forwardにってCONFIG_SYSCTLなんかカーネルが大きくなるので入れてません.ネットワークの設定変えるためだけに入れなければいけないの?何処を見ても,sysctlするか,/proc/sys/net/ipv4/ip_forwardに設定を書き込めと書いてある.
とりあえず,SYSCTLを有効にしてカーネルをコンパイル.ちゃんとパケットを転送してるようです.試しに,WANポートをインターネットに繋いで,DHCPでIPを貰って,NATを設定.ついでに,dnrdを起動.普通にインターネットに繋がります….でもカーネルサイズが25KB増加.あうぅ.圧縮してもカーネルが512KBを超えている…これじゃBBR-4MGのブートローダから起動できない.
ってか,デフォルトでIP forwardingを有効にする設定は無いんですか?それかCONFIG_SYSCTが無くてもsysctl(3)が使えたりしないのかな….よく分からないので,net/ipv4/devinit.cを書き換え.これでカーネルサイズを維持できる.
それにしても,何でBBR-4MGはフラッシュメモリ領域のど真ん中に起動パラメータがあるかな….使うときはそこを避けて使わないといけない….製造番号だとかデフォルトMACアドレスとかの情報が書かれてるだけだから,このデータは壊しても動いてくれると思うのですが….アクセスしやすいようにMTDのパーティションで領域を分けておく.
Edimaxからダウンロードしたソースを使っているのだけど,ずいぶんとメモリを贅沢に使う仕様ですね….まぁ,こっちの製品はBBR-4MGの倍のメモリを積んでるのですが….
フラッシュにインストールできそうだし,そろそろ手順を公開して投げだすかも.いい加減,疲れたし.
*キーボードのM
昨日からVAIOのMキーが調子悪い.キーの上の端を押してキーが斜めに押されると反応しない.キーの真ん中を叩けば反応してくれるから良いのだけど,急いで打つときは,決まって上の方を叩いているので,コンパイルエラー…と思ったらmがいくつも抜けてたり.ちゃんと画面を見ながら書いてない証拠ですね.一応視線はディスプレイの方を向いているはずなのですが…文字を打っているときは何も見ていないのでしょうか.キートップを外して掃除したら直るかな.
*NTFS
名前付きパイプあたりを拡張してユーザアプリケーションがファイルシステムを持ててディレクトリにマウントできれば面白いのだけどなぁ.NTFSにはそれに近い機能があったような気もするし,OLEを使えば近いことができそうだけど.
NTFSの機能を積極的に使えば,ファイルの扱いが一新すると思うのだけど,まったくそういったソフトが出てくる気配が無い.そもそも,MicrosoftがNTFSの妙な機能を使ってないからなぁ.まぁ,そんなもの使われたら他のファイルシステムと互換性が無くなって気楽にWindows以外にファイルを持ち出せなくなりますが….