「その5 FreeBSDネットワークテスト」
「その7 FreeBSD詳細設定その2」
「表紙へ戻る」
「FreeBSDページの表紙へ戻る」
「会議室」
「日記」
ここでは、ppp接続インターフェース「iij-ppp」へのパッチ、カーネルの再コンパイルを行なうまでの手順を説明します。たとえプログラミングの経験がなくても、再コンパイルは難しくないはずです。
これから行なう「パッチ作業」や「カーネルの再コンパイル」など、システムの根幹に関わる作業ができる資格を持ったユーザーを「スーパーユーザー」と呼びます。一般的には"root"と、"wheel"というメンバーグループに所属するユーザー(*)がその資格を持っています。
(*)今回は、ユーザー登録時にユーザー"gorry"をメンバーグループ"wheel"に所属させています。
FreeBSDサーバーマシンのコンソールから、下線部分を入力してください。
"RootPass"は、"root"のパスワードです。プロンプトが"%"から"#"に変わり、スーパーユーザーであることを示します。%su Password: RootPass #
いよいよパッチとコンパイルを行ないます。・・・が、その前にFreeBSDサーバーにそのためのデータを準備しなければなりません。今回は、NetBEUI接続したクライアントマシンからそれらのファイルを転送します。
まず、ファイルをクライアントマシンへダウンロードしてください。
- nat-970607.patch [iij-ppp NAT-patch](関連webページはこちら)
- mykernel.tar.gz [/usr/src/sys/i386/conf/MyKernel]
続いて、これらをFreeBSDサーバーマシンへ転送します。エクスプローラーを起動してから、「\\ネットワークコンピュータ\Home\samba\」フォルダへ上の2つのファイルをコピーしてください。
FreeBSDサーバーのコンソールから以下のように入力して、ファイルの存在を確認してください。
#cd /usr/samba #ls mykernel.tar.gz nat-970607.patch #
これらのファイルをしかるべき場所に配置します。
#cp nat-970607.patch /usr/src/usr.sbin #cp mykernel.tar.gz /usr/src/sys/i386/conf #
これらのファイルのエンコーディングを解いて、使用可能なファイルを作ります。
#cd /usr/src/usr.sbin #tr -d '\015' < nat-970607.patch | tr -d '\032' > nat.patch #cd /usr/src/sys/i386/conf #tar xvzf mykernel.tar.gz MyKernel #
FreeBSDには、ダイヤルアップサーバープログラム「iij-ppp」が同梱されています。これを使って、モデムやTAを介してインターネットへ接続(ppp接続という)することができます。
標準で同梱されているiij-pppは「単一のIPアドレスとの接続」しか扱うことができません(1台のマシンしか外部へ接続できない)が、ここで紹介する「NATパッチ」を導入することで、「複数のIPアドレスとの接続」を同時に扱う(複数のマシンを同時に外部へ接続する)ことができるようになります(*)。
(*)データを外部(今回の場合はインターネット)に送信する場合、iij-pppが「gorry.local内部を示すIPアドレス」を「iij-pppが管理するIPアドレス」に変更してから外部に送信します。また逆にデータを受信する場合、iij-pppが「iij-pppが管理するIPアドレス」を「gorry.local内部を示すIPアドレス」に変更してから内部に送信します。
最近(1997/08)人気の「MN128-SOHO」などの「ルーター付きTA」は、TAがこの機能を持っています。
では、パッチ作業を開始します。FreeBSDサーバーのコンソールから以下のように入力してください。
#cd /usr/src/usr.sbin #patch -p<nat.patch (表示メッセージ省略) #
ソースファイルへのパッチ作業が終了したら、再コンパイルを行ないます。以下のように入力してください。
以上で、iij-pppへのパッチが終了しました。#cd ppp #make (表示メッセージ省略) #make install (表示メッセージ省略) #
FreeBSDは、多くのデバイスドライバが「カーネル」と呼ばれるOSの内側に入っています(*)。FreeBSDでは、新しいデバイスドライバを入れるためには「カーネル」を再構成する必要があります。
(*)MS-DOSやWindows95でいうところの"IO.SYS"や"MSDOS.SYS"に相当するものが「カーネル」です(厳密にはちょっと違うが)。
再コンパイルとはいっても、C言語のソースファイルと格闘する必要はありません。config.sysをちょっと複雑にしたような、「カーネルコンフィグレーションファイル」を修正して、再構成のための命令群を与えるだけで行なえます。
では、再コンパイル作業を開始します。FreeBSDサーバーのコンソールから以下のように入力してください。
#cd /usr/src/sys/i386/conf #ls MyKernel MyKernel #
先ほど準備した"MyKernel"というファイルが、今回のシステム用の「カーネルコンフィグレーションファイル」です(*)。
(*)同じディレクトリにある"GENERIC"というファイルが、インストール時のカーネルコンフィグレーションファイルです。何が違うか、比較してみるのもいいでしょう。
続いて、FreeBSDサーバーのコンソールから以下のように入力してください。
以上で、カーネルの再コンパイルが終了しました。#config MyKernel (表示メッセージ省略) #cd ../../compile/MyKernel #make depend; make (表示メッセージ省略) #make install (表示メッセージ省略) #
いよいよ、新しいカーネルでの起動を行ないます。以下のように入力してください。
・・・と出て、マシンが再起動します。#shutdown -r now (表示メッセージ省略)
メールはこちらへ...[後藤浩昭 / Hiroaki Goto / GORRY / gorry@shonan.ne.jp]
「その5 FreeBSDネットワークテスト」
「その7 FreeBSD詳細設定その2」
「表紙へ戻る」
「FreeBSDページの表紙へ戻る」
「会議室」
「日記」