Windows ですべての一時ポートが使用されている場合はどうなりますか?

Windows ですべての一時ポートが使用されている場合はどうなりますか?

すべてのエフェメラル ポートが使用されている場合に、別のソケットがサーバーに接続しようとすると、接続は失敗しますか? または、ソケットにエフェメラル ポートの範囲外のポートが割り当てられますか?

答え1

記事言及されているフランク・トーマスのコメントWindows ドメイン認証を含め、送信接続を必要とするすべての操作が失敗することを示します。

このBizTalkトラブルシューティングページ一時的なポートが枯渇した状態で接続を作成しようとすると、.NET アプリケーションで次のいずれかのエラーが発生すると記載されています。

System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a send.

System.Net.Sockets.SocketException: Only one usage of each socket address (protocol/network address/port) is normally permitted.

デフォルトでエフェメラル ポートに割り当てられる範囲はバージョンごとに異なりますが、これらのポートが不足すると必ず接続障害が発生します。

関連情報