シンプルなポート ノッキング セットアップ用の Linux クライアント スクリプトを作成しようとしています。私のサーバーには、アクセスを開くために特定のポートへの特定のシーケンスの TCP SYN を要求するように構成された iptables があります。telnet を使用するか、netcat を手動で呼び出す (コマンドを実行した直後に Ctrl-C キーを押す) ことで正常にノックできますが、自動ノック スクリプトを作成できません。
自動化されたポート ノッキング スクリプトに対する私の試みは、単純に「nc -w 1 xxxx 1234」コマンドで構成されています。このコマンドは、xxxx ポート 1234 に接続し、1 秒後にタイムアウトします。ただし、問題は、自動化された SYN 再試行を行うカーネル (?) にあるようです。ほとんどの場合、nc が接続を試行する 1 秒間に複数の SYN が送信されます。これは tcpdump で確認しました。
それで、SYNの再試行を防ぎ、netcatが接続/ノックの試行ごとにSYNを1つだけ送信するようにする方法を知っている人はいますか? 仕事をする他のソリューションも大歓迎です。