OS/2の基礎知識
第三部


各章の題名をクリックすると、この目次に戻ります。

目次

ネットワーク

計算機の間を物理的に接続するには、いくつかの異なった方法がある:シリアル ポート、パラレルポート、特殊な媒体用カード。特殊な媒体には、イーサネット Ethernet、トークンリング Token Ring、ISDN、などがある。シリアルポートを 利用する場合も、直接ヌルモデムケーブルで接続することやモデムを介すること ができる(後者の場合、両方のモデムの間に電話回線を介在させることも可能で あろ)。私が思ってもみなかった他の方法もありうるだろう。

物理的な媒体を選んでも、まだ選ばなければならないものがある。プロトコルで ある。プロトコルはネットワークメッセージの書式のような物事を決める規則の 集まりである。私は詳しく調べたことがないが、OS/2にはいくつかの異なったプ ロトコルをサポートしていることは知っている。ネットワークサポートを導入す る際、使いたいと思うプロトコルを指定する(訳注:複数指定できる)。

ネットワーク関係のソフトウェアはほとんど常に複数のレイヤ(層)に分けられ る。そうするには、少なくとも2つの理由がある:

私に判る範囲では、OS/2のネットワーク関係ソフトウェアは4つのレイヤに分け られるようだ。(4というのは十分とはいえない数であるが、レイヤの中に、更 に階層分けがあるのだと思う。) それらのレイヤは:

TCP/IPという言葉は、ネットワークの実装法の一つを指し、TCPを上位の部分に、 IPを低位の部分に利用するものである。これが最もよく知られたネットワークの 実装であるので、OS/2の設計者はTCP/IPという名前をネットワーク用パッケージ 全体を指す「一般的」な名前として利用している。厳密に言えばこれは言葉の濫 用である;しかしそれになれてしまっても問題はない。文書全体が指すものがそ れだからである。

この文書では、OS/2のネットワークが提供するものを概観することにする。私自 身の経験は2つの場合に限られる:イーサネット上でのTCP/IP、モデムとPPPと によるダイヤルアップである。もっと詳しいことを知りたいなら、3つの優れた サイトがあるので、そこを見るとよい:

IPアドレス

世界規模のネットワークには、それに繋がった全ての機械が固有のアドレスを 持つことが必要である。これを確実にするために、アドレスを管理する中央調 整機構(InterNIC)がある。 ネットワークアダプタを導入する時、アドレスを入力する。アダプタはそのア ドレスに応答し、それ以外には応答しないよう設定される。(より正確には、 アダプタは一台一台異なる48ビットのアドレスに応答する。LANのソフトウェア が48ビットの金物アドレス(訳注:MACのことだと思う)と32ビットのIPアド レスとの翻訳を行う)。アドレスを得るの にInterNICに直接交渉する必要はない。企業や他の大きな組織にはある範囲の アドレスが割り当てられ、その組織のユーザは割り当てられた範囲の中で自分 のアドレスをもらうのが普通である。

それらのアドレスは32ビットの数である。(疑いなくいつの日か、もっと長い アドレスに切り換えなければならない時が来る - 電話番号を長くする必要が あった国と、全く同様である - が、いまのところは32ビットでなんとかなっ ている。) 読みやすくするため、普通8ビット毎に4つに分け、それぞれの間 を点で区切り、それぞれの8ビットは10進数で表記するソフトウェアによって は、そのように書かないと受付けてくれないのもある。これが 159.87.6.215 といった数を見かける理由である - 単に32ビット数を符号にする便利なやり 方の一つである。

(なお、これは私が無作為に選んだ数である。このアドレスに誰が属するか 私は全く知らない;これを読んでいる人の中に、くだらないメッセージをこ のアドレスに送ってやろうなどと思う人が出ないことを切に願う)。

アドレスは「サブネットマスク」で決められる階層性をもっている。例えば、 私の計算機の一つは255.255.254.0というサブネットマスクを持ったLANに繋がっ ている。これは私の機械の32ビットアドレスは23ビットのサブネット識別子と 9ビットのローカルなアドレスからなっていることを意味する。最初の23ビット が私の機械と同じアドレスを持つ全ての機械は、同じサブネットに属する。ブ ロードキャストメッセージ、つまりそのサブネット内の全ての機械に送られる メッセージを扱う時などに影響がある。また、経路決定にも役に立つ。「ロー カル」な機械ともっと遠くにある機械とをソフトウェアで区別できるからだ。

モデムからダイヤルし、ネットワークアダプタを使わない時はどうか。この場 合、加入しているプロバイダ Internet Service Provider (ISP)、つまり、 ダイヤルインサーバを走らせている会社が、「自分の」アドレス溜めの中から IPアドレスを割り当てる。通常ISPは会員全員分のIPアドレスを持ってはおらず、 「IPの動的割り当て」という仕掛けを使う。ダイヤルインする度にアドレスを 割り当てるので、次回のダイヤルインでは異なったアドレスが割り当てられる 可能性がある。

第3の可能性は、外部世界に接続されていない、ローカルなネットワークを使 う場合である。例えば3台計算機を家に持っていて、それらの間でやりとりし たいとする。こんな場合は、他の機械のアドレスと重複する危険性がないので IPアドレスを好きなように付けていい。この場合でも将来ネットワークが拡大 する可能性を考えてInterNICが割り当てた正当なアドレスを使うのがよい。 (訳注:ローカルに使っていいアドレスが決められている。例えば192.168.0.0 から192.168.0.255まではローカルなIPとして自由に使っていい)

ノード名

32ビットのノード識別子はソフトウェアにとっては便利だが、人間にとっては 決して読みやすいと言えない。ユーザにとって便利なように、各ノードに、読 める文字列で名前をつける。

ノード番号と違い、この名前はアダプタには蓄えられない。ローカルのネーム サーバの表の形で(通常LANの管理者によって)維持される。ネームサーバの話 題は後に触れる。

Local area networks, wide area networks

LANは小さな土地に - 一つの部屋かも、幾つかの隣接した建物かも - 限局し たネットワークである。LANというからには、それは一様でなければならない。 同じ通信プロトコルがLAN全体で使われていなければならない。

LANは典型的には単純なトポロジを持っている:リング、バス、スターなど 単純なものである。単純なトポロジのお陰で、経路問題も簡単になる。LAN上の いかなる機械も、同じLANの別の機械に容易にメッセージを送る事ができる。例 えばリング状ネットワークでは、リングに沿ってメッセージを送りさえすれば よい。宛先の機械がメッセージのヘッダに添付されたアドレスを認識した時点で メッセージはLANから取り出され、消滅する。もちろんメッセージが無限に回っ てしまうことがないように手を打たなければならないし、これもエラーからの 回復の一つの面に過ぎない。エラー回復はどのような種類のネットワークでも 複雑なものになりがちである。

LANを別のLANに接続することができる。このためには、ゲートウェイ(ないし はブリッジ)と呼ばれる一つのノードを用意して、これを両方のLANの共通の ノードとする。ゲートウェイにあたる機械は、経路決定にとって重要である。 通過するメッセージの宛先ノード番号を見て、それ自身のLANに置いておいて いいのか、それとももう一つのLANに移すべきか決める。二つのLANが異なった 通信プロトコルを使っている場合、ゲートウェイはメッセージの書式を変換し なければならない。

時として扱うネットワークが大きく、「ローカルエリア(狭い地域の)」 ネットワークとは呼べないことがある。この場合用語は異なってくるが、 原理は大体同じである。

いくつもの異なったLANを扱う場合大変良く行われる構成が、全てのLANを一 つの共通な「バックボーン(背骨)」ネットワークに繋ぐ事である。複数の 部門から成っている会社などでは標準的であるし、複数の学部を持つ大学も また他の例である。

そこで、このバックボーンネットワーク自身もゲートウェイを持ってもっと 広域なネットワークに繋がることができる。これを続けていくと、全世界に 広がる「ネットワークのネットワーク」に行き着くのである。

経路制御

あなたが私に電子メールを送ろうと思えば、peter@ee.newcastle.edu.au宛 で届く。あなたが地球の裏側にいても全く同じだ。あなたの機械はどうやっ て私の機械を見つけだすのだろうか。

まず必要な最初の一歩は、ee.newcastle.edu.auをIPノード番号に変換する ことである。

  1. まず、あなたの機械のソフトウェアはオプションのHOSTSファイルを探 す(Warp4では通常¥TCPIP¥ETCディレクトリにある。ただし、ユーザ自 身が指示しない限り作られない。) このファイルには「よく行く」 ノードの番号が表になっている(通常は短いものだ)。
  2. これで見つからなければ - 大抵はそうなる - 近くのネームサーバ と呼ばれる機械に要求を出す(ネットワークソフトウェアを設定する時 ローカルなネームサーバのIP番号を指定しなければいけない)。ネーム サーバはノード名とノード番号の大きな表を持っている。

もちろん、世界中の全ての機械のノード番号を知っているようなネームサーバ は存在しない。普通はローカルな機械とよくアクセスされる遠隔ホストをカ バーしているだけである。この遠隔サイトの幾つかはそれ自体ネームサーバ である。ローカルに処理しきれない要求は他のネームサーバに送られる。

センスのあるネットワーク管理者は機械を階層的に名付ける。ee.newcastle.edu.au をネームサーバが知らなくても、少なくともオーストラリアの国別コード で終わっていることはわかるだろう。そうすれば.auドメインの名前について 知っているネームサーバに問い合わせ、.edu.auドメインの名前について知っ ているネームサーバを見つけることがができる;こうやって目的に近づいて いく。わずかな回数の繰り返しで検索は終了するわけである。

今やソフトウェアはノード番号を知った;しかしそこに辿り着く経路はまだ判 らない。この問題を解くにはルータと呼ばれるローカルな機械に接続する。ルー タはそれが知っているノードの表を持っている。自分には判らないノードにつ いては他のルータに要求を渡す。これは「誰かこのノードを知らないかい?」 という質問を雪崩のように引き起こす;誰かが最終的には答えに到達するだろ う。

これはやっかいな手続きに見えるかもしれないが、実際には極めて速い。経路 要求はねずみ講が破綻するより速く世界中に到達する(訳注:この辺の動作は 訳者の知識外である。訳文が悪いのもその所為である。さて、ねずみ講だが、 原文は Make Money Fast、つまり「手っとり早く稼げ」となっている。この手 の題名をNetNewsで見かけた人は多いだろう。最近ネットねずみ講の勧誘が盛ん である。多少の知能があれば、ねずみ講やそれもどきのが「最初に騙した奴だ けもうかる」仕掛けであることがわかるはずだ。あんなのに参加するのは、 「私はこんなにお人よしで騙されやすい愚物です」と公言しているようなもの。)

OS/2ネットワークサポートの導入

OS/2を導入する時にネットワークサポートを入れることもできるし、「選択 インストール」で後から導入することもできる。プログラムは「システム設定」 の「インストール、削除」フォルダにある。

モデムからしかネットワークに繋ぐには、手順は極めて容易である。TCP/IPを 導入して、「ネットワークアダプタを導入しない」を選ぶ。他の細かい点は、 後でダイヤラを設定する時設定できる。

LANに接続するなら、もっと多くの詳細を指定しなければならない。ネットワー クアダプタはほとんどの場合自動的にインストーラが検出するので、ユーザは 気にする必要がない。(しかし、割り込みとI/Oポートの矛盾については意識 していないといけない。私の場合も、何回か導入に失敗した後でやっとサウン ドカードとイーサネットカードとが同じI/Oポートを使っていることに気づい た。) それでも、導入を始める前に、幾つかの必要な情報をメモしておくこ とが勧められる:

これらの情報は全てネットワーク管理者から知らされているはずである。(も あなた自身が管理者なら、私に書ける程度の、こういう簡単なノートなどより もっとよくネットワークを知っている必要がある。もし途方に暮れたら、誰か 似たネットワークを導入した人に相談するのが一番である)。

ダイヤラの設定

この章はもっぱらモデムでの接続を扱う。

ダイヤルイン接続を使うには、プロバイダ(ISP)のアカウントを持っていなけ ればならない。Advantis(訳注:IBMのプロバイダ、ibm.netの事だと思う)を ISPとするなら、ダイヤルしてしまえばそれでアカウントが得られる。でも、他 のISPと料金の比較をしてからの方がいいと思う。住んでいる地域の競争の程度 によって、Advantisより高い所も安い所もあるだろう。

ダイヤラは「プログラム」−「インターネット(モデム)」フォルダにある。 IBMダイヤラ(訳注:「青ダイヤラ」)はAdvantisに接続するためのものである。 これを試してみたのは相当前だが、ほとんど迷わず導入操作をできたのを覚え ている。

Advantis以外のISPを使うなら、IBMダイヤラは役に立たない。その代わり「そ の他のプロバイダ」(訳注:白ダイヤラ)を使わなければならない。これを起 動して「追加」を押す。そうすると4ページのノートが開くのでログイン名や パスワードなどを記入する。それら詳細はISPから伝えられているはずである。

SLIP (Serial Line Interchange Protocol)とPPP (Point to Point Protocol) のどちらを選ぶかも決めなければならない。似たようなものだが、PPPの方が 若干高級である。ISPはどちらか一方をサポートしているのが普通で、そちら を使えと言ってくる。

ダイヤラの設定で問題があったら、os2ppp.zipを取って きてほしい。あるISP用のダイヤラ設定が詳細に説明してある(たまたま、私 のである)。他のISPでは詳細が異なるであろうが、作業の見本にはなるだろ う。

主なネットワーククライアント

ほとんどのネットワークアプリケーションはクライアント−サーバ流で動いて いる。クライアントのプログラムは通常ユーザ側である。ユーザはクライアン トに命令を発し、今度はそれがユーザの命令を、他の機械で動いているにサー バに対する要求として送り出す。サーバは要求された動作を返す;典型的には ユーザの機械にデータを返すことになる。

よく使われるネットワーククライアントの一覧である。

OS/2 Warp(Warp3以降)には十分なクライアントが付いてくる。上記のプログ ラムは、TCP/IPサポートを導入した場合、全て含まれる。それらが気に入らな ければ、サードパーティ製品がたくさんある - フリーソフトもシェアウェア も商業製品もある。

ネットワークサーバソフトウェア

ネットワークサーバを走らそうと決める前に、本当にそれが必要か確認すると いい。サーバを使うと、遠隔ユーザがあなたの機械のデータにアクセスできる ようになる;自分が何をしようとしているのかよくわからないでサーバを走ら すと、セキュリティホールを作ることになる。更に、サーバソフトウェアはメ モリとCPU時間を消費する。平均的なOS/2ユーザはサーバを走らす必要がない と思う。

とはいうものの、確かにサーバプログラムを走らすだけの意味がある状況もあ る。私もやっている。何といっても、家と職場の計算機間のファイルコピーが 楽である。

組み込み済みのサーバを動かすには「TCP/IPの構成(LAN)」を動かし、「自動 始動」のページに行く。そうすると以下のプログラムを設定できる。

ネットワークサーバを走らす上での一つの問題は、CPU時間とメモリを消費す ることである。サーバ用の機械ならそれでもいいが、個人用の機械をサー バにしている場合はいらいらすることがあるかもしれない。その状況を改善す るために「inetdスーパサーバ」をつかうことができる。これは、やってくる 要求に対する「聞き役」のプログラムであり、要求に応じて本来のサーバ (ftp、telnetなど)を起動する。上記のサーバのいくつかにはinetdから起 動するようなオプションがある。不利な点は、要求があってからサーバが起 動するまでのちょっとした間、クライアントが待たされることである。利点 はサーバソフトウェアが実際に使われない時は資源を消費しないことである。

注意:サードパーティのサーバをinetdから動かしている場合は、忘れずに ¥MPTN¥ETC¥INETD.LSTのバックアップをとること。TCP/IPの設定を走らすと、 このファイルに保存されたユーザの設定が消えてしまう。後で手動でそれを 加える必要がある。

OS/2にはHTTPサーバは含まれないが、望むなら簡単に入れられる。いくつか 優秀な(ほとんど只の)HTTPサーバがある(訳注:ICSを入れてもいいし、 J-Pocket2のを入れてもいい)。


[ 第一部 | 第二部 | 第三部 ]
この情報は Peter Moylanによりまとめられたものです。なんだお前、こんなのなってない、本当にすばらしい、ここが変だ、こうするとよい、などは peter@ee.newcastle.edu.auまで。
オリジナル: 17, April, 1997 訳: 29, May, 1997