Wil*_*iam 5 networking linux port-forwarding socat
我正在尝试调试客户端使用 TCP 连接的服务(在 Linux 中)。我无法更改任何一个程序(没有源代码),也无法使用窥探网络层的机制(如 tcpdump、pcap、wireshark 等)。
我可以配置每个服务和客户端程序来监听或连接我需要的任何端口或地址绑定。
我知道可以使用 SOCAT 程序转发任意连接,使用类似SOCAT -d -d TCP-LISTEN:2001,bind=127.0.0.1,fork TCP:localhost:2002. 但是我没有看到标准版本的 socat 有任何机制来记录来回传输的数据。
我需要的是一种以这种方式转发 TCP 连接的方法,但是将双向的数据记录到一个文件(好吧,一对文件)中。理想情况下,此策略仅使用库存 Linux 软件包,例如 socat 或 tee。
我意识到有可能使用 Perl 或 Python 或类似的方法编写一个执行此操作的程序,但出于这个问题的目的,我想要一种仅使用胶水(bash 等)和库存程序的方法。
小智 7
添加-v打印正在传输的数据的选项:
SOCAT -v -d -d TCP-LISTEN:2001,bind=127.0.0.1,fork TCP:localhost:2002
Run Code Online (Sandbox Code Playgroud)
为了将其写入文件添加(Windows):
1> log.log 2>&1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2333 次 |
| 最近记录: |