我使用以下命令将主机节点中的tcp 2222转发到vm(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地址呢?
通过更改-i到-d来获得它的工作:
iptables -t nat -A PREROUTING -d xxxx -p tcp -m tcp --dport 2222 -j DNAT --to-destination 192.168.0.100:22
其中xxxx是我想要监听的公共IP。