iptables 端口转发指定ip

iptables 端口转发指定ip

我使用以下命令将主机节点中的 tcp 2222 转发到虚拟机(192.168.0.100)中的 tcp 22:

iptables -t nat -A PREROUTING -i vmbr0 -p tcp -m tcp --dport 2222 -j DNAT --to-destination 192.168.0.100:22

其中 vmbr0 是主机节点中多个公共 IP 地址的桥梁。现在的问题是主机节点中的所有公共 IP 地址都接受来自 tcp 2222 的传入请求。我希望限制为只有一个公共 IP 地址。那么我应该如何修改 iptables 命令以指定公共 IP 地址,而不是监听绑定到 vmbr0 的所有 IP 地址?

答案1

-i通过更改为-d:可以让它工作:

iptables -t nat -A PREROUTING -d x.x.x.x -p tcp -m tcp --dport 2222 -j DNAT --to-destination 192.168.0.100:22

其中 xxxx 是我想要监听的公共 IP。

相关内容