WAN 規模のブラウザ リストが完全なものかどうかを判別するための一元化された方法はありませんが、特定のセグメント上のサーバーが、リモート セグメント上のブラウザ リストに載っているかどうかを判別する方法はあります。この場合、同じ方法を WAN 上のすべてのセグメントに対して適用することができます。ただし、これらのテストは、ブラウザの選択が発生するときにサーバーの役割が変化すると結果が変わる可能性があります。これらのテストの結果は、WAN 全体を通して、あるドメイン内のすべてのサーバーが完全にスタティックで、かつオンラインまたはオフラインに切り替わることがない場合にのみ、長期的に有効なものとなります。
次に記述するテストは、Windows NT リソース キット ユーティリティの browstat.exe を使って行います。出力例は、TCP/IP プロトコルの場合の例です。また、大部分のネットワーク問題の診断と同様、ブラウザ サービスのトラブルシューティングを行うためには、管理者がネットワーク セグメントの境界とネットワーク上のルーター構成を熟知している必要があります。ここでは、例として、あるリモート セグメント上のクライアントのブラウザ リストに、別のセグメント上に配置されているサーバーが記載されていないというケースを考えます。
ブラウザ サービスは時間の影響を受けやすく、かつブロードキャスト データグラムを使用するため、次の手順は、48 分のサイクル (マルチセグメント ドメイン環境における完全な伝播サイクル) が終了するまでは実行しないでください。
各ブラウザ間での名前解決は、非常に重要です。第 1 の手順として、WINS による確実な名前解決が確立されている必要があります。追跡しているブラウザの問題が、実際には名前解決の問題が原因で発生している場合、多くの時間が無駄になる可能性があります。
-
サーバーが存在するセグメント上のマスタ ブラウザを見つける
このコマンドは、ブラウザ リストにないサーバーが存在するセグメント上で実行する必要があります。次のコマンドを実行してください。
BROWSTAT STATUS
Status for domain <DomainName> on transport \Device\NetBT_IEEPRO1
Browsing is active on domain.
Master browser name is: <MasterBrowser>
Master browser is running build 1381
1 backup servers retrieved from master <BackupBrowser>
\\SmallerServer
There are 100 servers in domain DomainName on transport
\Device\NetBT_IEEPRO1
There are 1500 domains in domain DomainName on transport
\Device\NetBT_IEEPRO1
この情報には、そのセグメント上のマスタ ブラウザとして動作しているサーバーが示されているはずです。ただし、ローカルのマスタ ブラウザの応答が遅い場合、別のマスタ ブラウザの情報を受け取っている可能性もあります。
このコマンドの結果から、"\Device\Protocol_NIC" の文字列が得られます。これは、別の Browstat コマンドで使用できます。
クライアントのセグメント上のローカル マスタ ブラウザを見つけるには、次のコマンドを実行します。
BROWSTAT GETMASTER \Device\NetBT_El59x1 <DomainName>
Status または Getmaster のスイッチを使用すると、DomainName<1d> の照会が送信され、そのセグメントの現在のマスタ ブラウザが返されます。マスタ ブラウザとして動作しているサーバーの検索に、ブラウザ サービスは使用されません。この手順は、セグメント上でマスタ ブラウザとして動作しているコンピュータがブラウザ サービスを使って示されている場合には、リモートで実行することもできます。ただし、この場合、管理者が各セグメント上のすべてのサーバーの名前を知っている必要があります。また、ブラウザに関する問題の解決に、そのブラウザ サービス自身を使用するのは、あまり良い方法ではありません。たとえブラウザのこの部分に問題がないとしても、返されるリストには最大 36 分 の遅れが生じます。リモートでドメイン上のマスタ ブラウザのリストを調べるには、次のコマンドを送信します。
BROWSTAT VIEW \Device\NetBT_IEEPRO1 \\PDCName | FINDSTR /I MBR
次に、これらのマスタ ブラウザの中から、ブラウザ リストにないサーバーの名前が含まれているセグメントのマスタ ブラウザを判別する必要があります。
マスタ ブラウザが見つからない場合は、問題のサーバーが存在するセグメント上のドメイン コントローラでブラウザ サービスの停止と開始を行うことで、強制的に選択を実行させることができます。数分後に、もう一度このテストを実行してください。あるいは、そのセグメント上の任意のサーバーのコンソール上で次のコマンドを実行することによって、選択を強制することもできます。
BROWSTAT ELECT \Device\NetBT_IEEPRO1 <DomainName>. -
マスタ ブラウザのリストにサーバーの名前があるかどうかを調べる
マスタ ブラウザは、ブラウザ リストにないサーバーの名前が含まれているはずの通信チェーンの中で、最初のサーバーにあたります。このテストでは、マスタ ブラウザが、サーバーの Host Announcement フレームを受け取っているかどうかを調べます。注 : "\device..." の文字列は、上記の出力から取得できます。次のコマンドを実行してください。
BROWSTAT VIEW \Device\NetBT_IEEPRO1 \\<MasterBrowser> | FINDSTR /i <MissingServer>
マスタ ブラウザのリストにサーバーが存在すれば、このコマンドから次のような結果が返されます。
\\<MissingServer> NT 04.00 (W,S,NT,PBR,DFS) "Description" of server
\\<MissingServer>
ローカル マスタ ブラウザにサーバーの名前がなければ、このサーバーのセグメント上の任意のコンピュータから次のコマンドを実行します。
BROWSTAT FORCEANNOUNCE \Device\NetBT_El59x1 <DomainName>
または、このサーバーのコンソールから次のコマンドを実行します。
BROWSTAT ANNOUNCE \Device\NetBT_El59x1 <DomainName>
ネットワーク接続の確認には、問題のサーバーがマスタ ブラウザに対して、ネットワーク ドライブをマップできるかどうかを調べると便利です。
また、サーバーを再起動して、Host Announcement フレームを強制することもできます。
-
PDC がマスタ ブラウザからサーバーの名前を受け取っているかどうかを調べる
次のコマンドを実行します。
BROWSTAT VIEW \Device\NetBT_IEEPRO1 \\<PDC> | FINDSTR /i <MissingServer>
出力は次のようになります。
\\<MissingServer> NT 04.00 (W,S,NT,PBR,DFS) "Description" of server
\\<MissingServer>
サーバーの名前が表示されない場合は、おそらく名前解決の問題によるものです。PDC がマスタ ブラウザからサーバーのリストを取得するためには、サーバーのマスタ ブラウザが、DomainName<1b> の名前を解決し、UDP ポート 138 を使って宛先を指定した Master Announcement フレームを送信できる必要があります。また、PDC がこのアナウンスメントに応答してサーバー名を取得するためには、PDC がマスタ ブラウザのコンピュータ名を解決できる必要があります (サーバーのマスタ ブラウザが PDC からドメイン全体のリストを取得するためには、マスタ ブラウザが PDC のコンピュータ名を解決できる必要があります)。
この双方向の名前解決は、非常に重要な問題です。サーバーのマスタ ブラウザが DomainName<1b> エントリを解決できることを確認するには、次のコマンドを実行します。
BROWSTAT GETPDC \Device\NetBT_El59x1 <DomainName>
PDC と マスタ ブラウザが互いのコンピュータ名を解決できることを確認するには、マスタ ブラウザから PDC に対してネットワーク ドライブをマップし、PDC からマスタ ブラウザに対してネットワーク ドライブをマップします。いずれかの手順が失敗した場合は、名前解決の問題を解決してください。
-
クライアントのセグメント上のマスタ ブラウザを判別する
上記の手順 1 と同じ操作をクライアントのセグメント上で実行します。
-
ブラウザ リストにないサーバーの名前が、クライアントのセグメント上のマスタ ブラウザにあるかどうかを調べる
次のコマンドを実行します。
BROWSTAT VIEW \Device\NetBT_IEEPRO1 \\<MBClientSeg> | FINDSTR /i <MissingServer>
サーバーにエントリがあれば、次のような出力結果になります。
\\<MissingServer> NT 04.00 (W,S,NT,PBR,DFS) "Description" of server
\\<MissingServer>
サーバーの名前がマスタ ブラウザにない場合は、おそらく名前解決の問題によるものです。次のコマンドを実行して、クライアントのセグメント上のマスタ ブラウザが DomainName<1b> の名前を解決できることを確認します。
BROWSTAT GETPDC \Device\NetBT_El59x1 <DomainName>
さらに、マスタ ブラウザが PDC のコンピュータ名を解決できなければなりません。これを確認するには、PDC にネットワーク ドライブをマップします。
いずれかのテストが失敗した場合は、名前解決の問題を解決してください。
-
クライアントのセグメント上のバックアップ ブラウザを判別する
セグメントのマスタ ブラウザ上の要求を減らすため、クライアントがブラウザ リストを要求すると、利用できる場合にはバックアップ ブラウザが選択されます。このため、すべてのクライアントがバックアップ ブラウザを使用する可能性が高くなります。セグメントのローカル バックアップ ブラウザを判別するには、2 つの方法があります。
マスタ ブラウザのコンソールから、次のコマンドを実行します。
BROWSTAT LOCALLIST \Device\NetBT_IEEPRO1 | FINDSTR /i BBR
次のようなエントリのリストが返されます。
\\<BackupBrowser> NT 04.00 (W,S,BDC,NT,BBR,DFS) "Description" of
server \\<BackupBrowser>
このコマンドをマスタ ブラウザでリモート実行するには、次のコマンドを実行します。
BROWSTAT VIEW \Device\NetBT_IEEPRO1 \\<MasterBrowser> 0X40000000 | FINDSTR /I BBR
注 : これらのフラグについては、the CIFS Browsing Protocol document に定義されています。
ftp://ftp.microsoft.com/developr/drg/cifs/cifsbrow.doc
(ftp://ftp.microsoft.com/developr/drg/cifs/cifsbrow.doc)
-
ブラウザ リストにないサーバーの名前がバックアップ ブラウザにあるかどうかを調べる。このセグメント上のすべてのクライアントが信頼できるブラウザ リストを取得するためには、すべてのバックアップ ブラウザを調べて、ブラウザ リストにないサーバーの名前をチェックする必要があります。各バックアップ ブラウザで次のコマンドを実行してください。
BROWSTAT VIEW \Device\NetBT_IEEPRO1 \\<BackupBrowser> | FINDSTR /i <MissingServer>
ブラウザ リストにないサーバーの名前がバックアップ ブラウザに含まれていない場合は、バックアップ ブラウザがマスタ ブラウザに対してネットワーク ドライブをマップできることを確認します。バックアップ ブラウザは、最もダイナミックなブラウザの役割を担当します。マスタ ブラウザは、ブラウザの負荷に応じて、可能なブラウザに対してバックアップ ブラウザになるように指示します。12 分待ってから、手順 6 および 7 を繰り返します。
マルチホームに関する問題
単一のドメイン規模のリストを作成するには、PDC がマルチホーム サーバーであってはなりません。リモート セグメント上の各マスタ ブラウザ (MB) は、それぞれ PDC への接続を確立します。すべての MB が PDC 上で同じインターフェイスを選択するという保証はないため、単一のドメイン規模のリストを作成するためには、PDC がシングル ホームである必要があります。また、すべてのマスタ ブラウザもシングル ホームでなければなりません。MB は、12 分ごとに PDC に接続し、ドメイン全体のリストを要求します。その後、PDC に対して Master Announcement Browser フレームを発行し、MB への接続とローカル リストの取得を指示します。しかし、PDC は MB 上の各インターフェイスに対して別々の IP アドレスを維持しないため、PDC が MB に接続するときには特定のインターフェイスで収集されたコンピュータおよびサーバーのリストのみ取得できます。
その他の考察
ブラウザ機能の断続的な使用を避け、上記のようなテストを実行する必要をなくすには、各セグメント上のコンピュータで、矛盾のないドメイン規模のリストを維持する必要があります。サーバーが頻繁にシャットダウンおよび再起動される場合には、セグメント数が少なければ、各セグメント上に BDC を配置するか、あるいは少なくとも Windows NT メンバ サーバーを配置することを検討してください。この場合、IsDomainMaster レジストリを TRUE にセットします。これによって、そのサーバーがセグメントのマスタ ブラウザとして選択される可能性が高くなります。
上記の手順において、次の手順に進むための条件が揃わない場合には、確認したサーバーの中で "name in conflict" (名前競合) のエラーが出ているものがないことを確認します。これは、次のコマンドを実行して調べることができます。
NBTSTAT -n
このコマンドは、-A または -a のスイッチを使用すれば、リモートで実行できます。
ブラウザは、WAN 全体にわたるルーターの構成に大きく影響されます。ブラウザの役割はブロードキャストの選択によって決定されるため、UDP ブロードキャストを転送するべきではありません。UDP ブロードキャストのトラフィックが一方向に転送され、反対方向に転送されない場合、動作異常が起こります。これによって、8003 のブラウザ イベントが生成され、選択サイクルが連続的に発生する場合があります。
問題を解決するための別の手段として、Microsoft ネットワーク モニタなどのプロトコル アナライザでネットワーク トラフィックをキャプチャするという方法もあります。ブラウザのデータ交換を直接確認するには、ブラウザ サービスを停止してから再起動します。残念ながら、ブラウザ サービスの停止および再起動後に、ブラウザが以前と同じ役割を負うという保証はありません。しかし、この方法は、マスタ ブラウザが PDC にドメイン規模のリストを要求する際や、PDC がマスタ ブラウザにローカル リストを要求した直後に、通信の確認を行うのに便利です。ブラウザ サービスがマスタ ブラウザ上で開始された後、1 〜 2 分以内に完全なデータ交換が発生します。このトラフィックの量に対応できるように、プロトコル アナライザのキャプチャ バッファとフレーム サイズの設定を変更してください。
ブラウザ サービスによって返されるサーバーのリストは、Windows NT 4.0 より前のバージョンでは、サイズが 64 キロバイトに制限されていました。このサイズを超えると、アルファベット順のサーバーのリストが途中で切れて表示されます。これを回避するためには、すべてのブラウザが Windows NT 4.0 以降のバージョン上で実行されている必要があります。
詳細については、下記のマイクロソフト Web サイトで、Windows NT ブラウザに関するホワイト ペーパーを参照してください。
この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID
188305?
(http://support.microsoft.com/kb/188305/EN-US/
)
(最終更新日 2000-10-20) をもとに作成したものです。