問題が発生している Windows 2003 サーバーに展開された WCF サービスがあります。構成は使用wsHttpBinding
しており、IP アドレスを指定しています。サービスは、Windows サービスによってホストされています。
サービスを開始すると、ほとんどの場合、間違った IP アドレスが取得されます。数回、正しいアドレスにバインドされただけで、そのバインドがドロップされ、しばらく処理した後、NIC にバインドされた別のアドレス (2 つあります) に移動しました。
現在、ポート 80 を使用しています (IIS を 経由で 1 つのアドレスのみにバインドするように構成しましたhttpcfg
) が、別のポートを使用して試してみましたが、結果は同じでした。
Windows サービスが WCF サービスのホストを開始すると、プロパティはそれが正しいアドレスにバインドされていることを示します。ただし、tcpview は、実際には正しくないアドレスでリッスンしていることを示しています。
以下は、baseAddress を設定する構成の一部です。バインドされるものは、.9 ではなく .4 になります。
<services>
<service name="Service.MyService"
behaviorConfiguration="serviceBehavior">
<host>
<baseAddresses>
<add baseAddress="http://xx.xx.xx.9:80/" />
</baseAddresses>
</host>
<endpoint address="MyService"
binding="wsHttpBinding"
bindingConfiguration="WSHttpBinding_IMyService"
contract="Service.IMyService" />
<endpoint address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange" />
</service>
</services>
- 設定する必要がある他の構成はありますか?
- これが間違ったアドレスにバインドされている場所を追跡するのに役立つツールはありますか?