iptables 数据包转发-保留客户端 IP

iptables 数据包转发-保留客户端 IP

我有类似的问题:NAT 后保留源 IP

我需要在特定端口上将数据包从 ip xxxx 转发到 yyyy(xxxx 服务器位于 xxxx 服务器 LAN 之外的不同国家/地区)我使用了上面问题中提到的规则,但客户端数据包似乎仍然来自转发服务器 IP xxxx,而不是来自客户端 IP。

这是我使用的规则+ufw防火墙,打开SSH端口并允许转发:

FORWARDER_IP=x.x.x.x &&
SERVER_IP=y.y.y.y &&
SERVICE_PORT=12345 &&
TRANSPORT=udp &&

iptables -t nat -A PREROUTING -p $TRANSPORT -d $FORWARDER_IP --dport $PORT -j DNAT --to $SERVER_IP &&
iptables -t nat -A POSTROUTING -p $TRANSPORT -d $SERVER_IP --dport $PORT -j SNAT --to $FORWARDER_IP &&
iptables -t nat -A POSTROUTING -p $TRANSPORT -s $SERVER_IP --dport $PORT -j SNAT --to $FORWARDER_IP

知道我的问题可能是什么吗?

这有可能吗?如果不可能,你能推荐另一种方法吗?

相关内容