rawソケットの仕組みを学ぶ方法として、TCP
宛先ポートに基づいてパケットをドロップするダミーのファイアウォールをプログラミングしました。これは動作していますが、問題は、タイムアウトに達するまでかなりの時間クライアントが再試行することです。TCP RSTパケットは接続タイムアウトを短縮できますか?
回答が得られない可能性があるので、おそらくクライアントが長く再試行するのかどうか疑問に思っていました。その場合、ファイアウォールがクライアントからのTCP SYNC
メッセージにTCP RST
と返信する場合に役立ちますか?そうでない場合は、クライアントが再試行を停止するように強制する方法がありますか?(Linux
のタイムアウト時間を短縮しないで、パケットを特定の回答を得てクライアントを停止させます)
パケットに応答すると、クライアントにファイアウォールが存在することがわかります。このため、ファイアウォールはしばしば応答しないように設定されています。 –
わかりましたが、私はちょうどTCPについてもっと学びたいと思っていました。私はRSTメッセージを送り返しているが、何も起こっていないので、間違って構築されているか、これがTCPの通常の動作であるかどうかはわかりません。 –
私はクライアントに 'RST' 。 「RST」は、会話中の予期しないメッセージを示す。クライアントは新しい会話を開始しようとしているので、多くのクライアントが再試行すると思います。ほとんどの場合、送信したいのは、[ICMPの宛先到達不能パケット](https:// en。wikipedia.org/wiki/ICMP_Destination_Unreachable)。 –