ASH | サーバ | セキュリティ | Linux | FreeBSD | DB | Web | CGI | Perl | Java | XML | プログラム | ネットワーク | 標準 | Tips集

ダイアルアップサーバ(PPPサーバ)構築

 電話回線からモデムを介して、ネットワークにリモート接続する環境を実現します。

mgettyの概要

 mgettyは、シリアルポートを監視するデーモンです。
COMポートに繋いだモデムに着信が来た時に、自動的にpppdを起動するよう、設定します。

mgettyの設定

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を、静的に指定できます。

mgettyの起動方法

/etc/inittabに記述し、常時モデムを監視させます。


s1:12345:respawn:/usr/local/sbin/mgetty -D -x9 ttyS0

 ttyS0は、COM1ポートを表します。



Copyright (C)1995-2002 ASH multimedia lab.
mail : info@ash.jp