・1台のWindowsマシンがネットワークにつながった稼働中のWindowsマシンの
リストを管理することで,一覧表示が可能になる。
・実際にアクセスするときには,一覧表示のしくみとは無関係な方法で
アクセス先マシンのIPアドレスなどを調べる。
・このため,一覧表示画面では見えているのにつながらなかったり,
つながるのに見えない不思議な現象が起こる。
今の世の中,Windowsネットワークを完全に無視するわけにはいかない。ところが,このWindowsネット。インターネット標準では語れない独自仕様をふんだんに盛り込んでいる。この独自仕様のおかげで,初級ユーザーでも比較的簡単にネットワークに接続でき,ディスクやプリンタを共有できる。その半面,UNIXシステムやインターネットを使っているユーザーの常識から見ると,不思議なネットワークなのもたしかである。
その不可解の代表例が,クライアントから見えているサーバーへアクセスしようとすると,つながらないときがある,という現象だ。この原因は,ネットワークにつながったWindowsマシンを一覧表示するしくみと,実際にWindowsマシンへアクセスするしくみが,別々に動いているためである。
独自の手法で稼働マシンを一覧表示
まずは,ネットワークにつながった稼働中のWindowsマシンを調べて一覧表示するしくみから見ていこう。
ところが,Windowsネットではデスクトップ画面上のネットワーク・コンピュータ・アイコンをダブル・クリックすると,稼働中のWindowsマシンの一覧が表示される(図[拡大表示]中の画面)。コンピュータの名前やIPアドレスを知らなくても,この一覧画面に表示されたサーバー・マシンのアイコンを選択すれば,共有フォルダや共有プリンタへアクセスできる。
このような一覧表示は,「マスター・ブラウザ」という特別な役割を持つコンピュータが,ネットワークにつながったWindowsマシンのリストを一元管理することで実現している。
具体的には,マスター・ブラウザは,ネットワーク上のコンピュータの名前(NetBIOS:ネットバイオス名と呼ぶ)が記述された一覧表(ブラウズ・リスト)を保持している。Windowsマシンは起動時またはネットワーク接続時に,自分のNetBIOS名をブラウズ・リストへ追加する依頼をマスター・ブラウザへ送る。また,パソコンが停止(シャットダウン)する際にも,自分が停止することをマスター・ブラウザへ通知する。こうしたしくみにより,マスター・ブラウザのブラウズ・リストは,常に最新の状態を保つことができる。
そして,Windowsマシンはマシンの一覧を表示させるとき,このマスター・ブラウザへアクセスして,ブラウズ・リストを参照するのである。
ただ,ここまでの話はすべてがうまく行っている場合のこと。現実には,パソコンが正常に停止できなかった場合もある。こうした場合,パソコンはマスター・ブラウザへ自分が停止したことを通知できない。このため,ブラウズ・リストにそのNetBIOS名が残ったままになり,実際には存在しないWindowsマシンが見えることになる。
アクセスするしくみは3種類
一方,Windowsマシンへアクセスするしくみは3種類ある。Windowsマシンへアクセスするには,まずNetBIOS名からIPアドレスを調べなければならない。この方法が3種類あるのだ。
基本は,「NetBIOS名がxxxのマシンはいますか。IPアドレスを教えてください」とLAN上のすべてのマシンに届くブロードキャスト・パケットを送信し,対応するマシンがこれに答えることで成立する。ただ,ブロードキャストはルーターを越えることができない。したがって,一覧表示には見えているのに,実際のWindowsマシンのIPアドレスが調べられないために,アクセスできないことが起こる。
ルーターの向こう側にあるWindowsマシンへアクセスするためには,NetBIOS名とIPアドレスの対応を記述したテキスト・ファイルを(LMHOSTS:エルエムホスツファイル)をクライアント・マシンごとに保持させておく方法がある。また,NetBIOS名とIPアドレスの対応を一元管理するサーバー・マシン(WINS:ウインズサーバー)を設置する方法もある。実際には,これら三つの方法を組み合わせて,Windowsマシンはほかのマシンへアクセスする。