PPP 接続をするために今まではpppd を利用していましたが、
この度、真鍋さんのPPxP に切替えました。
TA によってはpppd では同期64K通信でちゃんと64K の速度がでないらしい、
ということが分かったからです。
その際、真鍋さんの
PPxP Home Page
を参照しながら設定したのですが、
動作させるまでに3時間もかかったりとなかなかに苦労しました。
でも、一応うまくいったようなので、その顛末をここにご紹介します。
ただ、1999/03に自作PCに切替えた際にSlackware からVine にしました。
Vine では最初からPPxP が入っていますが、
最新を追いたい僕は相変わらずRPM を無視して/usr/local に入れちゃっています。
さらに、2000/07からはKondara
MNU/Linux で使っています。
Kondara では用が足りているので自分ではmake せず、
ディストリビューションに入っているままの状態で使っています。
またさらに、2001/08からはVine
に戻りました。
ディストリビューションに入っているままの状態で使っています。
userlinkをインストールします。 (何故なのかはPPxPのページを読んで下さい。=p)
$ tar xvfz userlink-0.97.tar.gz ※最新はuserlink-0.99.tar.gzですね。 $ cd userlink-0.97 2.0.x系kernelな人は換えなくてもOKです。 $ ./configure $ make $ su # make install # /sbin/depmod -a
もしも、あなたのマシンでkerneldが動いていない場合には、
# /sbin/modprobe userlink
をやっておいて下さい。まぁ、ここはそのまんまなので簡単ですね。
Kondara ではreadline は使ってなくてethertap を使っていますので、 readline のインストールは必要ないです。 ethertap はKondara 提供のカーネルでは組み込まれていますが、 自分でカーネルを再構築する際には忘れずに ethertapモジュールを組み込む必要があります。
目次に戻るまず、PPxPを展開して、そのディレクトリにcdしますが、 PPxPのアーカイブはサブディレクトリが ppxp/ としか切られていないので、 念のため前のバージョンを残すためにも、 展開したアーカイブはバージョン番号を付けたディレクトリ名にして、 そこからシンボリックリンクをppxpへ張るようにしています。
$ rm ppxp $ mkdir ppxp-0.98112523 ※最新はppxp-0.99120923.tar.gzですね。 $ ln -s ppxp-0.98112523 ppxp 入れ方は変わりません。 $ tar xvfz ppxp-0.98112523.tar.gz $ cd ppxp $ ./configure $ make $ su # make install
これで、OKです。
しかし、僕は./console/stdディレクトリでコンパイルエラーがでました。
よくよくPPxPのページで動作環境を見てみると、readlineというGNUのライブラリが
必須とのことでした。
仕方ないのでarchieで探してftp.ipc.chiba-u.ac.jpから
readline-2.1.tar.gzを入手してインストールすることにしたのですが、
なんと、これもまたエラーが出てしまいました。
しかし、readlineライブラリ自体は僕には必要ないので、
とりあえず、
readline-2.1.tar.gzのアーカイブの中から必要な2つのヘッダファイル、
readline.h
history.h
だけを/usr/include にコピーして、makeを通してしまいました。=p
ちなみに、readline はVine, Kondaraでは標準でインストールされています。
目次に戻る
ここからが苦労しました。(^^;
PPxPにモデムの初期化をさせる方法がアーカイブの中の文書には見当たりません。
PPxPのページを見てまわって、PPxPアンサーズ
というページのモデム情報ファイルについてのQAを読んで、やっと理解できました。
/usr/local/etc/ppxp/modem/
(手動インストールの場合。Vine, Kondaraでは/etc/ppxp/modem/)
の下にモデム毎に初期設定などを記述するファイルがあるので、
そこに僕の使用しているAIWAの
TM-AD1280:64K用のファイルを作り、
qdialで作成する設定ファイルにてモデムの指定をそのファイル名にしたところ、
上手くTAを初期化してくれました。
これに気付くまでに1時間以上かかりました。しくしく。
(qdialについてはアーカイブの中の./doc/ja_JP/QuickStart.txtを参照して下さい)
% qdial
としてもtcl/tkのGUI窓が出ますね。最近気が付きました。(^^; (1999/12)
※ 現在、このTM-AD1280用のモデム設定ファイルは、 真鍋さんのご厚意によりPPxPのアーカイブにmergeされています。=)目次に戻る
あとは簡単です。PPxPのページにあるようにやれば繋がります。
$ ppxp tokyo64 PPxP version 0.98032123 interface: ul0 ppxp> connect PPXP>
ここで、tokyo64というのはqdialで設定を保存したファイル名です。 これでばっちり同期64Kで繋がります。=)
ちなみに同期128K(マルチリンクプロトコルモード)で繋ぐときには TM-AD1280:128K用のファイルを使います。
※ これも64K用と同様に現在ではmergeされています。目次に戻る
さて、テキストベースなのも飽きてきたので、xppxpを使ってみましょう。
これはX window上で使えるGUI版のコンソールです。
実は、最初はXPMライブラリが僕のシステムにはインストールされていなくて、
コンパイルもされてなかったんです(できないものはコンパイルがskipされる)。
余力ができたのと、気が向いたのとで(=p)、XPMライブラリをインストールして
再度PPxPを作り直してみました。
利用したXPMライブラリのアーカイブはxpm-3.4g.tar.gzです。
どこから持ってきたかは失念しちゃいました。(archieにてXPMでサーチ)
XPMもVineではインストールされています。
$ tar xvfz xpm-3.4g.tar.gz $ cd xpm-3.4g $ xmkmf $ make Makefiles $ make includes $ make depend $ make $ su # make install # make install.man
これで、おしまい。たぶんつまづくこともないでしょう。 あとは、再度PPxPをインストールするをやれば、 xppxpの実行ファイルが作成、インストールされます。そして、同じように、
$ xppxp tokyo64 &
とでもして起動すれば、X窓が現れます。 インタフェースは見たまんまなので、迷うこともないと思います。 in/outのインジケータがついてますし、接続時間も表示されるのでよいですよ。=)
目次に戻る
PPP 接続時に決まったコマンドを走らせるようにします。
僕はネットに繋がった時にキューに溜ったメールを送信すること、
ntpdate によりPC の時刻を同期させること、
DHIS により自分のドメインのDNS にip アドレスを登録することを実行しています。
具体的には、設定ファイル(今までの例ですとtokyo64)に、
source modem set MODE active set AUTH.PASSWD tokyo64 set LOG.FILE tokyo64.log set LINE /dev/ttyS0 set SERIAL.MODEM tmad1280@64 set DIAL.LIST 03xxxxxxxx ←伏せてます set AUTH.PROTO PAP CHAP/MD5 CHAP/MS set IP.VJ no set IP.RESOLV no set IP.DNS xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx ←伏せてます set IP.START myipstart ←これを足す
と、myipstart というスクリプトを実行するように指定します。 そして、~/.ppxp/ip/ に置いたこのスクリプトから、 実行したいスクリプトを呼び出します。 ~/.ppxp/ip/myipstart はこうなります。
start sendmail start ntpdate start dhid
ここに start sendmail とあると、~/.ppxp/rc/ , /etc/ppxp/rc/ の順で sendmail.rc という実行可能ファイルが検索され、存在すれば実行されます。 システム配下(/etc/ppxp) にあるスクリプトはroot 権限で実行されるので、 sendmail queue の吐き出しやntpdate などの root 権限で動かすものはそちらに置いておく必要があります。 sendmail.rc は、PPxP のパッケージに含まれていて、内容は、
#!/bin/sh export PATH="/usr/bin:/bin:/sbin:/usr/sbin" case "$1" in up) case "$PPXP_PHASE" in Dead) ;; *) sendmail -q & ;; esac ;; down) killall sendmail ;; esac exit 0
といった風になっています。これを流用してお好みのスクリプトを作りましょう。:) PPxP のシステムディレクトリは、 手動でインストールした場合には/usr/local/etc/ppxp で、 Vine, Kondara でのデフォルトでは/etc/ppxp/ip/ です。
目次に戻る
しばらくGUIとしてtkppxpを使っていましたが、
ディストリビューションをVineにしたことにより、
gtkの環境もまともになったことですし、gtkppxpを使ってみました。
http://www6.eie.eng.osaka-u.ac.jp/toru/new/my_stuff/index.html
より、gtkppxp-0.6.tar.gzを入手します。
(1999/10/31現在、404 Not Foundですね。。。移転先が分かりません)
→2000/03/09、作者様よりURLを教えて頂けました。:)
% cd /usr/local/src/ppxp/console ←${ppxpソースツリー}/consoleへ移動 % tar xvfz gtkppxp-0.6.tar.gz % cd gtkppxp-0.6 % make % su # cp -pi gtkppxp /usr/local/bin/.
これでOKです。あとはgtkppxp &などと起動すればOKです。
GUIですし、使い方はみればすぐわかると思います。
tkppxpよりもよいと思ったのは自分のHOMEディレクトリ配下にある
configファイルを読み込んでリストにしてくれるので、loadメニュー→選択
などというステップなしにすぐに接続先設定を選べるところですね。
しばらくこれを使うことにしました。:)
ふと、PPxP のオフィシャルサイトを覗いてみると、
GNOME のアプレットとして動作する新たなフロントエンドを見つけました。
http://www.gws.ne.jp/home/yurika/ppxp-applet/
より、
ppxp-applet-0.8.tar.bz2,
ppxp-applet-0.8-0.8+1b.diff,
ppxp-applet-0.8-color.diff.bz2 を入手します。
% cd /usr/local/src/ppxp/console ←${ppxpソースツリー}/consoleへ移動 % bzcat ppxp-applet-0.8.tar.bz2 | tar xvf - % cd ppxp-applet-0.8 % patch -p0 < ppxp-applet-0.8-0.8+1b.diff % bzcat ppxp-applet-0.8-color.diff.bz2 | patch -p0 % ./configure % make % sudo make install
これでOK です。
0.8 になりたての頃はMakefile 直さないとmake は通らないし、
Kondara ではcore も吐いてましたが、
0.8-color 版ではmake も一発で通りますし、問題なく動きました。
起動するにはコマンドラインで % ppxp_applet でもよいですし、
GNOMEのパネルから右クリック→アプレットの追加→ユーティリティ→PPxP
(Vine-1.1の場合)でもOKです。