現在のデータ フローに関係するサーバーが 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 サーバーが何らかの形でサポートしている可能性があります。