Windows 7パソコンをネットワークに接続してしばらくすると,同じワークグループに所属するほかのWindowsパソコンの「ワークグループのコンピュータを表示する」に,そのWindows 7のコンピュータ名が現れるようになる。これまでも見慣れた光景だが,Windows 7やVistaでもXPと同じ手順で参加しているのだろうか。Windows 7パソコンをネットワークに接続し,Windowsネットワーク(ワークグループ)に参加する際のやりとりから確認していこう。

ワークグループへの参加手順は基本的に変わらない

 ワークグループへの参加には,大きく分けて二つのステップを踏む(図1)。まず,システム起動時に,ネットワーク内で「名前登録」を実行する。それから,コンピュータ一覧情報を保持しているコンピュータ(マスター・ブラウザ)に自分のコンピュータ名を「通知」する。

図1●Windowsネットワークに参加するには「名前登録」と「通知」の二つのステップをとる
この流れはWindows 7やVistaでも変わらない。これにより、Windows 7からサーバーを簡単に利用でき,XPパソコンからもWindows 上の共有フォルダやファイルを利用できる。だが,実際にやりとりしているパケットは大幅に変わっている。Windwos 7やVistaのパソコン同士では別の新しいプロトコルを利用し,パソコン以外にネットワーク機器も探すようになった。
[画像のクリックで拡大表示]

 最初の「名前登録」は,自分が使いたいコンピュータ名や所属するワークグループ名をネットワーク内に知らせるものだ。こうすることで,そのコンピュータ名がネットワーク内で使えることを確認する。もし,同じコンピュータ名を使っているWindowsパソコンがほかにいると,そのパソコンから「そのコンピュータ名は使っています」というメッセージが戻ってくる。メッセージが戻ってこないことを確認してから,コンピュータ名をマスター・ブラウザへ「通知」することで,コンピュータ名の一覧に追加される。

 このそれぞれのステップで,NetBIOSが重要な役割を担っている。これはWindows 7でも変わらない。ただし,Windows 7の一つ前のVistaから新たなプロトコルが導入されており,NetBIOSなしでもWindowsネットワークが成り立つようになっている。それぞれのステップについて,XPまでとの違いに注目しながら見ていこう。

NetBIOS名前登録のやりとりは変更なし

 早速Windows 7における名前登録のしくみを具体的に見ていこう。Windows 7パソコンを起動した際にやりとりするパケットをWiresharkでキャプチャしてみる(図2)。

図2●Windows 7がワークグループに参加する際のパケット
XPと同様にNetBIOSによる「名前登録」を実行しているが,それより先に新たに追加されたLLMNRによる「名前登録」を実行している。そうして,名前の重複がないことが確認された後に,ホスト・アナウンスメントのパケットをマスター・ブラウザあてに送って名前を「通知」している。
[画像のクリックで拡大表示]

 すると,これまでWindowsネットワークの基本として使われてきたNetBIOSを使って,参加するパソコンが登録(使用)したいNetBIOS名をネットワーク内へブロードキャストで知らせていることがわかる。具体的には,Windows 7でもXPまでと同様にNetBIOS名前解決(NBNS)のプロトコルを使って名前を登録している。

 パケットの中身を詳しく見てみると,「VISTA-PC2<00>」「VISTA-PC2<20>」「WORKGROUP<00>」「WORKGROUP<1E>」という4種類のNetBIOS名を登録している。それぞれの名前の登録のたびに,NetBIOS名前登録パケットをブロードキャスト・アドレス(図2では192.168.1.255)あてに送っており,四つの名前のそれぞれについて「Registration NB ~」というメッセージを4回ずつ,計16回送信している(図2のNo.18~No.29,No.31~No.34のパケット)。

この先は会員の登録が必要です。有料会員(月額プラン)は初月無料!

日経 xTECHには有料記事(有料会員向けまたは定期購読者向け)、無料記事(登録会員向け)、フリー記事(誰でも閲覧可能)があります。有料記事でも、登録会員向け配信期間は登録会員への登録が必要な場合があります。有料会員と登録会員に関するFAQはこちら