我有一台运行多个虚拟机(KVM)的服务器。我的KVM主机确实有一个公共地址(例如85.17.219.1)和一个内部IP地址(192.168.100.1)。
我的虚拟机有一个内部IP地址(192.168.100.15),该IP地址承载Rabbitmq服务器,并侦听端口5672。
通过KVM主机,我可以通过端口5672 telnet到192.168.100.15,效果很好。
我想从“外部/公共”访问在虚拟机上运行的Rabbitmq服务器,因此我在KVM主机上创建了以下转发规则:
firewall-cmd --add-forward-port = port = 5672:proto = tcp:toport = 5672:toaddr = 192.168.100.15
不幸的是,它不起作用:
telnet 85.17.219.1 5672
尝试85.17.219.1 ...
telnet:无法连接到远程主机:连接被拒绝
虚拟机上的Rabbitmq服务器正在监听0.0.0.0,因此这不是问题。
我的KVM主机有1个物理接口(enp2s0f0),该物理接口桥接到保存公用IP地址的br0。
KVM主机上的接口virbr0拥有内部IP地址(192.168.100.1)。
在我的KVM主机上,我有1个活动区域(公共),该区域具有以下接口:br0 enp2s0f0 virbr0
由于某种原因,它不转发流量,使用tcpdump侦听虚拟机不会显示任何活动。