電話回線からモデムを介して、ネットワークにリモート接続する環境を実現します。
mgettyは、シリアルポートを監視するデーモンです。
COMポートに繋いだモデムに着信が来た時に、自動的にpppdを起動するよう、設定します。
mgettyをインストールします。
unix> cd /usr/local/src/ unix> zcat ../pub/ mgetty1.1.12-Jan27.tar.gz| tar -xvf - unix> cd mgetty-1.1.12
policy.hを編集。
#define DEVICE_GROUP "modem" (/etc/groupにmodemグループを作成しておきます)
#define DEFAULT_PORTSPEED 115200 |
Makefileを編集。
CFLAGS=-O2 -Wall -pipe -DAUTO_PPP (-DAUTO_PPPを追加。) |
unix> make unix> make install
これで、/usr/local/sbin/mgetty が出来ました。 定義ファイルは、/usr/local/etc/mgetty+sendfax/ 以下に作成されています。
ashでの、定義の内容です。
/usr/local/etc/mgetty+sendfax/login.config
… /AutoPPP/ - a_ppp /etc/ppp/ppplogin (モデム着信の時、自動的にシェルppploginを起動します) … |
/etc/ppp/ppplogin (pppd起動シェル)
#!/bin/sh exec /usr/sbin/pppd debug auth -chap +pap login (pap認証を行い、パスワードはlinuxオリジナルの物を参照します) |
/etc/ppp/options (pppd起動時の、デフォルトオプションを記述します)
asyncmap 0 netmask 255.255.255.0 passive proxyarp lock crtscts |
/etc/ppp/options.ttyS0 (pppd起動時、着信モデムがttyS0だった時のローカルなオプションを記述します)
10.0.1.2:10.0.1.81 (左辺=pppサーバーのIP:右辺=クライアントに割り当てるIP) |
/etc/ppp/options.ttyS?
ファイルを増やして行けば、モデム毎に割り当てるIPを、静的に指定できます。
/etc/inittabに記述し、常時モデムを監視させます。
… s1:12345:respawn:/usr/local/sbin/mgetty -D -x9 ttyS0 … |
ttyS0は、COM1ポートを表します。