単純 TCP サーバーはポートをリッスンしますが、SYN-ACK を返しません。

単純 TCP サーバーはポートをリッスンしますが、SYN-ACK を返しません。

指定されたポートでリッスンしてSYNをリッスンすると、コマンドラインTCPサーバー(可能な限り単一行)を探しています。いいえ通常のTCPサーバーのようにSYN-ACKで応答します。

この状況を正しく処理するために、過負荷状態でサーバーに接続しようとするクライアントをテストすることが目的です。

答え1

私が知る限り、これは完全に可能です。生のIPソケットにバインドする必要があります。UID= 0(ただし、これを防ぐために定義された関数があるかもしれません。わかりません)。実はそれだ兆し働いていますステルスモード

答え2

説明したようにコマンドラインツールが見つかりませんでしたが、回避策があります。iptables:

sudo iptables -A INPUT -p tcp --destination-port 52379 -j DROP

答え3

-lオプションと一緒にnc(netcat)を試すことができます。

-l      Used to specify that nc should listen for an incoming connection
        rather than initiate a connection to a remote host.  It is an
        error to use this option in conjunction with the -p, -s, or -z
        options.  Additionally, any timeouts specified with the -w option
        are ignored.

のように

nc -l yourport

答え4

Syn-ack に応答しない場合、相手は引き続き syn-ack を送信できます。ポート 9 が実行するタスクを実行することで、この問題を特定できます。つまり、承認(syn-ack送信)を実行してから、他のすべてのパケットを破棄します。望むより/etc/services。ソケットを消費します。

別のオプションは、ファイアウォールでIP +ポートをブロックし、60分後にルールを削除することです。

関連情報