FreeBSD ハンドブック : PPP と SLIP : ユーザ ppp の設定 : ppp 対応カーネルの構築
Previous: スタートの前に
Next: tun デバイスの確認

14.1.2. ppp 対応カーネルの構築

説明でも述べているように, ``ppp'' はカーネルの ``tun'' デバイスを使います. そのため, このデバイスがカーネルに組み込まれているかどうかを 確認しておかなくてはいけません.

これを確認するには, カーネルコンパイルディレクトリ (/sys/i386/conf または /sys/pc98/conf) に移動して, カーネルコンフィグレーションファイルを調べます. 以下の行がどこかに含まれている必要があります.

   pseudo-device tun 1

元々の GENERIC カーネルは標準でこれを含んでいますので, カスタムカーネルをインストールしているのではなかったり, /sys ディレクトリが存在しないのであれば, 何も変更する必要はありません.

この行がカーネルコンフィグレーションファイルに含まれていなかったり, tun デバイスが一つでは足りない場合 (例えば, 同時に 16 本の ダイアルアップ PPP 接続を処理できるサーバを立ち上げるとしたら, ``1'' のかわりに ``16'' を指定する必要があるでしょう), この行を追加して カーネルの再コンパイルとインストールをおこなう必要があります. それからこの新しいカーネルを使ってブートしてください. カーネルコンフィグレーションの詳細については, FreeBSD カーネルのコンフィグレーション を参照してください.

以下のコマンドを実行することで, 現在のカーネルにトンネルデバイスが いくつ組み込まれているかを調べることができます:

   # ifconfig -a
   tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
           inet 200.10.100.1 --> 203.10.100.24 netmask 0xffffffff
   tun1: flags=8050<POINTOPOINT,RUNNING,MULTICAST> mtu 576
   tun2: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
           inet 203.10.100.1 --> 203.10.100.20 netmask 0xffffffff
   tun3: flags=8010<POINTOPOINT,MULTICAST> mtu 1500

この例ではトンネルデバイスが四つ存在し, そのうち二つに設定が おこなわれ, 使用中であることがわかります. 上の例で RUNNING フラグがオンになっているものがありますが, これは そのインターフェースが何かに使用されていることを示しているだけである ということに注意してください. つまり, RUNNING になっていない インターフェースがあったとしても, それはエラーではありません.

トンネルデバイスがカーネルに組み込まれておらず, 何らかの理由で カーネルの再構築ができない場合でも, 方法がないわけではありません. 動的にデバイスをロードすることができるはずです. 詳細については modload(8) や lkm(4) など, 適切なマニュアルを参照してください.

この機会にファイアウォールも設定しておきたいと思っているのであれば, 詳細については ファイアウォールセクションを 参照してください.


FreeBSD ハンドブック : PPP と SLIP : ユーザ ppp の設定 : ppp 対応カーネルの構築
Previous: スタートの前に
Next: tun デバイスの確認