半分閉じたnetcat接続

半分閉じたnetcat接続

netcat接続の入力がEOFに達すると、どのようにTCP接続の送信部分を終了させることができますか?

すべての入力(つまり、クライアントがFINを送信するまで)を読み取り、データ処理を開始して応答を再送信する(非標準)TCPサービスがあります。ncこのサービスと対話するために使用したいと思います。ただし、現在の応答はコンソールに到着せず、Wiresharkを使用すると、接続が終了したときにのみ(たとえば、タイムアウトのために)接続の送信側が終了することがわかりncます。ncこの動作を変更するコマンドラインオプションが見つかりませんでした。

答え1

コメント渡す@meuhおすすめsocatこの目的のために。うまく使ったことに基づいて

some command | socat -t30 - TCP:localhost:1234

EOFを含むデータを送信し、依然として応答を受け取ります。

関連情報