次のページ 前のページ 目次へ

11. ダイヤルイン

11.1 概要

ダイヤルインとは、あなたの電話番号をダイヤルしてあなたの PC を使え るように、あなたの PC を設定することです。「視点」はあなたの PC 側にあ ります。あなたの PC から発信すると、他のコンピュータへダイヤルインする ことになります。(あなた自身のコンピュータへ電話をかけないでください)

ダイヤルインは以下のように動作します。誰かがモデムであなたの電話番号を ダイヤルします。あなたのモデムは応答し、接続します。発信者とつながると、 あなたの PC はログインプロンプトを発信者へ送ります。そして、発信者はあ なたの PC へログインします。あなたの PC を使うことは、発信者がシェルア カウントを有し、コンソール(あるいはテキスト端末)からログインした場合と 全く同じように、あなたの PC を使えることを意味します。また、発信者がイ ンターネットへ接続できることにもなります。あなたの PC 上でこのダイヤル インを扱うプログラムを getty と呼びます。

ログインの後、発信者をインターネットへ接続するような他のプログラムが動 くこともあります。この HOWTO ではログインの後に動くこのようなプログラ ムは対象としていません。インターネットへつなぐためには、たいてい PPP プログラムが動きます(もうすぐ新しいバージョンが出る予定の PPP-HOWTO を ご覧ください)。通信プログラムがログイン名とパスワードを毎回自動的に入 力し、ログインを自動化しているかもしれません。

[訳注 : JF プロジェクトによる日本語訳 PPP-HOWTO ]

56k でダイヤルインできるようにするつもりなら、以下のことをしない限り不 可能です :

  1. 電話会社へトランクサイド T1 あるいは ISDN などでデジタル接続する。
  2. 特別なデジタルモデムを使用する。
  3. デジタルモデムに「コンセントレータ」などの、電話会社のデジタル回 線へつなぐインタフェースがある。

「コンセントレータ」を「モデムコンセントレータ」あるいは「リモートアク セスコンセントレータ」とも呼びます。モデムがつながる「リモートアクセス サーバ」にも、コンセントレータがあるかもしれません。もし上記の条件すべ てを満たせるなら、あなたは ISP (プロバイダ)でしょう。

11.2 getty

getty はダイヤルインを行うために動かすプログラムです。ダイヤ ルアウトには必要ありません。ログインプロンプトを表示することに加え、電 話に応答します。もともと、getty はダム端末からコンピュータへログインす るために使用していました。現在は Linux コンソールへのログインに使用し ています。少しずつ異なった名前を持つ数種類の getty プログラムがありま す。特定の getty がモデムでダイヤルインするために動作します。この getty プログラムはたいてい起動時に動きます。これは /etc/inittab が呼び出さなければなりません。このファイルの中に、 若干変更が必要となる getty を呼び出す例が見つかるかもしれません。例に 挙げたものとは異なる getty プログラムを使うのなら、オプションの形式が 異なるので、/etc/inittab を大幅に変更する必要があるでしょう。

ダイヤルインのために使える、4 つの異なる getty プログラムがありま す : mgetty, uugetty, getty_em および agetty です。 以下の節で、詳細について若干述べています。agetty は 4 つの中で最 も簡易(そして 貧弱)であり、主としてテキスト端末を直接接続するために使 用するものだと考える人もいます。mgetty は FAX およびボイスメール をサポートしていますが、uugetty はサポートしていません。 mgettyuugetty のいくつかの機能が不足しているようです。 getty_emuugetty を簡易化したバージョンです。従って、既に uugetty に慣れている(あるいは mgetty を入手しにくい) という ことでなければ、恐らく mgetty が最良の選択です。これら getty プロ グラムの設定方法はそれぞれ異なるので、/etc/inittab で使用する getty に合った正しい文法を使うよう確認してください。

mgetty について

mgetty よりずっと前から存在していた uugetty を置き換える ために mgetty は書かれました。双方ともモデムとともに使用します。 本文書で正確に述べるのは難しいですが、mgetty は端末を直接接続する ためにも用いるものの、mgetty は (1999 年の半ばでは) 再コンパイルをしな いと(多くの端末が使用する)ソフトウェアフロー制御をサポートしません。こ の欠点はバグとして載っています。ダイヤルインでログインを可能にすること に加え、mgetty は FAX のサポートおよび自動 PPP 検出も提供していま す。モデムでボイスメールを扱う vgetty という追加プログラムもあり ます。mgetty の文書は(ボイスメールの部分を除いて)よくできており、 追加情報がなくても問題ありません。インストール解説書を参照してください。 mgetty の最新情報は http://www.leo.org/~doering/mgetty/ および http://alpha.greenie.net/mgetty で見つけられます。

uugetty について

getty_ps は 2 つのプログラムを含んでいます : getty をコ ンソールと端末装置のために用い、uugetty をモデムのために使用しま す。(Serial-HOWTO の以前の著者である) Greg Hankins さんは、uugetty に ついて書いていたので、uugetty を使っていました。 uugetty をご覧ください。その他の getty はそれに 付属している文書で充分です。

getty_em について

これは uugetty の簡易版です。getty_ps および uugetty に複雑なサポー トファイルが必要になって完全に途方に暮れたので、Vern Hoxie さんが書き ました。

getty_em は scicom.alphacdc.com/pub/linux において FTP で 入手可能な、Vern Hoxie さんのシリアルポートユーティリティおよび情報コ レクションの一部です。このコレクションの名前は ``serial_suite.tgz'' です。``scicom'' に ``anonymous'' でログインする際には、パスワードとして完全なメールアドレスを使わなけれ ばなりません。例えば、greg.hankins@cc.gatech.edu のように。

agetty および mingetty について

agetty は単純で、仮想コンソールあるいはモデムよりも端末に適し た getty の、完全な実用本位の実装です。しかし、(agetty が稼動中あ るいは着信待ちだと、発信できないことを除き) 状況が良ければモデムととも にすばらしい働きをします。Debian の agetty は単に getty とい う名前になっています。

mingetty はコンソール(画面)でのみ動く小さな getty なので、ダイヤ ルイン用としてモデムとともに使用することはできません。

11.3 ダイヤルインの際に何が起こりますか?

発信者はあなたの電話番号をダイヤルする通信プログラムを動かし、あな たの電話が鳴ります。ここで PC は 2 つの異なる方法で電話に応答できます。 ひとつはモデムが自動的に応答するものです。もうひとつは getty が着信を 感知し、モデムに応答するようコマンドを送るものです。いったん応答すると、 モデムは対向するモデムへ(逆方向に)信号を送出します。2 つのモデムはどの ように通信するのか取り決め、それが済むとモデムは ``CONNECTed'' な どのメッセージを getty へ送ります。getty がこのメッセージを 受け取ると、シリアルポートへログインプロンプトを送出します。ときには、 getty はログインを扱う login という名のプログラムを呼び出し ます。getty はたいてい起動時に動き始めます。しかし、ログインプロ ンプトを送出するには、接続が確立するまで待たなければなりません。

着信に応答する 2 つの方法をより詳しく述べます。モデムの S0 レジスタを 3 に設定すると、モデムは 3 回目のベルで自動応答します。0 に設定すると、 電話が鳴っている間に getty がモデムに ``A'' (= Answer) コマンドを 送ったときのみ、モデムが応答するようになります。正確には、すべてのモデ ムコマンドは頭に ``AT''が付くので、``ATA'' を送ります。モデ ムの自動応答機能を使うのが最も良いと考えるかもしれませんが、実際には getty が応答するほうが良いです。モデムが自動的に応答しないことを、 (たとえ getty が自動的に着信を扱ったとしても)手動応答と呼びます。

「手動」応答では起動時に getty がポートを開き監視します。電話が鳴 ると、監視している getty へ ``RING'' メッセージが送られます。 getty が応答するのなら、モデムへ ``ATA'' コマンドを送出しま す。そして、モデムは接続を確立し getty へ ``CONNECT ...'' メッ セージを送り、getty は発信者へログインプロンプトを送出します。

自動応答時には、接続の確立を検知するため、モデムからシリアルポートへの CD (Carrier Detect = キャリア検知)配線を使用します。これは以下のように 動作します。起動時に getty はシリアルポートを開くことを試みますが、 通常はモデムからの CD 信号がないので、それは失敗します。そして、 getty は CD 信号が現れるまで、ポートを開いた状態で待機します。(恐 らく数時間あとに) CD 信号が届くと、ポートが開かれ getty はログイ ンプロンプトを送出します。Linux はマルチプロセスのオペレーティングシス テムなので、getty が待機(スリープ)している間、他のプロセスは動く ことができます。正確には、getty を動かすきっかけは、モデムからの CD 線の状態が ON に変わった際に発行される割込みです。

手動応答時には CD 信号がないため、getty がどのようにしてシリアルポート を開くのか不思議に思うかもしれません。たとえ CD 信号がなかったとしても、 ポートを開くよう強制するプログラムを書く方法があります。

11.4 なぜ手動応答が最も良いのか

コンピュータが停止していてもモデムがまだ動作している場合、応答にお ける 2 つの手法間で違いが現れます。手動応答では ``RING'' メッセー ジが getty へ送られますが、コンピュータが停止しているため getty は存在 せず、電話には決して応答しません。応答がないので電話料金はかかりません。 自動応答では、応答はあるもののコンピュータが停止しているので、ログイン メッセージが来ないことになります。待機が続いているので、電話料金がかか ります。永遠に来ないログインプロンプトを待ち続けるのはいらだたしいかも しれません。もし電話料金が固定制ならばたいした違いはありません。 mgetty は手動応答を使用します。uugetty は設定スクリプトを使 用して、自動応答にできます。

11.5 コールバック

コールバックでは、誰かがあなたのモデムへまずダイヤルし、発信者の情 報を得て折り返し電話をかけます。なぜこんなことをしたいのでしょうか? ひとつには、発信者があなたに電話をかけるよりも、あなたが発信者にかける ほうが料金が安いのならば、電話料金を節約できるからです。もうひとつは、 発信者が本当に接続してよい人物かどうかを確認するためです。発信者があな たに電話をかけて、ある電話番号からかけていると主張したなら、これを確か めるひとつの方法はその番号へ電話をかけなおすことです。

Linux には mgetty とともに動作する ``callback'' という名のプログラムが あります。 ftp://ftp.icce.rug.nl/pub/unix/ にあります。どの ように callback (および PPP) をインストールしたのか、手順を追った解説 書が http://www.stokely.com/unix.serial.port.resources/callback.html にあります。

11.6 ボイスメール

ボイスメールはコンピュータが動かす応答装置のようなものです。ボイス メールを扱うためには、モデムが「音声」をサポートしていること、および補 助ソフトウェアが必要です。テープにメッセージを保存するのではなく、ディ スク上にデジタル形式で保存します。誰かがあなたに電話をかけてきたときに、 応答メッセージを聴いてからメッセージを残せます。より高度なシステムは、 発信者がメールボックスや応答メッセージを選択できるでしょう。Linux にも 簡易な可能にするフリーソフトウェアがありますが、高性能なものはまだでき ないようです。

著者は Linux の 2 つの異なるボイスメールソフトウェアを知っています。ひ とつは非常に小さいものです( ボイスメールソフト ウェア をご覧ください)。もうひとつは vgettyで、より高性能ですが 今はドキュメントが不充分です。vgetty は豊富なドキュメントがあり広く流 通している mgetty の、オプションの追加プログラムです。ZyXEL に似 たボイスモデムコマンドをサポートしています。Debian では mgetty および mgetty-doc パッケージに加えて、mgetty-voice パッケージを手に入れなけれ ばなりません。時代遅れの文書は mgetty から削除されていますが、( プログ ラムを動かし -h (help) オプションを使うことを除き) 代わりの文書が不足 しています。しかし、mgetty のニュースグループで使用法についての投稿を 見られます。 mgetty について をご覧ください。 現在 vgetty はそれほど安定していないようですが、幸運にも正しく動 作し、開発が進行中です。ご覧の HOWTO が最新バージョンなら、vgetty を良 く知っている人は著者に vgetty の現状を教えてくれませんか?


次のページ 前のページ 目次へ