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

2. PPP の設定

2.1 /etc/ttydefs の編集

モデム設定の登録をします。 このファイルの内容は、TTY ポート速度やターミナルの設定情報であり、 ttymon という TTY ポートモニタによって参照されます。 このファイルへの登録は sttydefs というコマンドを使用します。 詳しくは man ttydefs, man sttydefs, man ttymon で調べて下さい。
  # sttydefs -a 38400M -n 38400M -i "38400 crtscts" -f "38400 crtscts"
-a オプションは 38400M という ttylabel 名で登録するという指定です。 以後の設定では、この 38400M というラベル名を何度も使用します。
-n オプションは nextlabel
-i オプションは initial flag
-f オプションは final flag
crtscts は、モデムとマシン間のフロー制御を RTS/CTS 信号を用いたハード ウェアフロー制御で行うという意味です。
なお X86 プラットフォームでは、115200 bps までサポートしているとの ことですが、私のモデムが Microcom V.34ESII という 28800 bps である ことと、参考文献に書いてある設定例が 38400 だったので、そのままでい くことにしました。

次に今登録した内容を確認してみます。

  # sttydefs -l 38400M
  ---------------------------------------------------------
  38400M:38400 crtscts:38400 crtscts  crtscts::38400M
  ---------------------------------------------------------
  ttylabel:       38400M
  initial flags:  38400 crtscts
  final   flags:  38400 crtscts
  autobaud:       no
  nextlabel:      38400M

[参考] ハードウェアフロー制御について浅田さん(asada@trust.co.jp)から 下記の情報を頂きました。

ハードウェアフロー制御には inbound と outbound の両方向を独立して設定 できます。というか、Solaris 2.4 + zs patch までは inbound のハードウェア フロー制御はありませんでした。(SunOS 4 も同様です) これが正式に含まれて リリースされたのは Solaris 2.5 からです。

Solaris 7 stty(1) より

crtscts (-crtscts)

出力ハードウェアフロー制御を可能にします。RTS ( 送信依頼) モデム制御信号を立てます。CTS(送信可能) 信号が立てられるまで、 出力を保留します。
crtsxoff (-crtsxoff)
入力ハードウェアフロー制御を可能にします。データ受け取りのた め RTS(送信依頼) モデム制御信号を立てます。RTSの信号がオフの 場合、入力を保留します。
ただ、これを設定しないがゆえに問題が出たというのは特に聞かないので、 あんまり気にしなくてもいいのかもしれないです。 (リングバッファがオーバフローしたというのは出るかも)

2.2 admintool でシリアルポートを設定する

  # admintool &
と入力し "Browse" メニューで "Serial Ports" をクリックすると以下のように 表示されます。
  ---------------------------------------------------------
  Port    Port monitor   Service Tag    Comment
  a       zsmon          ttya
  b       zsmon          ttyb
  ---------------------------------------------------------
Port a は DOS の COM1: で Port b は COM2: に相当します。 私は Port a (COM1:) にシリアルマウス、Port b (COM2:) にモデムを接続 しているので b の方をダブルクリックします。 すると以下のように表示されます。
  -----------------------------------------------------------------
  Template  [Modem-Dial out only]    Detail [X]Basic More Expert
  Port b    [X] Service enable       Baud Rate     [38400M]
                                     Terminal Type [      ]

      OK  Apply  Reset  Cancel  Help
  -----------------------------------------------------------------
Detail のところは Basic(初心者) More(中級) Expert(上級) の順に 設定項目が増えていきますが、ここでは Basic の設定だけで OK です。 私の場合モデムは ISP(Internet Service Provider) に発信するだけで 着信モードでは使いませんから Template で Modem-Dial out only (発信のみ)を選びました。次に Baud Rate は先ず other... を選んでから /etc/ttydefs Entry: で 38400M と入力しました。

OK をクリックして admintool を抜けます。

2.3 /etc/remote の編集

b ポートの接続を追加します。 このファイルは最初の17行が PCMCIA のシリアル/モデムカード用です。 またこのファイル内で使用するアトリビュート(属性)の意味が最後に書かれて います。例えば、
     dv    tty用のデバイス(device)
     pn    電話番号(phone number)
     br    ボーレート(baud rate)
です。このファイルを見ると
     cuab:dv=/dev/cua/b:br#2400
     dialers:\
            :dv=/dev/cua/b:
という行があります。最初の行のボーレートを38400bpsに変更します。
     cuab:dv=/dev/cua/b:br#38400

2.4 PPP と uucp パッケージの確認

  # pkginfo | more
で下記のパッケージが入っていることを確認します。

  SUNWapppr  PPP/IP 非同期 PPP デーモンの設定ファイル
  SUNWapppu  PPP/IP 非同期 PPP デーモン、および PPPログインサービス
  SUNWpppk   PPP/IP と IPダイアルアップのデバイスドライバ
  SUNWbnur   Networking UUCP ユーティリティ (Root用)
  SUNWbnuu   Networking UUCP ユーティリティ (ユーザ用)
次に
  # pkginfo -l SUNWapppr
で詳細を表示します。あるいは、
  # admintool &
で Browse ---> Software を選び "Point-to-Point Protocol 1.0.0" と "Basic Networking 7.2" をダブルクリ ックして詳細を表示することもできます。

[参考]UUCP の Mail や News の機能を使うわけではなく、単にダイヤルするため だけにこのパッケージを使います。詳しくは AnswerBook 2 の

        Solaris System Administrator Guide の
          TCP/IP and Data Communications Administaration Guide の
            Expanding Your Network with PPP の
              Installing the PPP Software や
              Understanding PPP Introducing the PPP
        また、
            Administarating UUCP Communications の
              Introducing the UUCP Database
をご覧下さい。

2.5 /etc/uucp/Systems の編集

PPP のダイアル接続は UUCP を用いて接続します。その設定ファイルです。 このファイルの最後に下記1行を追加します。ダイアルと認証に必要な情報 です。
  ppp-gw  Any  ACU  38400M  xxxxxxx

  最初の  "ppp-gw"  はマシン名。ppp gateway のホスト名。    
  2番目の "Any"     は時間。
  3番目の "ACU"     はデバイスタイプ。
                    ACU は Automatic Call unit の略で例えば高速モデム。
  4番目の "38400M"  は接続速度。admintool で設定した値。
  5番目の "xxxxxxx" はダイアルアップ先(プロバイダ)の電話番号です。

2.6 /etc/hosts の編集

PPP 接続時のゲートウェイ用のローカル IP アドレスを割り当てます。 インターネットの IP アドレスは接続時に PPP サーバにより動的に割当て られます。/etc/hosts は /etc/inet/hosts にリンクされていて、且つリード オンリーになっているので次のようにしました。
  # cd /etc/inet
  # chmod 644 hosts  (書き換え可能にする)
  # vi hosts

       127.0.0.1     localhost
       192.168.1.50  sola7
       192.168.1.51  ppp-gw  (この1行を追加する)

  # chmod 444 hosts  (リードオンリーに戻す)

2.7 /etc/uucp/Devices の編集

  ACU cua/b - Any hayes
  Direct  cua/b - Any direct

  この2行の Any を 38400M に修正します。

  ACU cua/b - 38400M hayes
  Direct  cua/b - 38400M direct

(注) Software Design 1999年3月号の記事では "38400" となっていますが誤りで "38400M" です。

2.8 /etc/uucp/Dialers の編集

モデムに送出する設定コマンド列の定義です。自分のモデムと電話回線の 種類などに合わせて修正します。下記のような行を見つけて下さい。

  hayes =,-, "" \dA\pTE1V1X1Q0S2=255S12=255\r\c OK\r\EATDT\T\r\c
  CONNECT STTY=crtscts
上記は実際には1行です。 \d はディレイ2秒、\p はポーズ(1/4〜1/2秒)、\r はキャリッジリターン、 \c は改行無しの意味です。「ハードウェアフロー制御をする」という意味の STTY=crtscts を最後に追加します。

私の家の電話回線は、トーンダイアル(ピッ、ポッ、パッ)ではなくパルス ダイアル(パラパラパラ・・・)なので ATDT ではなく ATDP に変更しました。

[参考] モデム設定の文字列は、モデムの取扱説明書で確認して下さい。また、 Windows95 で動作しているモデムならば、どのようなコマンドを出して いるかが参考になります。これは次のようにします。 [コントロールパネル] ---> [モデム] ---> [情報] ---> [プロパティ] ---> [接続] ---> [詳細設定] で [ログの記録] をチェックする。 これでダイアルをした後、C:¥WINDOWS¥MODEMLOG.TXT というログファイル が作られます。Windows が設定している通りでなくても動作しますから、 モデムの設定に問題があると思われる場合に参考にすれば良いでしょう。

2.9 /etc/asppp.cf (PPP接続の設定ファイル)の編集

  (1)  ifconfig ipdptp0 plumb sola7 ppp-gw up
  (2)  path
  (3)        inactivity_timeout   300     # Approx. 5 minutte
  (4)        interface            ipdptp0
  (5)        debug_level          1
  (6)        negotiate_address    on
  (7)        peer_system_name     ppp-gw  # The name we log in (also in
  (8)                                     # /etc/uucp/Systems
  (9)        default_route
  (10)       will_do_authentication  pap
  (11)       pap_id                  xxxxxxxx
  (12)       pap_password            xxxxxxxx
上記の(1)〜の番号は説明用に付けたもので実際にはありません。
   1行目: ipdptp0   インタフェース
          plumb     アドレスファミリー
          sola7     ローカルホスト名
          ppp-gw    /etc/hosts に追加した PPPの gateway 名
   3行目: タイムアウトによる強制切断の時間(単位:秒)
   4行目: ダイアルアップに使用されるデバイス名
   5行目: デバッグ情報の出力レベル。1〜9。数字が大きい程詳しい。トラブった時
          は8にすると良い。
   6行目: 動的 IP アドレスの割当てを ON
   7行目: リモートホスト名
   9行目: これを入れておくと接続先をデフォルトルータにする
  10行目: 認証タイプ (pap または chap) 上記は PAP の例です。
          何れのタイプなのかは、プロバイダの説明書をご覧下さい。
  11行目: ユーザ名   (プロバイダに登録したもの)
  12行目: パスワード (プロバイダに登録したもの)

  認証タイプが CHAP の場合 10〜12行目は以下のようにします。
  (10)       will_do_authentication  chap
  (11)       chap_name               xxxxxxxx
  (12)       chap_secret             xxxxxxxx
このファイルは、ユーザ名とパスワードが書かれていてセキュリティ上 重要なファイルです。必要に応じパーミッションを設定して下さい。 (デフォルトでは -rwxr--r-- root sys となっています) 質問をする時など、設定の内容を他人に見せる場合は、ユーザ名とパスワー ドの部分は伏せ字にするよう注意が必要です。

2.10 /etc/resolv.conf の編集

インターネットで DNS(Domain Name Service) を使用するための設定です。 このファイルは無いので新たに作成します。 内容はプロバイダの説明書を参考にして下さい。
    domain      yk.rim.or.jp 
    nameserver  202.247.130.5
    nameserver  202.247.130.37
(注) この/etc/resolv.conf と、次の /etc/nsswitch.conf の設定はインス トール時にネームサービスの選択(NIS+, NIS, None, etc) の何れを選択 したかにより異なります。ちなみにここでの設定例は None を選択した 場合のものです。詳しくは佐藤和幸さんの「いつも心に太陽を」という ホームページ(以前は「Solaris 補完計画」というタイトルでした)の DNS に関する説明をご覧下さい。分かり易く解説されています。

2.11 /etc/nsswitch.conf の編集

DNS を有効にするためのネームサービス・スイッチ用の設定です。
    passwd:      files
    group:       files
    hosts:       files
    networks:    files
     ...          ...
     ...          ...
デフォルトでは上記のようになっていますが、hosts: の行を
    hosts:       files dns
のように dns を追加します。


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