う〜〜む,根本的な疑問である.ただ入れてみたかっただけなんだけど.
「ネットワークにつながっていないコンピュータは悲惨である.さらに,それが Linux ならもっと悲惨である」ってコトバをとりあえず思い出す.
今は LAN にもつながってないしな〜〜. Linux にあるまじき,スタンドアロンなのである.少なくとも PPP 接続でインターネット! くらいはやらねば.
ターミナルアダプタは NTT INS メイト V30 Tower というやつで, Windows98 (エンデバーくん)ではすでに OCN に接続ずみである. Windows98 の場合はハードにくっついてくる専用のドライバを入れたらすむんだけれど, Linux はそーゆーわけにはいかないと思う.
まずは, TA の認識だ. RS-232C ケープルをつないで・・・あれ? このあとどうするんだろう.いきなり cu コマンド打っちゃっていいのかな.
# cu -l /dev/ttyS0
で AT コマンドを入れてみたところ,ちゃんと受け付けてくれるのである.そこで, OCN のアクセスポイントの番号を入れてみた.
Connected.
え? こんなんでつながるの?
ただし,接続後に出るものと思われる, login 名や password 入力を促すメッセージは現れない.そこで,切断するため, ~. を入力したが,受け付けない.仕方なく,プロセスを kill する.
う〜〜ん,これでいいんだろうか.でもいちおう AT コマンドは受け付けたことだし・・・いいことにするか.
次は PPP の設定である.メインメニューを見ると,ユーティリティ --> ネットワークのところに, PPP の設定 (qdial) と PPP 接続 (tkppxp) というものがあったのでこれを使うことにする.
qdial(Quick Dialup) で設定して, tkPPxP で接続するようだ. tkPPxP のメニューから Quick Dialup が呼び出せるようにもなっている.
デバイス名は /dev/ttyS0 でいいのかな.ダイアル方式は isdn と.あと,ログイン名とか DNS 設定なんかは Windows98 でやったものと何ら変わるところはない.
モデムに関しては・・・よくわからない.よくわからない部分はデフォルトのまま放っておくことにし,設定を保存して,接続だ!
Windows98 でつないでいるときにはうるさいくらいランプが灯りまくっている TA ,こんどはうんともすんともいってくれない.
へんだな〜〜〜,何がおかしいんだろ.・・・つーか,どこで止まってるんだろ.せめてエラーメッセージくらい出てよぉ〜.
やっぱり,買ってきた本はちゃんと活用しよう.件の,「 Linux 各種設定×活用徹底ガイド」という本をぱらぱらめくっていると, PPxP という記述が出てきた. tkPPxP とはインターフェースが違うだけのようで, PPxP はコマンドラインである.
そーか,コマンドラインで実行したら,ちゃんとエラーメッセージが出てくれるかもしれないなあ.
$ ppxp ocn ← ocn: Quick Dialup の設定ファイル名
ppxp > connect
確かに,ちゃんとエラーメッセージが出てくれた.
/var/lock/LCK..ttyS0: 権限がありません
だそーだ.ポートへのアクセス権限がないんだって. TA にランプがつかないのも当然,そもそも外に出られないのである.
せっかく買った本を全然活用していない一例である.確かに数ページ前に,ユーザー登録とデバイスの設定が必要,としっかり書かれている.
まず,一般ユーザーが tty と uucp グループに所属していること.そしてモデム /TA が接続されたシリアルポートに一般ユーザが書き込みできるよう,パーミッションを変更すること.
/etc/group を編集して, tty と uucp のところにユーザ名を追加する.そして,意味はよくわからんけど本に書いてあったとおり入力して・・・
# chmod 660 /dev/ttyS0
# chgrp uucp /dev/ttyS0
ppxp > connect
dial >
おお,ちゃんと TA にアクセスしてる! ランプが激しく点滅し・・・
そして,別のエラーメッセージが出た.
なにこれ? 本にもこんなの,載ってない. TA のマニュアルを見る.・・・わかんない.
ところで,エンデバーくんに乗っけた Windows98 ではすでにインターネットにつなげる状況にある.ホームページからある程度の情報が得られるかもしれない,と,早速メビウスくん→エンデバーくんに RS-232C ケーブルをつなぎかえ,検索してみた.
接続時間を気にしつつつないでいると,そのうち,なかなか参考になりそうなページがみつかった.
http://www2.palnet.or.jp/~matsuda/ppp/ppp.html
Linux で TA を使って so-net に ppp 接続する方法,である.「 Windows で繋がるのに Linux だと繋がらない」,である.接続先は違うが,目的は同じである.ただ,これは PPxP 等は使っていないようだ.
PPxP を使用しない場合,自分でファイルをいっぱい作らなきゃいけないみたいだ.面倒くさそ〜〜.
読み進めていくと,有益(と思われるのだけれどわたしには難しくてよくわからない)情報がいろいろ書かれている.でもわかんないからとりあえず読み飛ばす・・・
・・・と,そこに「初期化文字列」という言葉が飛び込んできた!
これだっ!!
「 Windows95 上で TA 又はモデムの初期化文字列を調べる」という項目がある.
この場合,「 Windows95 で暗に設定されている TA 又はモデムの「初期化文字列」を設定する事により、解決できる可能性が(かなりの確率で)あります」,だそうだ.では,暗に設定されている初期化文字列をどうやって調べるか.これは Windows で ppp 接続したときの接続ログから探してくればよいのだそーである.
そっかそっかー,接続ログを見ればよかったのね.
Windows98 の「ダイヤルアップネットワーク」から,接続のところの詳細を見ていくと,ログを表示できる.ログはこんな感じになっていた.
01-22-2001 12:11:46.43 - INSメイトV30 Tower SYNC は使用中です。
これによると,モデムの初期化のところで, ATE0V0&C1Q0W0S0=0$M11=0 というのを送信している. AT$N11=0 というのも送っている. えーと・・・ ATE0V0&C1Q0W0S0... ないじゃんこんな長いの. ATE0 とか ATV0 とかすごい短いのばっかり. あ,もしかして, ATE0 と ATV0 をくっつけて ATE0V0 って書いているのかな. AT コマンドはつなげて書ける,とも説明してあるし・・・うん,たぶんそうだ.そうにちがいない.そういうことにしておこう.そうだったらいいなあ. ATE0 :エコーバックなし
・・・だそーだ. ・・・ AT コマンドを日本語に直してみたからといって,ぱっとわかるっつーものでもないよーである.つーか,さっぱりわかんないんですけど.リザルトコードって何? CD 信号とか, RVS-COM とか聞いたこともねー・・・. これも,説明書にいちおう載っていた. リザルトコードってのは, "0 : OK" とか "1 : CONNECT" など,通信結果を表すコードで,全部で 0 〜 8 の 9 つある. "Q0" で,このリザルトコードを返すように設定し, "V0" から,このコードを 0 〜 8 までの番号形式で返してくるってことがわかる.さらに, "W" で,リザルトコード "2 : RING" (着信通知)の付加情報(発番号・初サブアドレス・ユーザデータ・着番号・着サブアドレスなどいろいろあるらしい)の表示のしかたを示しており, 0 の場合は,付加情報なしだ.そして "S0" で "RING" が何回きたら自動応答するかを設定するのだが, 0 のときは自動応答しないということだ. その次の, AT$N11=0 だが,これは非同期/同期 PPP (マルチリンク通信しない)ということだそうだ.これがいちばん重要なんじゃないか? ま,とにかくこの辺の文字列を TA に送ってみればいいということだろう.
01-22-2001 12:11:46.43 - モデムの種類 : INSメイトV30 Tower SYNC
01-22-2001 12:11:46.43 - モデム INF のパス : NTTEAS~1.INF
01-22-2001 12:11:46.43 - モデム inf のセクション: Modem1
01-22-2001 12:11:46.67 - 115200,N,8,1
01-22-2001 12:11:46.67 - 115200,N,8,1
01-22-2001 12:11:46.67 - モデムの初期化中です。
01-22-2001 12:11:46.67 - 送信 : ATE0V0&C1Q0W0S0=0$M11=0
01-22-2001 12:11:46.72 - 受信 : ATE0V0&C1Q0W0S0=0$M11=0
01-22-2001 12:11:46.72 - 受信 : 0
01-22-2001 12:11:46.72 - 変換した応答 : OK
01-22-2001 12:11:46.72 - 送信 : AT$N11=0
01-22-2001 12:11:46.76 - 受信 : 0
01-22-2001 12:11:46.76 - 変換した応答 : OK
01-22-2001 12:11:46.76 - 送信 : AT
01-22-2001 12:11:46.81 - 受信 : 0
01-22-2001 12:11:46.81 - 変換した応答 : OK
01-22-2001 12:11:46.81 - ダイヤル中です。
01-22-2001 12:11:46.81 - 送信 : ATD##########
01-22-2001 12:11:48.87 - 受信 : 1
01-22-2001 12:11:48.87 - 変換した応答 : 接続
01-22-2001 12:11:48.87 - 115200bps で接続を確立しました。
01-22-2001 12:11:48.87 - エラー制御がオフか、または不明です。
01-22-2001 12:11:48.87 - データ圧縮がオフか、または不明です。
01-22-2001 12:13:22.23 - モデムの切断中です。
01-22-2001 12:13:22.23 - DTR をオフにすることによるハードウェア切断。
01-22-2001 12:13:22.45 - 受信 : 3
01-22-2001 12:13:22.45 - 変換した応答 : キャリアなし
01-22-2001 12:13:22.45 - 送信 : ATH
01-22-2001 12:13:22.49 - 受信 : 0
01-22-2001 12:13:22.49 - 変換した応答 : OK
01-22-2001 12:13:22.49 - 115200,N,8,1
01-22-2001 12:13:22.50 - セッションの統計情報 :
01-22-2001 12:13:22.50 - 読み取り : 333890 バイト
01-22-2001 12:13:22.50 - 書き込み : 36218 バイト
01-22-2001 12:13:22.50 - INSメイトV30 Tower SYNC が閉じています。
さらにそのあと,
なんか全然意味がわかんないんだけど,これ, AT コマンドだよね.みょーに長いけど. TA の説明書に AT コマンドが載っていたので,調べてみる.
V0 :リザルトコードを番号形式で返す
&C1 : CD 信号を回線接続中 ON
Q0 :リザルトコードあり
W0 :リザルトコードが RING のみ
S0=0 :自動応答しない
$M11=0 : RVS-COM 未起動
RVS-COM ってのは,アナログポートの着信を RS-232C ポートへ送るものだそうだが,別途にソフトが要るらしい. CD 信号はまったくわからない.
「 Linux で TA を使って so-net に ppp 接続する方法」というページの情報はとってもありがたいんだけど, PPxP を使わずに,必要なファイルを全部自分で作成しているから,とっても面倒くさそーなのである.
そこで,今度は PPxP をキーワードにまたホームページを検索していると,こんなページが見つかった.
http://www.kyo-ko.org/knowhow/howto_ppxp.html
ありがたいことに, PPxP でモデムを設定する方法が書かれている.
/etc/ppxp/modem/ にモデムごとの設定ファイルがあるのだが,ここに自分のモデムのための設定ファイルを作る.そして, /.ppxp/conf/ にあるダイヤル設定ファイルでモデム設定ファイルを指定してやるのだそうだ.
ホームページ作成者氏が作ったファイルは,五,六行程度のいたってシンプルなものだ. /etc/ppxp/modem/ にすでに入っているモデム情報ファイルも,シンプルなのがほとんどだ.個々のモデム情報ファイルに記述がない項目については, standard というファイルにある標準設定をそのまま使うようになっているらしい.
・・・やっぱ,こーゆーのは PPxP を作っているところのホームページを見るべきなんだろうな.←つーかここに一番最初に行けっ!
http://www.dsl.gr.jp/~manabe/PPxP/
に伺って PPxP ガイドを読んでいたのだが・・・それより前にするべきことがあったのである.そう,自分のパソコンに入っている, PPxP のパッケージに最初からくっついているドキュメントをまだ読んでいなかった・・・やっぱりバカだ・・・.ここを最初に見ていれば,インターネット接続料金がずいぶん節約できただろうに・・・
ちゃんと,「モデム情報ファイル」という説明がある.何を書いているのかさっぱりわからない部分も多々あるが・・・自分のモデム用の設定ファイルを作って Initialize とか MaxDTESpeed とかを設定すればいいようだ.
なるほど. Initialize にさっきのわけのわからん AT コマンドを入れればいーのだな.でも初期化の AT コマンド,二つあったんだけど・・・つなげてしまってもいいんだろうか.
さらに,気になる点がもうひとつ. PPxP のドキュメントに,「初期化文字列には必ずエコーオンコマンドを含めること」とあるのだが,さっき Windows98 で調べた初期化文字列には,なんと,一番あたまに ATE0 というエコーオフのコマンドがくっついているのである.これは ATE1 に変えるべきなんだろうか.
うーわからん.試してみればわかるだろ.
まずモデム情報ファイル: nttv30 を作成.
ダイヤル設定ファイル: ocn の中の SERIAL.MODEM はデフォルトでは generic になっているが,ここをモデム情報ファイル名: nttv30 に変更する.
あとは,モデム情報ファイルの中の Initialize をいじくりまわせばよい.
・・・・・・
ppxp> connect
dial>
PPXP>
ppxp が大文字になった・・・っつーことは・・・つながったよオイ.
念のため, Netscape Navigator を起動し, VineLinux のホームページを見に行ってみる.ちょっと遅いよーな気がするけど・・・うん,たしかに,つながってる.
PPXP> disconnect
ppxp>
結局,モデム情報ファイル: nttv30 は以下のとおり.
include standard
Name "NTT V30-Tower"
Initialize "AT$N11=0"
MaxDTESpeed 115200
まーとにかく設定終了.やれやれ.