我有一个路由器连接2个networking的情况,所以我有这台机器与这个接口:作为路由器工作的虚拟机1:
eth1: 193.136.200.254 eth2: 192.168.10.254 eth3: 24.200.220.254
虚拟机2:
eth1: 192.168.10.2 eth1:0: 192.168.10.3
…虚拟机3:
eth1: 24.200.220.2 eth1:0: 24.200.220.3
在虚拟机3我有一个与一个MySQL服务(24.200.220.3)相关联的IP,我希望连接到虚拟机2(196.168.10.2)中的服务器的客户端应该能够连接服务器(24.200.220.3)在虚拟机中3.放下networking之间的所有其他通信。 我试图做这个使用这个iptables规则:
iptables -P FORWARD DROP iptables -A FORWARD -p tcp -d 24.200.220.3 -s 192.168.10.2 --sport 3306 -j ACCEPT iptables -A FORWARD -p tcp -s 24.200.220.3 -d 192.168.10.2 --dport 3306 -j ACCEPT
在虚拟机中testing这个规则3我运行命令:nc -l 24.200.220.3 3306在虚拟机2中运行:nc 24.200.220.3 3306然后我在一台机器上写了一个随机字,但是它没有出现在其他机器。 所以它没有工作。 你知道什么是错的吗?
没有什么错误 如果使用数据库目标IP地址,则需要使用目标数据库端口。 对于源IP和端口也是这样。
iptables -P FORWARD DROP iptables -A FORWARD -p tcp -d 24.200.220.3 -s 192.168.10.2 --dport 3306 -j ACCEPT iptables -A FORWARD -p tcp -s 24.200.220.3 -d 192.168.10.2 --sport 3306 -j ACCEPT