1. ホーム
  2. networking

[解決済み】接続タイムアウトエラーを人為的に発生させる

2022-03-25 01:15:47

質問

当社のソフトウェアで、接続タイムアウトを受けるとバグが発生することがあるのですが。このようなエラーは非常に稀です(通常は内部ネットワークで接続が切断されたとき)。このような効果を人工的に発生させ、私たちのソフトウェアをテストするにはどうしたらよいでしょうか?

もしそれが重要なら、アプリはCAsyncSocketクラスを使ってC++/MFCで書かれています。

編集する

存在しないホストで試してみましたが、ソケットエラーが発生します。

<ブロッククオート

WSAEINVAL (10022) 無効な引数です。

次に試したのは アレキサンダー の提案で、別のポート、例えば81に接続することにしました(自分のサーバー上ですが)。これはとてもうまくいきました。接続が切れたのと全く同じです(60秒待たされた後、エラー)。ありがとうございました。

解決方法を教えてください。

既存のホストに接続するが、単にTCP SYNパケットをドロップするファイアウォールでブロックされているポートに接続する。例えば、www.google.com:81。