<!-- $Id: dialout.sgml,v 1.4 1997/02/22 13:00:51 peter Exp $ -->
<!-- The FreeBSD Japanese Documentation Project -->
<!--  Original revision: 1.5 -->

<!-- This is an SGML document in the Linuxdoc DTD of the Tutorial for
     Configuring a FreeBSD for Dialout Services.

<!DOCTYPE linuxdoc PUBLIC "-//FreeBSD//DTD linuxdoc//EN">

<linuxdoc>
  <article>
      <title>Dialout
      <author>FAQ
      <date>24 NOV 1996, (c) 1996

      <abstract>この章は FreeBSD に接続しているモデムからダイアルアウトするための
	基本的な情報について説明しています. この情報は将来 PPP 接続をおこなう場合の
	第一のステップとなります. 
      </abstract>

    <toc>
-->

<sect><heading>ダイアルアウトサービス<label id="dialout"></heading>

<p><em>原作: FAQ からの情報</em>
<p><em>訳: 丸山剛司 <url url="mailto:tmaruya@nnc.or.jp" 
name="<tmaruya@nnc.or.jp>">.
<newline>31 December 1996.</em>

以下はモデムを利用して他のコンピュータと接続する方法を説明しています. 
これはリモートホストとターミナル接続を確立するための適切な方法です. 
<p>これは BBS に接続するときによく使います. 
<p>この種の接続は PPP 接続に問題がある場合, Internet 上にあるファイルを
転送するのに非常に役に立ちます. FTP で何らかのファイルを転送したいのに 
PPP 接続を確立できない場合は, ファイルを FTP 転送するためにターミナルセッション
を利用します. そして ZMODEM を利用してファイルを転送します. 
<sect1>
	<heading><tt/tip/ や <tt/cu/ が実行できないはなぜ?</heading>
	<p>
	 あなたのシステムで <tt/tip/ や <tt/cu/ というプログラムは
	 <tt/uucp/ や <tt/dialer/ というグループに所属しているユーザのみが
	 実行できるようになっているのでしょう. リモートホストやモデムを
	 利用できる <tt/dialer/ のグループにあなたのアカウントを
	 加えましょう. 

	 もしくは下記のコマンドを使うことによって, そのシステムで
	 <tt/tip/ や <tt/cu/ を誰でも使えるようになります:
	 <verb>
	   chmod 4511 /usr/bin/tip
	 </verb>
	 このコマンドは <tt/cu/ に対しておこなう必要はありません, それは 
	 <tt/cu/ は <tt/tip/ に対するハードリンクだからです. 

	<sect1>
	  <heading>私の Hayes モデムはサポートされていません, どうしよう?
	  </heading>
	  <p>
	    実際, <tt/tip/ の マニュアルページは古くなっています. 既に Hayes 
	    ダイアラが組み込まれています. <tt>/etc/remote</tt> ファイル中で
	    ``<tt/at=hayes/'' を使ってください. 

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

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

	    実際, デフォルトの <tt/tip/ は Hayes の完全なサポートを
	    しているわけではありません. 解決方法は 
	    <tt>/usr/src/usr.bin/tip/tip</tt> の下の <tt/tipconf.h/ 
	    を変更することです. もちろんこれにはソース配布ファイルが必要です. 

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

	 <sect1>
	   <heading>これらの AT コマンドを入力するには?<label id="direct-at">
	   </heading>
	   <p>
	    <tt>/etc/remote</tt> ファイルの中で ``<tt/direct/'' エントリを作ります. 
	    たとえばモデムが 1番目のシリアルポートである <tt>/dev/cuaa0</tt>
	    に接続されている場合, 次のようにします:
	    <verb>
	      cuaa0:dv=/dev/cuaa0:br#19200:pa=none
	    </verb>
	    モデムがサポートする最大の bps レートを br フィールドに使います. 
	    そして ``<tt/tip cuaa0/'' を実行すると, モデムが利用できるようになります. 

	    <tt>/dev/cuaa0</tt>がシステムに存在しない場合は, 次のようにします:
	    <verb>
	    cd /dev
	    ./MAKEDEV cuaa0
	    </verb>
	   <p>
	    または root になって以下のように cu コマンドを実行します:
	    <verb>
	     cu -l ``line'' -s ``speed''
	    </verb>
	    line にはシリアルポートを指定します (例えば <tt>/dev/cuaa0</tt>). 
	    そして speed には接続する速度を指定します (例えば <tt>57600</tt>). 
	    その後 AT コマンドを実行したら, <tt>~.</tt> と入力すれば終了します. 

	 <sect1>
	   <heading>pn 機能の <tt/@/ 記号が使えません!</heading>
	   <p>
	    電話番号 (pn) 機能の中での <tt/@/ 記号は, tip に
	    <tt>/etc/phone</tt> にある電話番号を参照するように伝えます. 
	    しかし <tt/@/ の文字は <tt>/etc/remote</tt> のような
	    設定ファイルの中では特殊文字となります. 
	    バックスラッシュを使ってエスケープをおこないます:
	    <verb>
	     pn=\@
	    </verb>

	 <sect1>
	   <heading>コマンドラインから電話番号を指定するには?</heading>
	   <p>
	    ``<tt/generic/'' エントリと呼ばれるものを <tt>/etc/remote</tt>
	    に追加します. 例えば次のようにします:
	    <verb>
	    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:
	    </verb>

	    そして ``<tt/tip -115200 5551234/'' のように利用できます. 
	    <tt/tip/ より <tt/cu/ を使いたい場合, 
	    <tt/cu/ の generic エントリを使います:
	    <verb>
	      cu115200|Use cu to dial any number at 115200bps:\
	      :dv=/dev/cuaa1:br#57600:at=hayes:pa=none:du:
	    </verb>
	    そして ``<tt/cu 5551234 -s 115200/'' と実行します. 

	 <sect1>
	   <heading>毎回 bps レートを入力しなければいけませんか?</heading>
	   <p>
	    <tt/tip1200/ や <tt/cu1200/ 用のエントリを記述し, 
	    適切な通信速度を br フィールドに設定します. 
	    <tt/tip/ は 1200 bps が正しいデフォルト値であるとみなすので, 
	    ``<tt/tip1200/'' エントリを参照します. もちろん 1200 bps 
	    を使わなければならないわけではありません. 

	 <sect1>
	   <heading>ターミナルサーバを経由して複数のホストへアクセスしたいんです. 
	   </heading>
	    <p>
	     毎回接続されるのを待って ``<tt/CONNECT &lt;host&gt;/'' と入力する
	     かわりに, tip の <tt/cm/ 機能を使います. 
	     例えば, <tt>/etc/remote</tt> に次のようなエントリを追加します:
	    <verb>
	      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/cua02:br#38400:at=hayes:du:pa=none:pn=5551234:
	    </verb>

	     これで, ``<tt/tip pain/'' や ``<tt/tip muffin/'' と実行すると
	     pain や muffin のホストに接続することができ, 
	     <tt/tip deep13/ を実行するとターミナルサーバに接続します. 

	 <sect1>
	   <heading>tip を使ってそれぞれのサイトの複数の回線に接続できますか?
	   </heading>
	   <p>
	    これは大学に電話回線がいくつかあって数千人の学生が接続しようとする
	    場合によくある問題です. 
	   <p>
	    あなたの大学のエントリを <tt>/etc/remote</tt> ファイルに作成して, 
	    <tt/pn/ のフィールドには <tt>@</tt> を使います:
	    <verb>
	     big-university:\
	     :pn=\@:tc=dialout
	     dialout:\
	     :dv=/dev/cuaa3:br#9600:at=courier:du:pa=none:
	    </verb>

	    そして <tt>/etc/phone</tt> ファイルに大学の電話番号の一覧を書きます:
	    <verb>
	     big-university 5551111
	     big-university 5551112
	     big-university 5551113
	     big-university 5551114
	    </verb>

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

	 <sect1>
	   <heading>CTRL+P を 1回送るために 2度押す必要があるのはなぜ?
	   </heading>
	   <p>
	    CTRL+P は通常 ``force (強制)'' 文字であり, <tt/tip/ に次の文字が
	    リテラルデータであることを伝えます. force 文字は「変数の設定」
	    を意味する <tt/~s/ エスケープによって他の文字にすることができます. 

	    ``<tt/~sforce=&lt;single-char&gt;/'' と入力して改行します. 
	    <tt/&lt;single-char&gt;/ は, 任意の 1バイト文字です. 
	    <tt/&lt;single-char&gt;/ を省略すると NUL 文字になり, 
	    これは CTRL+2 や CTRL+SPACE を押しても入力できます. 
	    いくつかのターミナルサーバで使われているのを
	    見ただけですが, <tt/&lt;single-char&gt;/ に SHIFT+CTRL+6 
	    に割り当てるのもよいでしょう. 

	    <tt>&dollar;HOME/.tiprc</tt> に次のように定義することで, 
	    任意の文字を force 文字として利用できます:
	    <verb>
	      force=<single-char>
	    </verb>

	 <sect1>
	   <heading>打ち込んだ文字が突然すべて大文字になりました??</heading>
	   <p>
	    CTRL+A を押してしまい、caps-lock キーが壊れている場合のために設計された 
	    tip の ``raise character'' モードに入ったのでしょう. 
	    既に述べたように <tt/~s/ を使って, ``raisechar'' をより適切な値に
	    変更してください. もしこれら両方の機能を使用しないのであれば, 
	    force 文字と同じ設定にすることもできます. 

	    以下は CTRL+2 や CTRL+A などを頻繁に使う必要のある Emacs 
	    ユーザにうってつけの. tiprc ファイルのサンプルです:
	    <verb>
	      force=^^
	      raisechar=^^
	    </verb>
	    ^^ は SHIFT+CTRL+6 です. 

	 <sect1>
	   <heading><tt/tip/ でファイルを転送するには?</heading>
	   <p>
	    もし他の UNIX のシステムと接続しているなら, <tt/~p/(put) や 
	    <tt/~t/(take) でファイルの送受信ができます. これらのコマンドは
	    相手のシステムの上で ``<tt/cat/'' や ``<tt/echo/'' を実行することで
	    送受信をします. 書式は以下のようになります:
	    <verb>
	      ~p <ローカルのファイル名> [<リモートのファイル名>]
	      ~t <リモートのファイル名> [<ローカルのファイル名>]
	    </verb>

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

	 <sect1>
	   <heading><tt/tip/ から zmodem を実行するには?</heading>
	   <p>
	    ファイルを受信するには, リモート側で送信プログラムを起動します. 
	    そして ``<tt/~C rz/'' と入力すると, ローカル側へのファイルの受信が
	    始まります. 

	    ファイルを送信するには, リモート側で受信プログラムを起動します. 
	    そして ``<tt/~C sz &lt;files&gt;/'' と入力すると, リモート側への
	    ファイルの送信が始まります. 
</sect>
