Prev:OSのインストール
Next:ネットワークの設定
pfwldはトンネルデバイスを使用して通信を行うため、トンネルデバイスがカーネルに組み込まれている必要があります。このため場合によってはカーネルを再構築する必要があります。概略は以下の通りですが、カーネルを作り直したことの無い方は、入門書などを見ながら作業する方が良いでしょう。
トンネルデバイスは、キャラクタデバイスへの入出力をネットワークデバイスの出入力と見なし、 あたかもネットワークインターフェイスカードのように処理します。
トンネルデバイスが使えるようにするため、カーネルの設定ファイルがあるディレクトリ/usr/src/sys/i386/confに移動します。ここにある現在の設定ファイルをコピーして、新しい設定ファイル(以下<NEW_KERNEL>、以下の例ではPRUG96)を作ります。
cd /usr/src/sys/i386/confcp GENERIC PRUG96vi PRUG96
ファイルをviなどのエディタで開きますと、終わりの方にあるpseudo-deviceの設定があります。この中に下記のデバイスが含まれるか確認して下さい。
pseudo-device tun 4
上記の例では4つのトンネルデバイスが使用可能ですが、IPSMを使って通信するのみなら1でも大丈夫ですが、IIJ-PPPなどを使用しますと足りなくなります。また以後の設定でtun1を使用していますので、本マニュアルと同一の設定にするためには4として下さい。
pfwldの使用には関係ありませんが、通信しているパケットをモニタするためと、dhcpを使用するため、下記のデバイスが含まれるかも確認して下さい。
pseudo-device bpfilter 4
dhcpd が 1個、tcpdump で1個なので2以上であれば大丈夫です。以上で設定ファイルPRUG96の設定は終了です。
ついでに不要なドライバなどを削除しておくと、カーネルのサイズを小さくできます。またイーサネットカードのIRQなども必要に応じて変更しておくと良いでしょう。
設定ファイルの一部(例)
pseudo-device looppseudo-device etherpseudo-device logpseudo-device sl 1pseudo-device bpfilter 4#pseudo-device ppp 1pseudo-device tun 4pseudo-device pty 16pseudo-device gzippseudo-device vn
次にカーネルをコンパイルしますが、作成の手順は次のようになります。
config PRUG96
(PRUG96に新しい設定ファイルを指定して下さい)
cd ../../compile/PRUG96
(ディレクトリPRUG96はconfigを実行した時に作られます)
make dependmake
(使用するPCの性能により時間が必要な場合があります)
make install
(もし正常に動きませんと困るので、古いカーネルは消さないで下さい)
以上で新しいカーネルが作られたので、リブートして新しいカーネルが動くことを確認して下さい。途中でエラーなどが発生した場合には、入門書や
新たに作ったデバイスが使えるよう、下記のようにディレクトリ/devに移動し、MAKEDEVを実行して下さい。
cd /devsh MAKEDEV tun1sh MAKEDEV tun2sh MAKEDEV tun3sh MAKEDEV bpf1sh MAKEDEV bpf2sh MAKEDEV bpf3
たぶん作成済みですが、もし必要なら下記も実行して下さい。
sh MAKEDEV tun0sh MAKEDEV bpf0
正しく作成されていれば、lsコマンドで見ることができます。
ls -l /dev/tun*ls -l /dev/bpf*
イーサネットカードのIRQなどがコンパイルした値と異なる時には、boot:と出たところで-cと入力しますと設定用のユーティリティが動きます。表示される指示に従ってパラメータを変更して下さい。
Next:ネットワークの設定