Solaris のシステム管理 (ネットワークサービス)

UUCP /etc/uucp/Dialers ファイル

/etc/uucp/Dialers ファイルには、よく使用される多くのモデムに関するダイアリング指示が入っています。標準外のモデムの使用や、UUCP 環境のカスタマイズを予定している場合以外は、通常このファイルのエントリの変更や追加は必要ありません。しかし、このファイルの内容と、Systems ファイルや Devices ファイルとの関係は理解しておく必要があります。

このファイルの中のテキストは、回線をデータ転送に使用できるようにするために、最初に行わなければならない対話を指定します。chat スクリプトと呼ばれるこの対話は、通常は送受信される一連の ASCII 文字列で、電話番号をダイアルするためによく使用されます。

「UUCP /etc/uucp/Devices ファイル」の例に示したように、Devices ファイルエントリの 5 番目のフィールドは Dialers ファイルへのインデックスか、または特殊ダイアラタイプ (TCPTLITLIS など) です。uucico デーモンは、Devices ファイルの 5 番目のフィールドを、Dialers ファイルの各エントリの最初のフィールドと突き合わせます。さらに、Devices の 7 番目の位置から始まる奇数番号の各フィールドは、Dialers ファイルへのインデックスとして使用されます。これらが一致すると、その Dialers のエントリがダイアラ対話を行うために解釈されます。

Dialers ファイルの各エントリの構文は次のとおりです。


dialer   substitutions   expect-send

次に、US Robotics V.32bis モデム用のエントリの例を示します。


例 26–10 /etc/uucp/Dialers ファイルのエントリ


usrv32bis-e    =,-,  ""    dA\pT&FE1V1X1Q0S2=255S12=255&A1&H1&M5&B2&W\r\c OK\r 
                           \EATDT\T\r\c CONNECT\s14400/ARQ STTY=crtscts

usrv32bis-e

Dialer フィールドのエントリです。Dialer フィールドは、Devices ファイルの中の 5 番目以降の奇数番号のフィールドと突き合わされます。

=,-, ""

Substitutions フィールドのエントリです。Substitutions フィールドは変換文字列です。各文字ペアの最初の文字が 2 番目の文字に変換されます。このマッピングは通常、 =- を、「発信音待ち」と「一時停止」用としてダイアラが必要とする文字に変換するために使用されます。

dA\pT&FE1V1X1Q0S2=255S12=255&A1&H1&M5&B2&W\r\c OK\r

Expect-Send フィールドのエントリです。Expect-Send フィールドは文字列です。

\EATDT\T\r\c CONNECT\s14400/ARQ STTY=crtscts

Expect-Send フィールドのエントリの続きです。

次に、Dialers ファイルのエントリの例をいくつか示します。これは、Solaris インストールプログラムの一環として UUCP をインストールするときに提供されるファイルです。


例 26–11 /etc/uucp/Dialers の抜粋


penril	=W-P "" \d > Q\c : \d- > s\p9\c )-W\p\r\ds\p9\c-) y\c : \E\TP > 9\c OK 
 
ventel	=&-%	"" \r\p\r\c $ <K\T%%\r>\c ONLINE! 
 
vadic	=K-K	"" \005\p *-\005\p-*\005\p-* D\p BER? \E\T\e \r\c LINE 
 
develcon	""	"" \pr\ps\c est:\007 
 
\E\D\e \n\007 micom	""	"" \s\c NAME? \D\r\c GO 
 
hayes	=,-,	"" \dA\pTE1V1X1Q0S2=255S12=255\r\c OK\r \EATDT\T\r\c CONNECT 
 
#   Telebit TrailBlazer 
tb1200	=W-,	"" \dA\pA\pA\pTE1V1X1Q0S2=255S12=255S50=2\r\c OK\r 
\EATDT\T\r\c CONNECT\s1200   
tb2400	=W-,	"" \dA\pA\pA\pTE1V1X1Q0S2=255S12=255S50=3\r\c OK\r 
\EATDT\T\r\c CONNECT\s2400   
tbfast	=W-,	"" \dA\pA\pA\pTE1V1X1Q0S2=255S12=255S50=255\r\c OK\r 
\EATDT\T\r\c CONNECT\sFAST 
 
# USrobotics, Codes, and DSI modems 
 
dsi-ec  =,-,    "" \dA\pTE1V1X5Q0S2=255S12=255*E1*F3*M1*S1\r\c OK\r \EATDT\T\r\c 
CONNECT\sEC STTY=crtscts,crtsxoff 
 
dsi-nec =,-,    "" \dA\pTE1V1X5Q0S2=255S12=255*E0*F3*M1*S1\r\c OK\r \EATDT\T\r\c CONNECT 
STTY=crtscts,crtsxoff 
 
usrv32bis-ec =,-,  "" \dA\pT&FE1V1X1Q0S2=255S12=255&A1&H1&M5&B2&W\r\c OK\r \EATDT\T\r\c 
CONNECT\s14400/ARQ STTY=crtscts,crtsxoff 
 
usrv32-nec =,-, "" \dA\pT&FE1V1X1Q0S2=255S12=255&A0&H1&M0&B0&W\r\c OK\r \EATDT\T\r\c 
CONNECT STTY=crtscts,crtsxoff 
 
codex-fast =,-, "" \dA\pT&C1&D2*MF0*AA1&R1&S1*DE15*FL3S2=255S7=40S10=40*TT5&W\r\c OK\r 
\EATDT\T\r\c CONNECT\s38400 STTY=crtscts,crtsxoff 
 
tb9600-ec =W-,  "" \dA\pA\pA\pTE1V1X1Q0S2=255S12=255S50=6\r\c OK\r 
\EATDT\T\r\cCONNECT\s9600 STTY=crtscts,crtsxoff 
 
tb9600-nec =W-, "" \dA\pA\pA\pTE1V1X1Q0S2=255S12=255S50=6S180=0\r\c OK\r \EATDT\T\r\c 
CONNECT\s9600 STTY=crtscts,crtsxoff

次の表に、Dialers ファイルの send 文字列でよく使用されるエスケープ文字を示します。

表 26–3 /etc/uucp/Dialers で使用するエスケープ文字

文字 

説明 

\b

バックスペース文字を送信または想定します。 

\c

改行、キャリッジリターンを抑止します。 

\d

約 2 秒の遅延が生じます。 

\D

Dialcodes 変換なしの電話番号またはトークン

\e

エコーチェックを使用しません。 

\E

低速デバイス用にエコーチェックを使用します。 

\K

ブレーク文字を挿入します。  

\n

改行文字を送信します。 

\nnn

8 進数値を送信します。使用できるその他のエスケープ文字については、「UUCP /etc/uucp/Systems ファイル」を参照してください。

\N

NULL 文字 (ASCII NUL) を送信または想定します。 

\p

約 12 から 14 秒の一時停止が生じます。 

\r

リターン。  

\s

スペース文字を送信または想定します。 

\T

Dialcodes 変換を伴う電話番号またはトークン。

次に示すのは、Dialers ファイルの penril エントリです。


penril =W-P "" \d > Q\c : \d- > s\p9\c )-W\p\r\ds\p9\c-) y\c : \E\TP > 9\c OK 

最初に、電話番号引数の置換メカニズムが確立されます。その結果、= はすべて W (発信音待ち) で置き換えられ、- はすべて P (一時停止) で置き換えられるようになります。

上記の行の残りの部分に指定されているハンドシェークの働きは、次のとおりです。

/etc/uucp/Dialers ファイルによるハードウェアフロー制御の有効化

擬似送信文字列 STTY=value を用いることによっても、モデムの特性を設定できます。たとえば、STTY=crtscts を使用すると、出力ハードウェアフロー制御が可能になります。 STTY=crtsxoff を使用すると、入力ハードウェアフロー制御が可能になります。STTY=crtscts,crtsxoff を使用すると、入出力の両方のハードウェアフロー制御が可能になります。

STTY はすべての stty モードを受け入れます。詳細は、stty(1)termio(7I) のマニュアルページを参照してください。

次の例は、Dialers ファイルエントリ内でハードウェアフロー制御を使用可能にしています。


dsi =,–, "" \dA\pTE1V1X5Q0S2=255S12=255*E1*F3*M1*S1\r\c OK\r \EATDT\T\r\c 
CONNECT\sEC STTY=crtscts 

この擬似送信文字列は、Systems ファイルのエントリの中でも使用できます。

/etc/uucp/Dialers ファイルでのパリティーの設定

場合によっては、呼び出そうとしているシステムがポートのパリティーを検査し、パリティーに誤りがあると回線を切断することがあります。そのため、パリティーのリセットが必要になります。expect-send の対を成す文字列として P_ZERO を使用すると、パリティーが 0 に設定されます。


foo =,-, "" P_ZERO "" \dA\pTE1V1X1Q0S2=255S12=255\r\c OK\r\EATDT\T\r\c CONNECT 

次に、expect-send 文字列ペアのあとに続けることができるパリティー文字列ペアを示します。

"" P_EVEN

パリティーを偶数 (デフォルト) に設定する

"" P_ODD

パリティーを基数に設定する

"" P_ONE

パリティーを 1 に設定する

この擬似送信文字列は、Systems ファイルのエントリの中でも使用できます。