3
一种简单的方法来“编辑”来自TCP主机的流量(Linux)
在处理连接的进程获取流之前,我需要对来自已知tcp host:port的传入流量进行一些小的修改。 例如,让192.168.1.88成为运行Web服务器的远程主机。 我需要这样,当我本地主机上的某个进程从192.168.1.88:80(例如浏览器)接收到数据时,首先将数据更改text-A为text-B,如下所示: 127.0.0.1:...连接到192.168.1.88:80 127.0.0.1:...发送到192.168.1.88:80: GET / 192.168.1.88:80发送到127.0.0.1:...: HTTP/1.0 200 OK Content-Type: text/plain Some text-A, some other text 该数据在某种程度上被系统拦截,并传递给程序,其输出为: HTTP/1.0 200 OK Content-Type: text/plain Some text-B, some other text 系统会将更改后的数据提供给处理127.0.0.1:...的过程,就像它来自192.168.1.88:80一样。 假设我有一种基于流的方法来进行此更改(sed例如使用),预处理传入的tcp流的最简单方法是什么? 我想这会涉及到iptables,但我不是很擅长。 请注意,该应用程序应具有处理原始主机的感觉,因此设置代理不太可能是一种解决方案。