1

私の専用サーバーには、5つの使用可能な静的IPアドレスがあります。このサーバーの主な目的は、単一の宛先への数百の接続を作成して維持することです。当然のことながら、数百の接続が確立された後、ソケットの読み取り/書き込みの例外と大量の切断に直面します。これは、宛先が単一の発信元IPアドレスを認識して一時的にブロックするか、AとBの間の単一リンクが不安定になるために発生する可能性があります。

実際には、複数の送信元IPアドレス間で接続を分割した結果を確認したいと思います。

これまでの私の調査により、このような質問と回答が得られました。これは、を使用することを提案していServicePoint.BindIPEndPointDelegateます。

ただし、コンソールアプリ全体を特定のIPアドレスにバインドしたいと思います。どうすればこれを達成できますか?

注:現在、FluorineFXを使用しています。FluorineFXに接続元のIPアドレスを指示するソリューションが存在する場合は、それも機能します。

4

1 に答える 1

1

.NETでTCP機能を使用する場合、送信元IPアドレスを指定するのは非常に簡単です。を使用している場合は、コンストラクターをTcpClient使用するだけTcpClient(IPEndPoint localEndPoint)で、指定されたローカルIPアドレスにバインドされます。Socketクラスを使用して行われる接続の場合Bind(EndPoint localEP)、ソケットのメソッドを使用して、それをローカルアドレスに関連付ける必要があります。

于 2013-01-23T23:43:08.277 に答える