情景
在Ubuntu上开启了RabbitMQ消息队列服务。为了方便,想在本机(localhost)上访问RabbitMQ的图形化管理界面。
首先在Ubuntu查看一下虚拟机IP:
ifconfig -a
接着在本机浏览器上访问:
http://10.211.55.4:15672
显示无法连接到服务器。
排查
❶ ping!ping!ping!
在主机上ping一下虚拟机
ping 10.211.55.4
在虚拟机上ping一下主机
ping 172.20.10.7
❷ 资源是否真的存在?服务是否正确开启?
这是个极其容易被忽视的低级问题,即ip正确(端口也正确),但其实所访问的资源其实压根不存在。
对于一些浏览器,从报错信息上容易混淆两种错误原因。
另外,如果连相关服务都没有正确开启,那就更别提资源是否存在了。至于服务是否开启,通常在虚拟机上检查。
❸ 虚拟机防火墙问题
不关闭防火墙虽然可以ping通,但主机无法访问虚拟机网页(这可以解决99.99%的问题)。
sudo ufw status verbose
sudo ufw disable
sudo ufw enable
补充
检查主机和虚拟机能否相互ping通时,使用的是哪种IP呢?
先看虚拟机。会ifconfig出两种IP:
enp0s5 = en0(Wi-Fi)
lo = local
用的自然是第一个。
再看主机。如果你使用的是mac,那么在主机ifconfig出的一系列IP信息会让你眼花缭乱,我简单查了一下:
lo0 = loopback
gif0 = Software Network Interface
stf0 = 6to4 tunnel interface
en0 = Ethernet 0
fw0 = Firewire
en1 = Ethernet 1
vmnet1 = Virtual Interface
我们用的是en0:
Hardware Port: Wi-Fi
Device: en0
Ethernet Address: c4:b3:01:bd:ad:1d
Hardware Port: Bluetooth PAN
Device: en3
Ethernet Address: c4:b3:01:bd:ad:1e
Hardware Port: Thunderbolt 1
Device: en1
Ethernet Address: 4a:00:07:4d:b2:b0
Hardware Port: Thunderbolt 2
Device: en2
Ethernet Address: 4a:00:07:4d:b2:b1
Hardware Port: Thunderbolt Bridge
Device: bridge0
Ethernet Address: 4a:00:07:4d:b2:b0
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)