我正在尝试将所有传入的 TCP 数据包转发到多个 IP 地址。
设置:
A - 10.10.10.10
B - 10.10.10.11
C - 10.10.10.12
D - 10.10.10.13
我希望 B、C 和 D 接收(在端口 8000 上)A的端口 12345 上的所有传入数据包。理想情况下,我希望 A 这样做。
我可以在 A 上使用此规则转发到一台机器:
iptables -t nat -A PREROUTING -p tcp --dport 12345 -j REDIRECT --to 10.10.10.11:8000
我还可以使用 TEE 选项克隆数据包:
iptables -t mangle -A PREROUTING -p tcp --dport 8000 -d 10.10.10.11 -j TEE --gateway 10.10.10.12
到目前为止一切正常。问题是 C 将收到目标 IP 为 B 而不是 C 的数据包。此外,我不知道如何转发到 D 和/或更多其他目的地。
如何使用 iptables 规则使 A 将端口 12345 上的所有传入数据包发送到所有其他机器(B、C 和 D)到端口 8000?