次の方法で共有


アダプターとファイアウォールの設定の検査

ファイアウォールが正しく構成されていないと、WSD アプリケーションが失敗する可能性があります。 このトピックでは、WSD クライアントとホストがネットワーク上で相互に表示できない場合に使用するトラブルシューティング手順をいくつか示します。 ファイアウォール設定は、他のアプリケーションのトラブルシューティング手順を使用する前に検査する必要があります。

アダプターとファイアウォールの設定を調べるには

  1. ネットワーク探索 例外が有効になっていることを確認します。

  2. アプリケーションをブロックするアプリケーション固有のファイアウォール規則がないことを確認します。

  3. 検出とメタデータ交換に使用されるポートを明示的に有効にします。

  4. ファイアウォールを無効にして、アプリケーションを再テストします。

    手記

    この手順を完了した後、ファイアウォールを再度有効にする必要があります。

     

ネットワーク探索例外が有効になっていることを確認する

WS-Discovery アプリケーションが実行されている場合は、ネットワーク探索 ファイアウォール例外を許可する必要があります。

ネットワーク探索ファイアウォールの例外 を有効にするには

  1. [スタート ] をクリックし、[実行] をクリックし、「firewall.cpl」と入力します。 これにより、Windows ファイアウォール コントロール パネル アプレットが開きます。
  2. [Windows ファイアウォール 経由でプログラムを許可する]を選択します。
  3. [例外] タブで、[ネットワーク探索] チェック ボックスをオンにします。
  4. [OK] をクリックして、ファイアウォール アプレットを閉じます。

このファイアウォールを変更した後、プログラムを再テストします。 プログラムが正常に動作する場合は、問題の原因が特定され、それ以上のトラブルシューティング手順は必要ありません。 それ以外の場合は、次の手順に進みます。

アプリケーション固有のファイアウォール規則の確認

Windows ファイアウォールの高度な構成は、セキュリティが強化された Windows ファイアウォール という名前の Microsoft 管理コントロール (MMC) スナップインで行うことができます。 このスナップインは、ファイアウォールの問題の疑いをトラブルシューティングするために使用できます。

開発者は、セキュリティが強化された Windows ファイアウォール API を使用して、WSD アプリケーションに適用されるファイアウォール規則を作成できます。 具体的には、INetFwRules インターフェイスの Add メソッドを使用して、新しいファイアウォール規則を追加できます。 ファイアウォール規則が正しく作成されていない場合は、クライアントとホストがネットワーク上で相互に表示できない可能性があります。

アプリケーション固有のファイアウォール規則を確認するには

  1. [スタート] をクリックし、[実行] をクリックして、「wf.msc」と入力します。
  2. トラフィックをブロックしている可能性があるアプリケーション固有の規則を探します。 詳細については、「セキュリティが強化された Windows ファイアウォールの - 診断およびトラブルシューティング ツールの」を参照してください。
  3. アプリケーション固有の規則を削除します。

アプリケーション固有の規則が見つからなかった場合は、次の手順に進みます。 アプリケーション固有の規則が見つかり、削除された場合は、ファイアウォールの変更後にプログラムを再テストします。 プログラムが正常に動作する場合は、問題の原因が特定され、それ以上のトラブルシューティング手順は必要ありません。 それ以外の場合は、次の手順に進みます。

検出とメタデータ交換に使用されるポートの有効化

WS-Discovery は、メッセージ交換に UDP ポート 3702 を使用します。 さらに、TCP ポート 5357 と 5358 がメタデータ交換に使用されることがあります。 これらのポートは、「Windows ファイアウォールでポートを開く」で説明されている手順を使用して、ファイアウォールで明示的に開くことができます。

このファイアウォールを変更した後、プログラムを再テストします。 プログラムが正常に動作する場合は、問題の原因が特定され、それ以上のトラブルシューティング手順は必要ありません。 それ以外の場合は、次の手順に進みます。

ファイアウォールの無効化

Windows ファイアウォールは、疑わしい問題のトラブルシューティングに役立つよう無効にすることができます。 その他の適用可能なファイアウォール (ルーター上のファイアウォールなど) は、トラブルシューティングのために無効にすることもできます。 Windows ファイアウォールの有効化と無効化の詳細については、「Windows ファイアウォールを有効または無効にするを参照してください。

該当するファイアウォールを無効にした後、アプリケーションを再テストします。 プログラムが正常に動作すると、ファイアウォールがトラフィックをブロックしていました。 トラフィックがブロックされる原因として考えられるものがいくつかあります。

  • アプリケーション固有の例外によってトラフィックがブロックされました。 上記で説明したように、アプリケーション固有のファイアウォール規則を確認します。
  • デバイスが UDP 要求に応答するのに時間がかかりすぎました。 Windows ファイアウォールは、最初の要求が送信されてから 4 秒以上後に返される UDP 応答をブロックする場合があります。 UDP WS-Discovery に汎用ホストとクライアントを使用する で説明されている手順に従って、問題が 4 秒未満で応答するホストで再現されるかどうかを確認して、トラブルシューティングを続行します。

ファイアウォールが無効になった後もアプリケーションが失敗する場合、ファイアウォールはアプリケーションの障害の原因になりません。 UDP WS-Discovery に汎用ホストとクライアントを使用する方法に関するで説明されている手順に従って、ファイアウォールを再度有効にし、トラブルシューティングを続行します。

トラブルシューティングが完了したら、ファイアウォールを常に再び有効にする必要があります。

WSDAPI 診断手順

WSDAPI のトラブルシューティング入門