接続を処理するプロセスがストリームを取得する前に、既知の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
システムは、変更されたデータを、192.168.1.88:80からのように、127.0.0.1:...を処理するプロセスに渡します。
ストリームベースの方法でこの変更を行う(sed
たとえば、使用する)と仮定すると、着信tcpストリームを前処理する最も簡単な方法は何ですか?
これにはが含まれると思いますが、iptables
私はあまり得意ではありません。
アプリケーションは元のホストを処理するように感じる必要があるため、プロキシの設定はおそらく解決策ではないことに注意してください。