Linux

建立 TCP 會話而不終止它(不發送 RST/FIN)

  • November 16, 2021

我正在尋找一個項目的資訊。我正在尋找一個 Linux 工具,它可以只建立一個 TCP 會話並留在那里而不發送 FIN/RST。

我嘗試了諸如此類的工具iperf,一旦建立連接,它也會發出 FIN。

請讓我知道是否有可用的工具?

核心將 SYN/FIN/RST 作為 TCP 協議的一部分進行管理,因此沒有這樣的工具可以創建 TCP 流而不結束它。

一些可能性

  • 編寫您自己的程式碼,直接生成原始 SYN 和 SYN/ACK 數據包
  • 使用標準工具,但將其暫停,直到不再需要它
nc remoteHost remotePort &    # nc example.com 80
ncPID=$!

sleep 1
kill -STOP $ncPID
  • 使用標準工具並實施防火牆規則以在關閉流之前阻止它
nc remoteHost remotePort &
ncPID=$!

sleep 1
iptables -I OUTPUT --dst remoteHost --dport remotePort -j DROP
kill $ncPID

sleep 1
iptables -D OUTPUT --dst remoteHost --dport remotePort -j DROP

引用自:https://unix.stackexchange.com/questions/677749