嗅探 TCP 连接并转发到其他适配器上的 TCP 连接

嗅探 TCP 连接并转发到其他适配器上的 TCP 连接

我有一个带有两个网络适配器的系统。其中一个网络适配器连接到端口镜像,因此它可以看到网络中的所有流量。我想嗅探该连接以查找具有特定端口号的某个 TCP 连接,并使用第二个网络适配器将该连接的所有数据转发到 TCP 服务器。

到目前为止我已经尝试过:

  • 用于socat侦听某个端口并将其分叉到另一个端口。当直接与正在侦听的端口建立 TCP 连接时,此方法有效socat,但我不知道如何用嗅探连接的输入来替换它。
  • tcpdump嗅探所有数据。但是,我不确定如何将这些数据转发到不同的 TCP 连接。

任何帮助将非常感激!

答案1

听起来您正在寻找的是端口转发。

您可以尝试这样的方法。

iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 1111 -j DNAT --to x.x.x.x:2222
iptables -A FORWARD -p tcp -d x.x.x.x --dport 2222 -j ACCEPT

上述示例将把 eth0 端口 1111 上接收的所有入口流量转发到端口 2222 上的 IPv4 地址 xxxx。

相关内容