テーマ:floppyfwの導入
はじめに
我が家では、昔からlinuxサーバをルータとして利用しながら各種ソフトをコンパイル、
設定したりしていました。
止まると色々問題あるサーバではありましたが、組み込んだソフトに問題があったりして
時々起動しなくなったり、再インストールに失敗したりするとまわりからヒンシュクかって
いたのですが、せめて仮復旧ぐらい簡単にならないかと考えていると、丁度floopyfwが
見つかりましたのでこれを利用しようと思います。
floopyfwとは
FD1枚できる Linux を利用したファイアーウォール機能を持ったスタティックルータです。
ファイアーウォールと言っても Linux で ipchains を利用したものです。フロッピー起動
ですがramdiskに圧縮したファイルを展開してあとはずっとramdisk上で動作しますので
ディスクレス運用が可能です。
今回のポイント
本来は家内サーバ、テストサーバとしての機能の兼ねているために、各クライアントの
DNSアドレスがサーバに設定してあったりしてさらにDHCPは使っていないのでなんとか
DNSキャッシュ機能を追加する必要があります。
namedはでっかいのでFDにおさまらないので却下。探しているとちゃんとありました。
でも組み込みにちとてこずりました。よくスクリプト読めばわかるのですけどね。
環境
外部とはCATVで接続しています。内部にはパソコン2〜3台が接続されています。
ネットワークカードを2枚つかってeth0をケーブルモデム、eth1をハブに接続しています。
インストール
http://www.zelow.no/floppyfw/
のページを開きます。左側のdownload選んで
floppyfw-current.img
をダウンロードしてきてください。
各種モジュールは
http://www.zelow.no/floppyfw/download/modules/
追加パッケージは
http://www.zelow.no/floppyfw/download/packages/
からそれぞれダウンロードしてください。
今回追加パッケージは
dnrd
を用いました。スクリプトも忘れずにダウンロードしてください。
追加モジュールは、2.2.20/ipv4から以下のファイル
ip_masq_irc.o
ip_masq_cuseeme.o
ip_masq_ftp.o
ip_masq_quake.o
ip_masq_raudio.o
ip_masq_vdolive.o
ip_masq_portfw.o
ip_masq_autofw.o
あと、LANカード用モジュールとして2.2.20/netから以下のファイル
rtl8139.o
tulip.o
をダウンロードしてきましたが、利用されているLANカードに合わせて
ダウンロードしてきてください。
起動用フロッピーの作成
floppyfw自体はフロッピーのイメージで提供されていますので、
FDイメージ書き込みソフト(Binary版)
http://uranus.it.swin.edu.au/~jn/linux/rawwrite.htm
等を利用して書き込みます。
基本設定
起動用フロッピーはFAT形式ですので普通にWindows上で作業できます。
ただ、改行コードがunix用なのでメモ帳では見れたものではないです。
僕はk2editorを利用していますが、複数の改行コードに対応していれば
問題ないでしょう。
configというファイルを変更して設定します。
我が家の場合、ネットワークアドレスを192.168.1.0とごく普通のプライベートアドレスに
していますので、79行目あたりにあるINSIDE_*を適当に変更します。
INSIDE_IP=192.168.1.2
INSIDE_DEV=eth1
INSIDE_NETMASK=255.255.255.0
INSIDE_NETWORK=192.168.1.0
INSIDE_BROADCAST=192.168.1.255
モジュールのインストール
上記に上げたファイルをmodulesにコピーしてmodules.lstにコピーしたファイル名を
書き込んでください。
追加パッケージのインストール
DNRDの場合、dnrd.bz2とpost-dnrd.initというファイルをpackagesにコピーします。
ただし、post-dnrd.initはpost-dnrd.iniというように拡張子をiniに変更しておいて
ください。
これでインストール作業は終了です。わかれば簡単ですね。
ほかにもDHCPサーバやプロキシサーバ、wwwサーバもあるようです。
パッケージリスト
を参考に組み込んでみるのもいいかと思います。
起動までの流れ
はじめに各種初期化、モジュールの組み込みがだらだらと続きます。
次にfloppyfw.iniが実行されます。以下に大まかな流れを示します。
- 基本圧縮ファイルの解凍
- 基本設定ファイルのコピー
- パッケージの展開
packagesフォルダにある.bz2ファイルを全て展開します。
- pre-scriptの実行
pre-*.iniファイルを全て実行します。
- モジュールの組み込み
modulesフォルダにmodules.bz2があれば解凍します。
それからmodules.lstを元にmoduleを組み込みます。
- ネットワークの初期化
- ファイヤーウォールの設定
- post-scriptの実行
post-*.iniファイルを全て実行します。
- シェルの起動
#がでてカーソルが点滅していたら無事起動しています。
以下のコマンドで動作を確認してください。
ifconfig
これでeth0とeth1のinet addr:の次にアドレスが予定通り
表示されればOKです。うまくつながらないときはLANカードに
さしているケーブルを差し替えるとうまくいくかもしれません。
参考文献(リンク)
1FD linuxでお気楽CATVインターネット
Hiroki'sページ
floppyfw
Copyright(c) 2001. raidon. All rights reserved.
tanatec laboratory