所以我对 iptable 路由比较陌生,但我想做的事情应该很容易。
我试图引导来自某个 IP 块的流量,我正在使用一个名为 inetsim 的程序,它的作用是使用 IP 地址作为绑定地址,这将变得类似于路由器。根据配置说明,我使用 192.168.444.1 作为我的网关和 DNS 服务器。底部有一些选项可用于路由,但它们还不够友好。我有 2 个名为 eth0 和 eth1 的 eth 端口,它们的 IP 地址分别为 10.10.10.123 和 192.168.444.1。我在 10.10.10.250 上有一个报告服务器。
机器如下 192.168.444.2 windows7sp1 192.168.444.1 + 10.10.10.123 debian server
报告服务器有一个程序可以建立从目标机器到报告服务器的连接。在正常情况下,这将毫无障碍地工作,但是 inetsim 是一种互联网黑洞,它创建 iptables,将所有流量路由到一个 fakenet,包括未知服务,它们被路由到一个虚拟端口 1。
我需要一种方法将发往 10.10.10.250:48002 的数据包从 192.168.444.2[连接到 192.168.444.1] 转发到 10.10.10.123[除非有更简单的方法]。我已经尝试过 snat 和 dnat ,但它似乎将数据包破坏到它们以不同方式出现的位置,因为服务器拒绝了它收到的数据包。Windows机器声明它已经建立了连接,但就像我通过数据包检查所说的那样,它似乎不喜欢这些数据包。
我希望这样做的方式是根本不修改实际的数据包,或者至少尽可能少。如果您需要我制定的 iptables 规则或 inetsim 输出的规则,我可以发布这些规则。
任何帮助表示赞赏。感谢你们!
[编辑:我已经尝试了很多不同的规则,我不只是问,因为我希望别人为我做这件事。我已经这样做了好几个星期了,并且成功了一次。然后我试图复制它,但有些东西坏了。]