我有三组服务器将涉及当前的数据流。
服务器 A ----> 服务器 B ---> 远程服务器/存储
我正在将文件从服务器 A 下载/推送到 B,然后服务器 B 会将这些文件转发到远程服务器。当将日志从服务器 B 转发到远程服务器时,我希望保持原始服务器的主机 IP 不变,这意味着;当从服务器 B 传递到远程服务器时,我希望将服务器 A 的 IP 添加到 TCP 标头中。
正如我在“服务器故障”论坛上发现的那样,可以使用“netsed”来实现我的要求。抱歉,我不太清楚。你能帮我解决这个问题吗?
提前谢谢你,卢克。
答案1
感谢您的澄清。我部分回答说您不能使用 netsed 在交付之前更改此设置,远程服务器从不可变(不破坏)的 IP 层获取 IP,服务器 B 上的 NAT 事件不会有帮助,因为这是一个 IP 重写。即使您有从服务器 B 到远程服务器的 SSH 隧道,它也只会看到来自 B 的 IP。
您可以在服务器 A 和远程服务器之间设置一些 VPN,这样服务器 A 的 VPN IP 就可以通过链接看到。这可能要付出很多努力,但回报却不多。
我建议按照以下方法获取服务器 B 的系统日志,以便远程监听来自服务器 A 的系统日志消息,并将其转发到远程服务器。有一篇旧文章rsyslog可靠转发,但根据您所使用的功能,您当前的 syslog 服务器可能会以某种方式支持它。