Windows XP Service Pack 2 で Windows ファイアウォールが UPnP フレームワークに与える影響

概要

この資料では、Microsoft Windows XP Service Pack 2 (SP2) で Windows ファイアウォールが UPnP フレームワークに与える影響について説明します。また、そのような影響を最小限に抑えるために Windows XP SP2 に加えられた変更についても説明します。

: この資料は、UPnP のアーキテクチャおよびプロトコルに関する知識のある技術系ユーザーおよびデバイス製造元を対象としています。

はじめに

Windows XP SP2 をインストールすると、Windows ファイアウォールがデフォルトで有効となります。Windows ファイアウォールが有効であることが原因で Windows UPnP フレームワークにおいて次のような問題が発生することがあります。
  • ネットワークに接続している UPnP デバイスを UPnP フレームワークが検出できなくなることがあります。
  • ネットワークに接続している UPnP デバイスを UPnP フレームワークが制御できなくなったり、ネットワークに接続しているデバイスとの間でイベントの送信や受信ができなくなったりすることがあります。
  • UPnP コントロール ポイントが Windows XP SP2 ベースのコンピュータ上でホストされているデバイスを検出できなくなることがあります。
先頭に戻る

詳細

Windows ファイアウォールの全般的な情報については、次のマイクロソフト Web サイトを参照してください。 先頭に戻る

背景

Windows XP SP2 をインストールすると Windows ファイアウォールが有効になるため、次に示す Windows ファイアウォールのデフォルト設定について把握しておくことが必要です。
  • Windows ファイアウォールは要請されない着信メッセージのみをブロックし、送信メッセージはブロックしません。ポート 80 経由の HTTP やポート 110 または 25 経由のメールなどの要請された着信パケットは例外なく許可されます。
  • Windows XP SP2 では、Windows ファイアウォールに例外の概念が導入されました。例外を有効にすると、プログラムまたは機能に必要なファイアウォール ポートが開きます。プログラムや機能が使用するポートの番号を確認する必要はありません。Windows ファイアウォールには UPnP フレームワークに関する例外があり、この例外を有効にすると、UDP ポート 1900 および TCP ポート 2869 が開きます。
  • ワークグループ内のコンピュータの場合、デフォルトでは、ファイルとプリンタの共有や UPnP フレームワークで使用される一部のポートがローカル サブネットだけに制限されます。このようなポートは、インターネット接続の共有のホストでローカル サブネット用に開いている場合、インターネット接続の共有のパブリック インターフェイスでは開きません。これらのポートをグローバルに開くことは推奨しません。そのようにすると、これらのポートがインターネット接続の共有のパブリック インターフェイス上で開くためです。詳細については、次のマイクロソフト Web サイトを参照してください。 これが該当するのはワークグループに接続されたコンピュータのみです。Active Directory ディレクトリ サービス環境に属するドメイン コンピュータの接続はグループ ポリシーによって決まります。
  • ドメインに属しているコンピュータでは、グループ ポリシー設定によってローカル コンピュータのファイアウォール ポート設定が上書きされることがあり、ファイアウォールが無効になることもあります。そのため、Windows XP SP2 をインストールしても、グループ ポリシーによって UPnP フレームワークのポートが開かれることがあります。その場合、Windows ファイアウォールは UPnP フレームワークの動作には影響しません。逆に、ローカル ファイアウォールが UPnP ポートを許可していても、グループ ポリシーによって UPnP ポートが閉じられることがあります。
  • UPnP フレームワークが使用するポートは、UDP ポート 1900 および TCP ポート 2869 です。SSDP (Simple Service Discovery Protocol) は、マルチキャスト検索によって UPnP デバイスを検出します。マルチキャスト検索は動的な発信ポートを使用して UDP ポート 1900 に送信されます。Windows ファイアウォールは、マルチキャスト検索の実行から 3 秒以内に受信した、検索要求と一致する応答を受け入れます。その後は、検索要求と一致していてもマルチキャスト検索の応答をブロックします。
先頭に戻る

UPnP ポートのブロックによる影響

Windows ファイアウォールが UPnP 実装に必要なポートをブロックした場合、次のような状況が発生します。
  • ネットワークに接続している UPnP デバイスがアナウンスしていても、UPnP フレームワークはそれらのデバイスを検出できません。このような着信アナウンスはファイアウォールによってブロックされます。
  • 別のコンピュータ上のコントロール ポイントが、Windows XP SP2 ベースのコンピュータ上で動作している UPnP デバイスの検出または制御を行うことはできません。UPnP デバイス関連の着信メッセージがファイアウォールによってブロックされます。
UPnP フレームワークに関するファイアウォール例外が選択されていないために UPnP フレームワークに必要なファイアウォール ポートがブロックされた場合、UPnP フレームワークは UPnP 関連のデバイス検出メッセージの送信または受信をネットワークとの間で行いません。
先頭に戻る

UPnP フレームワークに関する Windows ファイアウォールの機能強化

Windows XP SP2 へのアップグレード中

Windows XP SP2 にアップグレードする前から UPnP デバイスを使用していた場合は、システム障害が発生することはありません。ただし、以下のいずれかの状況に該当する場合には、アップグレード中に Windows XP SP2 インストーラによって UPnP フレームワークに関するファイアウォール例外が自動的に有効に設定されます。
  • ホストされた UPnP デバイスがコンピュータにインストールされ、登録されている。
  • オプションの UPnP ユーザー インターフェイス (UI) コンポーネントがインストールされている。
: UPnP 機能によっては、検出できない場合があります。たとえば、ホストされたコントロール ポイントは UPnP フレームワークへの登録が不要です。したがって、このようなコントロール ポイントは UPnP フレームワークでは検出されません。

Windows XP SP2 へのアップグレード後

UPnP フレームワークには、ユーザーが手動でインストールできる、オプションの UI コンポーネントが含まれています。これらのコンポーネントをインストールすると、検出された UPnP デバイスのアイコンが [マイ ネットワーク] フォルダに表示されます。このアイコンをダブルクリックすると、そのデバイスの [表示] ページが表示されます。

Windows XP SP2 にアップグレードしたコンピュータにオプションの UI コンポーネントをインストールすると、UPnP フレームワークに関するファイアウォール例外が有効になります。UPnP ユーザー インターフェイスのインストーラを選択すると、インストール中にポートが開くことを知らせるヘルプが表示されます。UI コンポーネントを削除すると、UPnP フレームワークに関するファイアウォール例外は無効になります。ただし、ホストされた UPnP デバイスをインストールしている場合は、UI コンポーネントを削除しても例外は無効にならず、ホストされたデバイスは正常に動作します。

先頭に戻る

UPnP UI コンポーネントのインストールと削除

: オプションの UPnP UI コンポーネントのインストールまたは Windows ファイアウォール ポートの状態の変更を行うためには、管理者としてログオンする必要があります。

オプションの UPnP UI コンポーネントをインストールし、必要な Windows ファイアウォール ポートを開くには、以下のいずれかの方法を使用します。

: オプションの UPnP UI コンポーネントを削除すると、ホストされた UPnP デバイスがコンピュータに登録されていない場合は、UPnP フレームワークに関するファイアウォール例外が無効となります。ホストされた UPnP デバイスがコンピュータに登録されている場合は、UPnP フレームワークに関するファイアウォール例外は有効なままであるため、UPnP デバイスは引き続き動作します。

方法 1 : コントロール パネルを使用する

コントロール パネルを使用して、UPnP UI コンポーネントをインストールし、必要な Windows ファイアウォール ポートを開くことができます。これを行うには、次の手順を実行します。
  1. [スタート] ボタンをクリックし、[コントロール パネル] をクリックします。
  2. [プログラムの追加と削除] をクリックします。
  3. [Windows コンポーネントの追加と削除] をクリックします。
  4. [コンポーネント] ボックスの一覧の [ネットワーク サービス] チェック ボックスをオンにし、[詳細] をクリックします。
  5. [ネットワーク サービスのサブコンポーネント] ボックスの一覧の [UPnP ユーザー インターフェイス] チェック ボックスをオンにし、[OK] をクリックします。

    : UPnP UI コンポーネントを削除するには、[UPnP ユーザー インターフェイス] チェック ボックスをオフにします。
  6. Windows コンポーネント ウィザードで、[次へ] をクリックします。

方法 2 : マイ ネットワークを使用する

マイ ネットワークを使用して、UPnP UI コンポーネントをインストールし、必要な Windows ファイアウォール ポートを開くことができます。これを行うには、次の手順を実行します。
  1. [スタート] ボタンをクリックし、[コントロール パネル] をクリックします。
  2. [ネットワークとインターネット接続] をクリックします。
  3. [関連項目] の [マイ ネットワーク] をクリックします。
  4. [ネットワーク タスク] の [ネットワークに接続している UPnP デバイスのアイコンを表示する] をクリックします。
  5. 次のメッセージが表示されます。
    コンピュータの保護のため、UPnP デバイス ソフトウェアによるネットワークからの情報の受信は Windows ファイアウォールでブロックされました。この情報はアイコンの表示に必要です。


    ネットワークに接続されている UPnP デバイスをソフトウェアで検出できるよう、Windows ファイアウォールのポート設定を開きますか? [いいえ] をクリックすると、アイコンは表示されません。
    [いいえ] をクリックすると、アイコンは表示されず、UPnP UI コンポーネントをインストールせずにインストール プログラムが終了します。

    [はい] をクリックすると、UPnP UI コンポーネントがインストールされ、UPnP フレームワークに関するファイアウォール例外が有効になります。
マイ ネットワークを使用して UPnP UI コンポーネントを削除するには、次の手順を実行します。
  1. [スタート] ボタンをクリックし、[コントロール パネル] をクリックします。
  2. [ネットワークとインターネット接続] をクリックします。
  3. [関連項目] の [マイ ネットワーク] をクリックします。
  4. [ネットワーク タスク] の [ネットワークに接続している UPnP デバイスのアイコンを非表示にする] をクリックします。
  5. 次のメッセージが表示されます。
    UPnP デバイスを非表示にすることを選択しました。これにより、Windows ファイアウォールのポートが閉じられ、ネットワークに接続されている UPnP デバイスを UPnP デバイス ソフトウェアで検出できなくなります。

    続行しますか?
    [いいえ] をクリックすると、UPnP UI コンポーネントは削除されず、インストール プログラムが終了します。

    [はい] をクリックすると、UPnP UI コンポーネントが削除されます。また、UPnP フレームワークに関するファイアウォール例外が無効になります。ただし、ホストされた UPnP デバイスがインストールされている場合は、この例外は無効になりません。
先頭に戻る

Windows ファイアウォールの UPnP フレームワークに関する例外を手動で有効にする

UPnP に必要な Windows ファイアウォールのポートを手動で開くには、UPnP フレームワークに関する例外を有効にする必要があります。この例外を有効にし、UDP ポート 1900 と TCP ポート 2869 を開くには、次の手順を実行します。
  1. [スタート] ボタンをクリックし、[コントロール パネル] をクリックし、[セキュリティ センター] をクリックします。次に、[Windows ファイアウォール] をクリックします。
  2. [全般] タブで [有効 (推奨)] が選択されていることを確認します。

    : [有効 (推奨)] が選択され、[例外を許可しない] チェック ボックスがオンになっている場合は、以降の手順を実行しても UPnP フレームワークのポートは閉じたままとなります。
  3. [例外] タブで [UPnP フレームワーク] チェック ボックスをオンにします。

    : このチェック ボックスをオンにすると、すべてのネットワーク アダプタの UDP ポート 1900 および TCP ポート 2869 でローカル サブネットからのメッセージのみが受信されます。この設定を変更するには、[UPnP フレームワーク] をクリックし、[編集] をクリックします。ファイアウォールの構成が完了したら、[OK] をクリックします。これで、設定が有効になります。たとえば、すべての IP アドレスからのメッセージを受信するように設定を変更することもできます。
注意事項
  • UPnP フレームワークに必要なポートのいずれか 1 つだけをブロックするように Windows ファイアウォールを手動で構成することができます。ただし、マイクロソフトでは、このように構成することを推奨していません。
  • Windows ファイアウォールを無効にした場合、またはグループ ポリシーによってローカル コンピュータのファイアウォール設定が上書きされている場合は、例外の設定を変更できないことがあります。設定を変更することはできても、その変更がグループ ポリシーによって上書きされた場合、変更した設定が有効にならないことがあります。
  • インターネット接続の共有機能を有効にすると、プライベート インターフェイスでのみ UPnP フレームワークのポートが自動的に有効となります。
  • インターネット接続の共有機能が有効である場合は、UPnP フレームワークに関する例外を手動で有効にしないでください。UPnP フレームワークに関する例外を有効にすると、インターネット接続の共有のパブリック インターフェイスを含め、すべてのネットワーク インターフェイスで UPnP ポートに対するファイアウォール保護が解除されます。その結果、コンピュータが直接インターネットに公開されることになります。
先頭に戻る

UPnP デバイスおよびコントロール ポイントの製造元

UPnP の製造元は、ホストされた UPnP デバイスまたはコントロール ポイントのインストール プロセスに Windows ファイアウォール ポートの状態を調べる処理を追加する必要があります。デバイスおよびコントロール ポイントのインストーラに UPnP フレームワークに関するファイアウォール例外の状態を調べる機能を組み込むことが必要です。このようなインストーラを作成する際は、以下のガイドラインを使用してください。

  • UPnP フレームワークに関する例外が有効である場合は、インストールを続行します。
  • UPnP フレームワークに関する例外が有効でなく、ポートがブロックされている場合は、インストール中にポートを開くかどうかをユーザーに確認します。
    • ユーザーがポートを開くことに同意した場合は、UPnP フレームワークに関する例外を有効にし、インストールを続行します。
    • ユーザーがポートを開くことを拒否した場合は、UPnP フレームワークに関する例外を有効にせず、ポートを開かないようにします。

      : ユーザーがポートを開くことを拒否した場合にインストールを続行するかどうかは、製造元が独自に判断してかまいません。ただし、マイクロソフトでは、インストールをキャンセルすることを推奨しています。
  • 前述のとおり、インターネット接続の共有機能が有効である場合は、UPnP フレームワークに関する例外を有効にしないようにします。この点は、UPnP デバイスおよびコントロール ポイントのインストーラだけでなく、エンド ユーザーにも当てはまります。

    インストーラ プログラムでインターネット接続の共有機能が有効であるかどうかを確認するには、IEnumNetSharingPublicConnection と IEnumNetSharingPrivateConnection という 2 つのアプリケーション プログラミング インターフェイスを使用します。パブリック接続とプライベート接続の両方が検出された場合は、インターネット接続の共有機能が有効になっているため、インストーラで UPnP フレームワークに関する例外を有効にしないようにします。
先頭に戻る

関連情報

Windows ファイアウォールのポート構成を確認および設定する方法の詳細については、次のマイクロソフト Web サイトを参照してください。
875357 Troubleshooting Windows Firewall settings in Windows XP Service Pack 2

先頭に戻る
プロパティ

文書番号:886257 - 最終更新日: 2007/02/08 - リビジョン: 1

フィードバック