doc/ja_JP.eucJP/man/man8/pppctl.8
2004-09-24 05:47:40 +00:00

234 lines
4.9 KiB
Groff

.\" %FreeBSD: src/usr.sbin/pppctl/pppctl.8,v 1.22 2004/07/02 23:12:54 ru Exp %
.\" $FreeBSD$
.Dd June 26, 1997
.Os
.Dt PPPCTL 8
.Sh 名称
.Nm pppctl
.Nd PPP 制御プログラム
.Sh 書式
.Nm
.Op Fl v
.Op Fl t Ar n
.Op Fl p Ar passwd
.Xo Oo Ar host : Oc Ns
.Ar Port | LocalSocket
.Xc
.Oo
.Sm off
.Ar command Oo ; Ar command Oc Ar ...
.Sm on
.Oc
.Sh 解説
このユーティリティは
.Xr ppp 8
デーモンのコマンドラインからの制御手段を提供します。
基本的な使い方は、実行中のデーモンを制御する単純なスクリプトを
簡単に書けるようにすることです。
.Pp
.Nm
ユーティリティは、
.Nm ppp
デーモンが listen しているソケットをあらわす
少なくともひとつの引数を必要とします。
詳細については、
.Nm ppp
コマンドの
.Sq set server
を参照して下さい。
ソケットが先頭に '/' を含んでいると、
.Dv AF_LOCAL
ソケットとして扱われます。
コロンを含んでいると
.Ar host : Ns Ar port
の組として扱われ、
それ以外は単にローカルマシン (127.0.0.1) の TCP ポートを
指定したものとみなされます。
DNS 検索を避けたい場合や、
.Pa /etc/services
内に指定されたポートのエントリがない場合には、
.Ar host
.Ar port
を数字で指定することができます。
.Pp
残りの引数はすべて、
.Nm ppp
デーモンに送られる (複数の)
.Ar コマンド
を形成するために連結されます。
セミコロン文字は
.Ar コマンド
デリミタとして扱われ、ひとつの
.Sq セッション
で複数の
.Ar コマンド
を指定することが可能です。
例えば:
.Bd -literal -offset indent
pppctl 3000 set timeout 300\\; show timeout
.Ed
.Pp
ほとんどのシェルでは ';' は特殊文字として扱われるので、
エスケープかクォートすることを忘れないようにしてください。
.Pp
もし、
.Ar コマンド
引数が与えられなかった場合、
.Nm
はインタラクティブモードになります。
ここで、コマンドは標準入力から読み込まれます。
コマンドを読んでいる時に、
.Xr editline 3
が使われていれば、
.Pf ( Xr editrc 5
で指定した振る舞いで)
行編集が可能になります。
履歴の大きさはデフォルトでは
.Em 20
です。
.Pp
以下のコマンドラインオプションが利用可能です:
.Bl -tag -width Ds
.It Fl v
.Nm ppp
デーモンに送られたデータ、
.Nm ppp
デーモンから受け取ったデータをすべて表示します。
.Nm
は通常、受け取った非プロンプト行のみ表示します。
このオプションはインタラクティブモードでは無視されます。
.It Fl t Ar n
接続時のデフォルトの 2 秒の代わりに
.Ar n
をタイムアウトの値として用います。
これは (ダイヤルアップも含む) 遅いリンク上でデーモンを制御しようとする
場合に必要かもしれません。
.It Fl p Ar passwd
.Nm ppp
デーモンが必要とするパスワードを指定します。
このスイッチが指定されないと、
.Nm
.Nm ppp
への接続が成功した時にパスワードの入力を促します。
.El
.Sh 使用例
.Nm ppp
.Fl auto
モードで実行する場合、
.Nm
は多くの仕事を自動化するのに利用できます
(もちろん、実際に
.Nm ppp
をインタラクティブモードを除くどんなモードでも制御することができます)。
.Xr ps 1
によりあなたの秘密がもれてしまう可能性のために、
.Fl p
オプションは
(たとえスクリプトが他の人に読めないようになっていたとしても)
お勧めできません。
.Pp
.Nm
への簡単で安全なアクセスを提供するもっとも良い方法は、
.Pa /etc/ppp/ppp.conf
(の正しいセクション) に以下のようにローカルサーバソケットを作成することです:
.Bd -literal -offset indent
set server /var/run/internet "" 0177
.Ed
.Pp
これは、
.Nm ppp
を実行したユーザだけにアクセスできるように、
パスワード無しでパーミッションが srw------- の
ローカルドメインソケットを作成するように
.Nm ppp
に指示します。
より詳しい解説はマニュアルページ
.Xr ppp 8
を参照してください。
.Pp
このようにするといくつかのお気楽スクリプトが作成可能になります。
インターネットに接続するには:
.Bd -literal -offset indent
#! /bin/sh
test $# -eq 0 && time=300 || time=$1
exec pppctl /var/run/internet set timeout $time\\; dial
.Ed
.Pp
切断するには:
.Bd -literal -offset indent
#! /bin/sh
exec pppctl /var/run/internet set timeout 300\\; close
.Ed
.Pp
接続されているかどうか確かめるには:
.Bd -literal -offset indent
#! /bin/sh
pppctl -p '' -v /var/run/internet quit | grep ^PPP >/dev/null
if [ $? -eq 0 ]; then
echo Link is up
else
echo Link is down
fi
.Ed
.Pp
このような汎用スクリプトも作成可能です:
.Bd -literal -offset indent
#! /bin/sh
exec pppctl /var/run/internet "$@"
.Ed
.Pp
ダイヤルオンデマンドも
.Nm
を使って制御可能です。
.Nm ppp
をずっと動作させながらも、
毎日 8pm から 8am まではダイヤルアウトを防ぎたいとします。
また、8pm にアクティブな接続は、
閉じられるか自然にタイムアウトするまでは保持したいとします。
.Pp
.Xr cron 8
エントリとして 8pm に
.Bd -literal -offset indent
pppctl /var/run/internet set filter dial 0 deny 0 0
.Ed
.Pp
を実行すると、これ以降のダイヤル要求をすべて防ぎ、8am のエントリ
.Bd -literal -offset indent
pppctl /var/run/internet set filter dial -1
.Ed
.Pp
は、再度ダイヤル要求を許可します。
.Sh 環境変数
以下の環境変数が、インタラクティブモード中の
.Nm
によって理解されます:
.Bl -tag -width XXXXXXXXXX
.It Dv EL_SIZE
履歴行の数です。
デフォルトでは 20 です。
.It Dv EL_EDITOR
編集モードです。
\&"emacs" もしくは "vi" だけが受け付けられます。
他の値は無視します。
この環境変数は
.Pa ~/.editrc
.Ar bind -v
.Ar bind -e
で上書きされます。
.El
.Sh 関連項目
.Xr ps 1 ,
.Xr editline 3 ,
.Xr editrc 5 ,
.Xr services 5 ,
.Xr ppp 8
.Sh 歴史
.Nm
ユーティリティは
.Fx 2.2.5
で最初に登場しました。