使用 iptables 将流量转发到服务器

使用 iptables 将流量转发到服务器

我有一台服务器与所有其他主机(10.10.0.100)位于同一子网上。(10.10.0.0/24)我希望该服务器能够收到其 eth0 接口上所有流量(Windows 和 Linux 机器)的完整副本。我在防火墙上运行 iptables,这就是我想设置流量镜像的地方。

我尝试了这个,但没有成功。所有流量都流向服务器,但这种方式是转发而不是复制,因此主机无法再上线。

iptables -t nat -A PREROUTING -s 10.10.0.0/24 -j DNAT --to-destination 10.10.0.100

答案1

(从我的评论复制)这是您所做的正确行为 - 重定向流量。

然而,您想要做的是复制流量,将一个副本发送到合法目的地,将另一个副本发送到您想要镜像流量的主机。

要使用 iptables 进行镜像,您需要使用 ROUTE 表和 TEE 目标。看一下

(来自 OP 的评论)该组合经过 OP 的测试和验证:

iptables -t mangle -A PREROUTING -d 192.168.1.15 -j TEE --gateway 192.168.1.100

iptables -t mangle -A PREROUTING -s 192.168.1.15 -j TEE --gateway 192.168.1.100

相关内容