ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Oracle Solaris 11.1 での UUCP および PPP を使用したシリアルネットワークの管理 Oracle Solaris 11.1 Information Library (日本語) |
9. Asynchronous Solaris PPP から Solaris PPP 4.0 への移行 (タスク)
/etc/uucp/Systems ファイルの System-Name フィールド
/etc/uucp/Systems ファイルの Time フィールド
/etc/uucp/Systems ファイルの Type フィールド
/etc/uucp/Systems ファイルの Speed フィールド
/etc/uucp/Systems ファイルの Phone フィールド
/etc/uucp/Systems ファイルの Chat-Script フィールド
/etc/uucp/Systems ファイルでのハードウェアフロー制御
/etc/uucp/Systems ファイルでのパリティーの設定
/etc/uucp/Devices ファイルの Type フィールド
Devices ファイルおよび Systems ファイルの Type フィールド
/etc/uucp/Devices ファイルの Line フィールド
/etc/uucp/Devices ファイルの Line2 フィールド
/etc/uucp/Devices ファイルの Class フィールド
/etc/uucp/Devices ファイルの Dialer-Token-Pairs フィールド
/etc/uucp/Devices ファイルの Dialer-Token-Pairs フィールドの構造
/etc/uucp/Devices ファイル内のプロトコル定義
UUCP /etc/uucp/Permissions ファイル
UUCP NOREAD オプションと NOWRITE オプション
/etc/uucp/Dialers ファイルには、よく使用される多くのモデムに関するダイアリング指示が入っています。標準外のモデムの使用や、UUCP 環境のカスタマイズを予定している場合以外は、通常このファイルのエントリの変更や追加は必要ありません。しかし、このファイルの内容と、Systems ファイルや Devices ファイルとの関係は理解しておく必要があります。
このファイルの中のテキストは、回線をデータ転送に使用できるようにするために、最初に行わなければならない対話を指定します。chat スクリプトと呼ばれるこの対話は、通常は送受信される一連の ASCII 文字列で、電話番号をダイアルするためによく使用されます。
「UUCP /etc/uucp/Devices ファイル」の例に示したように、Devices ファイルエントリの 5 番目のフィールドは Dialers ファイルへのインデックスか、または特殊ダイアラタイプ (TCP、TLI、TLIS など) です。uucico デーモンは、Devices ファイルの 5 番目のフィールドを、Dialers ファイルの各エントリの最初のフィールドと突き合わせます。さらに、Devices の 7 番目の位置から始まる奇数番号の各フィールドは、Dialers ファイルへのインデックスとして使用されます。これらが一致すると、その Dialers のエントリがダイアラ対話を行うために解釈されます。
Dialers ファイルの各エントリの構文は次のとおりです。
dialer substitutions expect-send
次に、US Robotics V.32bis モデム用のエントリの例を示します。
例 12-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
Dialer フィールドのエントリです。Dialer フィールドは、Devices ファイルの中の 5 番目以降の奇数番号のフィールドと突き合わされます。
Substitutions フィールドのエントリです。Substitutions フィールドは変換文字列です。各文字ペアの最初の文字が 2 番目の文字に変換されます。このマッピングは通常、 = と - を、「発信音待ち」と「一時停止」用としてダイアラが必要とする文字に変換するために使用されます。
Expect-Send フィールドのエントリです。Expect-Send フィールドは文字列です。
Expect-Send フィールドのエントリの続きです。
次に、Dialers ファイルのエントリの例をいくつか示します。これは、Solaris インストールプログラムの一環として UUCP をインストールするときに提供されるファイルです。
例 12-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 文字列でよく使用されるエスケープ文字を示します。
表 12-3 /etc/uucp/Dialers で使用するエスケープ文字
|
次に示すのは、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 (一時停止) で置き換えられるようになります。
上記の行の残りの部分に指定されているハンドシェークの働きは、次のとおりです。
"" – 何も待たない (つまり次へ進む)
\d – 2 秒間の遅延のあとキャリッジリターンを送信する
> – > を待つ
Q\c – キャリッジリターンを付けずに Q を送信する
: – : を待つ
\d- – 2 秒間の遅延のあと - とキャリッジリターンを送信する
> – > を待つ
s\p9\c – s を送信し、一時停止し、9 を送信するが、キャリッジリターンは送信しない
)-W\p\r\ds\p9\c-) – ) を待つ。) が受信されない場合は、- 文字の間の文字列を処理する。つまり、W を送信し、一時停止し、キャリッジリターンを送信し、遅延し、s を送信し、一時停止し、9 を送信し、キャリッジリターンを送信しないで ) を待つ
y\c – キャリッジリターンを付けずに y を送信する
: – : を待つ
\E\TP – \E はエコーチェックを有効にする。これ以降は、1 文字送信するたびに、UUCP はその文字が受信されるまで待ってから処理を行う。次に電話番号を送信する。\T は、引数として渡された電話番号をとることを意味する。\T は Dialcodes 変換と、このエントリのフィールド 2 で指定されたモデム機能変換を適用する。次に、\T は P とキャリッジリターンを送信する
> – > を待つ
9\c – 改行を付けずに 9 を送信する
OK – 文字列 OK を待つ
擬似送信文字列 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 ファイルのエントリの中でも使用できます。
場合によっては、呼び出そうとしているシステムがポートのパリティーを検査し、パリティーに誤りがあると回線を切断することがあります。そのため、パリティーのリセットが必要になります。expect-send の対を成す文字列として P_ZERO を使用すると、パリティーが 0 に設定されます。
foo =,-, "" P_ZERO "" \dA\pTE1V1X1Q0S2=255S12=255\r\c OK\r\EATDT\T\r\c CONNECT
次に、expect-send 文字列ペアのあとに続けることができるパリティー文字列ペアを示します。
パリティーを偶数 (デフォルト) に設定する
パリティーを基数に設定する
パリティーを 1 に設定する
この擬似送信文字列は、Systems ファイルのエントリの中でも使用できます。