次の方法で共有


UDP WS-Discovery での汎用ホストとクライアントの使用

ホストとクライアントがネットワーク上で相互に表示できない場合は、汎用ホストとクライアントをカスタム ホストとクライアントに置き換えることで、問題のトラブルシューティングに役立てることができます。 デバイス アドレスが WSD デバッグ クライアントの出力に表示されない場合は、ネットワーク環境が障害の原因となっている可能性があります。 汎用ホストとクライアントの詳細については、「デバッグ ツール」を参照してください。

ホストまたはクライアントが PC で実行されているアプリケーションの場合、汎用ホストまたはクライアントは、実際のホストまたはクライアントと同じセキュリティ コンテキストで実行する必要があります。 たとえば、実際のホストまたはクライアントが管理者として実行されている場合、汎用ホストまたはクライアントでも管理者として実行する必要があります。 また、ホストまたはクライアントがスタンドアロン デバイスの場合は、汎用ホストまたはクライアントを実行している PC に完全に置き換える必要があります。

汎用ホストとクライアントを使用して UDP WS-Discovery のトラブルシューティングを行う方法

  1. コマンド プロンプト ウィンドウを開きます。

  2. 次のコマンドを実行します。WSDDebug_host.exe /mode metadata /start

    Note

    [Windows セキュリティ アラート] ダイアログ ボックスが表示される場合があります。 その場合は、[ブロックを解除] をクリックして、WSD デバッグ ホストの実行を許可します。

     

    このコマンドにより、次のような出力が生成されます。 デバイス ID を記録しておきます。

    WSDAPI Debug Host
    Copyright (C) Microsoft Corporation 2007.  All rights reserved.
    Device ID is urn:uuid:37f86d35-e6ac-4241-964f-1d9ae46fb366
    Host metadata>
    
  3. 次のコマンドを実行します。WSDDebug_client.exe /mode metadata /hello off /resolve <id> <id> を手順 2 で識別されたデバイス ID に置き換えます。

    Note

    [Windows セキュリティ アラート] ダイアログ ボックスが表示される場合があります。 その場合は、[ブロックを解除] をクリックして、WSD デバッグ クライアントの実行を許可します。

     

WSD デバッグ クライアントでは、次のような出力が生成されます。

WSDAPI Debug Client
Copyright (C) Microsoft Corporation 2007.  All rights reserved.
Client ID is urn:uuid:0f571af7-6b0e-4daf-8054-f2233ac27910
Hello mode is disabled
Client metadata>
*****************************************************************************
Add at 02/28/07 15:16:51
+ EPR:
  + Address:                 urn:uuid:37f86d35-e6ac-4241-964f-1d9ae46fb366
+ Types:
    (wsdp) https://schemas.xmlsoap.org/ws/2006/02/devprof:Device
+ XAddrs:
  https://[::1]:5357/37f86d35-e6ac-4241-964f-1d9ae46fb366
+ Metadata version:          2
+ Instance ID:               1
+ Probe/Resolve tag:         WSDAPI debug_client
+ Remote transport address:  [::1]:3702
+ Local transport address:   ::1
+ Local interface GUID:      42133cd4-6a70-11db-bbc9-806e6f6e6963
Client metadata>

WSD デバッグ クライアントは、多数の DPWS デバイスを持つネットワーク上で多くの出力を生成する場合があります。 出力をファイルにリダイレクトすることで、分析を容易にできます。 出力をファイルにリダイレクトするには、WSD デバッグ クライアント プロンプトで、「log tee <ファイル名>」と入力します。 出力のリダイレクトを停止するには、WSD デバッグ クライアント プロンプトで「log tee stop」と入力します。

エンドポイント参照 (EPR) アドレスを書き留めます。 この EPR アドレスは、上記の手順 2 で識別したデバイス ID と一致する必要があります。 この場合、アプリケーションの障害は、オペレーティング システムまたはネットワーク環境に関連していない可能性があります。 汎用ホストとクライアントをカスタム ホストとクライアントに置き換え、「WSD デバッグ クライアントを使用したマルチキャスト トラフィックの検証」の手順に従ってトラブルシューティングを続行します。

デバイス ID が EPR アドレスと一致しない場合、アプリケーションの障害は、オペレーティング システムまたはネットワーク環境に関連している可能性があります。 このエラーでは、次の 1 つ以上の原因が考えられます。

  • アプリケーションが間違ったセキュリティ コンテキストで実行されています。 アプリケーションが正しい資格情報を使用していること、およびクライアントとホストがネットワークにアクセスするための十分なアクセス許可を持っていることを確認します。
  • ファイアウォールの構成が間違っています。 「アダプターとファイアウォールの設定の検査」の指示に従って、Windows ファイアウォールの設定が正しいこと、およびパケット ドロップにつながる他の規則がないことを確認します。 クライアントとホストは、障害の再現を試みるために、「手付かずの状態の」コンピューター (ドメインに参加したことがない既定のオペレーティング システムがインストールされているコンピューター) にコピーすることもできます。
  • IPSec ポリシーがアプリケーションをブロックしています。 IPSec ポリシーの対象ではないコンピューターにクライアントとホストをコピーして、エラーの再現を試みます。

WSDAPI 診断手順

WSDAPI のトラブルシューティングを開始する