受信トラフィックのTCPヘッダーを「編集」する

受信トラフィックのTCPヘッダーを「編集」する

現在のデータ フローに関係するサーバーが 3 セットあります。

サーバー A ----> サーバー B ---> リモート サーバー/ストレージ

サーバー A から B にファイルをダウンロード/プッシュし、サーバー B がそれらのファイルをリモート サーバーに転送します。サーバー B からリモート サーバーにログを転送するときに、元のサーバーのホスト IP を変更しないようにします。つまり、サーバー B からリモート サーバーに渡すときに、サーバー A の IP を TCP ヘッダーに追加します。

「サーバー障害」フォーラムで見つけたように、「netsed」を使用して要件を満たす可能性があります。申し訳ありませんが、私にはよくわかりません。これについて助けていただけませんか?

よろしくお願いします、ルーク。

答え1

ご説明ありがとうございます。部分的にお答えすると、配信前に netsed を使用してこれを変更することはできません。リモート サーバーは不変の (破壊されない) IP レイヤーから IP を取得します。これは IP 書き換えであるため、サーバー B の NAT も役に立ちません。サーバー B からリモート サーバーへの SSH トンネルがある場合でも、B からの IP しか表示されません。

サーバー A とリモート サーバーの間に VPN を設定すると、リンク経由でサーバー A の VPN IP が見えるようになります。これはおそらく、多くの労力がかかるのに、あまり成果は得られないでしょう。

サーバーBのsyslogをリモートでサーバーAからのsyslogメッセージをリッスンし、それをリモートサーバーに転送する方法をお勧めします。古い記事があります。rsyslog 信頼性の高い転送ただし、使用しているものによっては、現在の syslog サーバーが何らかの形でサポートしている可能性があります。

関連情報