19.5. ダイアルアウトサービス

訳: 丸山 剛司 . 31 December 1996.

以下はモデムを利用して他のコンピュータと 接続する方法を説明しています。 これはリモートホストとターミナル接続を確立するための 適切な方法です。

これは BBS に接続するときによく使います。

この種の接続は PPP 接続に問題がある場合、Internet 上にあるファイルを 転送するのに非常に役に立ちます。FTP で何らかのファイルを転送したいのに PPP 接続を確立できない場合は、ファイルを FTP 転送するためにターミナルセッション を利用します。そして ZMODEM を利用してファイルを転送します。

19.5.1. 私の Hayes モデムはサポートされていません、 どうすればよいでしょう?

実際、tip の マニュアルページは古くなっています。既に Hayes ダイアラが組み込まれています。/etc/remote ファイル中で at=hayes を使ってください。

Hayes ドライバは、最近のモデムの新しい機能である BUSYNO DIALTONECONNECT 115200などのメッセージを 認識できるほど賢くはなく、単に混乱を起こすだけです。 tipを使う場合には、 (ATX0&W とするなどして) これらの メッセージを表示させないようにしなくてはいけません。

また、tip のダイアルのタイムアウトは 60秒です。モデムの タイムアウト設定はそれより短くすべきであり、 そうしないと tip は通信に問題があると判断するでしょう。 ATS7=45&W を実行してください。

注記:

デフォルトの tip は、 Hayes モデムに完全に対応しているわけではありません。解決方法は /usr/src/usr.bin/tip/tip の下の tipconf.h を変更することです。 もちろんこれにはソース配布ファイルが必要です。

#define HAYES 0 と記述されている行を #define HAYES 1 と変更し、そして make, make install を実行します。これでうまく動作するでしょう。

19.5.2. これらの AT コマンドを入力するには?

/etc/remote ファイルの中で direct エントリを作ります。たとえばモデムが 1番目のシリアルポートである /dev/cuaa0 に接続されている場合、次のようにします:

cuaa0:dv=/dev/cuaa0:br#19200:pa=none

モデムがサポートする最大の bps レートを br フィールドに使います。そして tip cuaa0 を実行すると、モデムが利用できるようになります。

/dev/cuaa0 がシステムに存在しない場合は、次のようにします:

# cd /dev
# sh MAKEDEV cuaa0

または root になって以下のように cu コマンドを実行します:

# cu -lline -sspeed

line にはシリアルポートを指定します (例えば /dev/cuaa0)。そして speed には接続する速度を指定します (例えば 57600)。その後 AT コマンドを実行したら、~. と入力すれば終了します。

19.5.3. pn 機能の @ 記号が使えません!

電話番号 (pn) 機能の中での @ 記号は、 tip に /etc/phone にある電話番号を参照するように伝えます。しかし @ の文字は /etc/remote のような 設定ファイルの中では特殊文字となります。 バックスラッシュを使ってエスケープをおこないます:

pn=\@

19.5.4. コマンドラインから電話番号を指定するには?

generic エントリと呼ばれるものを /etc/remote に追加します。 例えば次のようにします:

tip115200|Dial any phone number at 115200 bps:\
	    :dv=/dev/cuaa0:br#115200:at=hayes:pa=none:du:
tip57600|Dial any phone number at 57600bps:\
	    :dv=/dev/cuaa0:br#57600:at=hayes:pa=none:du:

そして

# tip -115200 5551234

のように利用できます。 tip より cu を使いたい場合、 cu の generic エントリを使います。

cu115200|Use cu to dial any number at 115200bps:\
	:dv=/dev/cuaa1:br#57600:at=hayes:pa=none:du:

そして

# cu 5551234 -s 115200

と実行します。

19.5.5. 毎回 bps レートを入力しなければいけませんか?

tip1200cu1200 用のエントリを記述し、適切な通信速度を br フィールドに設定します。tip は 1200 bps が正しいデフォルト値であるとみなすので、 tip1200 エントリを参照します。もちろん 1200 bps を使わなければならないわけではありません。

19.5.6. ターミナルサーバを経由して複数のホストへアクセスしたいです

毎回接続されるのを待って CONNECT <host> と入力する かわりに、tip の cm 機能を使います。 例えば、/etc/remote に次のようなエントリを追加します:

pain|pain.deep13.com|Forrester's machine:\
	:cm=CONNECT pain\n:tc=deep13:
muffin|muffin.deep13.com|Frank's machine:\
	:cm=CONNECT muffin\n:tc=deep13:
deep13:Gizmonics Institute terminal server:\
	:dv=/dev/cuaa2:br#38400:at=hayes:du:pa=none:pn=5551234:

これで、tip paintip muffin と実行すると pain や muffin のホストに接続することができ、 tip deep13 を実行するとターミナルサーバに接続します。

19.5.7. tip を使ってそれぞれのサイトの 複数の回線に接続できますか?

これは大学に電話回線がいくつかあって 数千人の学生が接続しようとする 場合によくある問題です。

あなたの大学のエントリを /etc/remote ファイルに作成して、pn のフィールドには @ を使います:

big-university:\
	:pn=\@:tc=dialout
dialout:\
	:dv=/dev/cuaa3:br#9600:at=courier:du:pa=none:

そして /etc/phone ファイルに大学の電話番号の一覧を書きます:

big-university 5551111
big-university 5551112
big-university 5551113
big-university 5551114

tip は一連の電話番号を試みて、 最終的に接続できなければあきらめます。 リトライを続けさせたい場合は、tip を while ループに入れて 実行します。

19.5.8. Ctrl+P を 1 回送るために Ctrl+P を 2 度押す必要があるのはなぜ?

Ctrl+P はデフォルトの force (強制) 文字であり、 tip に次の文字が リテラルデータであることを伝えます。force 文字は 変数の設定 を意味する ~s エスケープによって他の文字にすることができます。

~sforce=single-char と入力して改行します。single-char は、任意の 1 バイト文字です。 single-char を省略すると NUL 文字になり、これは Ctrl+2Ctrl+Space を押しても入力できます。また、 single-charShift+Ctrl+6 を割り当てる方法を使っているターミナルサーバもあります。

$HOME/.tiprc に次のように定義することで、任意の文字を force 文字として利用できます:

force=<single-char>

19.5.9. 打ち込んだ文字が突然すべて大文字になりました??

Ctrl+A を押してしまい、caps-lock キーが壊れている場合のために設計された tipraise character モードに入ったのでしょう。 既に述べたように ~s を使って、 raisechar をより適切な値に 変更してください。もしこれら両方の機能を使用しないのであれば、 force 文字と同じ設定にすることもできます。

以下は Ctrl+2Ctrl+A などを頻繁に使う必要のある Emacs ユーザにうってつけの .tiprc ファイルのサンプルです。

force=^^
raisechar=^^

^^ は Shift+Ctrl+6 です。

19.5.10. tip でファイルを転送するには?

もし他の Unix のシステムと接続しているなら、 ~p(put) や ~t(take) でファイルの送受信ができます。これらのコマンドは 相手のシステムの上で catecho を実行することで 送受信をします。 書式は以下のようになります:

~p ローカルのファイル名 [リモートのファイル名]

~t リモートのファイル名 [ローカルのファイル名]

この方法ではエラーチェックをおこないませんので、zmodem などの他のプロトコルを使った方がよいでしょう。

19.5.11. tip から zmodem を実行するには?

ファイルを受信するには、 リモート側で送信プログラムを起動します。そして ~C rz と入力すると、ローカル側へのファイルの受信が 始まります。

ファイルを送信するには、 リモート側で受信プログラムを起動します。そして ~C sz files と入力すると、 リモート側への ファイルの送信が始まります。

本文書、および他の文書は ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/ からダウンロードできます。

FreeBSD に関する質問がある場合には、 ドキュメント を読んだ上で <questions@FreeBSD.org> まで (英語で) 連絡してください。

本文書に関する質問については、 <doc@FreeBSD.org> まで電子メールを (英語で) 送ってください。