2011-08-06 8 views
0

私は単純なWCFクライアント/サーバーアプリケーションを作成しています。サービスはコンソールアプリケーションとして実行されます。異なるマシン上で動作するWCFサービスとクライアント

クライアントとサーバーが同じマシンで実行されている場合は問題ありません。エンドポイントURIは次のとおりです。

http://localhost:8000/Myservice/Service 

しかし、私は、サービスのエンドポイントURIを別のマシンにクライアントを移動し、設定したとき:の

http://192.168.0.10:8000/Myservice/Service 

(192.168.0.10)であるIPサーバーマシン。

クライアントはもう動作しません。

上記のURIをVisual Studioに追加して「サービス参照の追加」を再追加しようとしました。しかし、クライアントはもはやサーバー上で実行されているサービスを検出し、そこからプロキシを抽出することはできません。

ネットワークに関連する問題があるかどうか疑問に思っていますか?ファイアウォールの例外リストにサービスコンソールアプリケーションを追加しましたが、問題は解決しません。

誰でも手助けできますか?

多くのありがとうございます。

+0

サーバーのIPアドレスにpingを実行できますか?あなたはサーバー上のポート8000​​でtelnetできますか? – Fabio

答えて

0

WCFサーバーから、cmd: 'netstat -nao'コマンドで次のコマンドを実行します。そこには、ポート8000​​に関連する重要な情報が記載されています。関連付けられたIPアドレスは0.0.0.0である必要があり、ネットワーキングIPアドレス(192.168.0.X)である必要があります。 Localhostまたは127.0.0.1はパケットを内部的にルーティングします。

WCFクライアントからは、ネットワーク問題の詳細な調査については、Wiresharkアプリケーション(www.wireshark.org)を試してみるとよいでしょう。

+0

ポート8000​​を含むnetstat -naoの結果が表示されませんでした。これを有効にするには、コマンド "netsh http add urlacl url = http://192.168.0.10:8000/MyService/Service user = Kevin"を実行しましたurl。 – Kevin

+0

netstatはWCFサーバーマシンから実行する必要があることに注意してください。ポート8000​​の行が表示されない場合は、WCFサーバーから「telnet localhost 8000」コマンドを実行して、サービスが開始されているかどうかを確認できます。 – Damiox

0

試してみることができるいくつかのもの。

1)クライアントマシンから192.168.0.10に接続できることを確認してください。 2)サーバーマシンのポート8000​​がHTTP通信用に開いていることも確認する必要があります。

関連する問題