主机不能访问虚拟机中的web服务【解决方案】
情况是这样的:在虚拟机visualBox里安装了centos7系统,并且在该系统里运行了一个web服务,想通过宿主机或者外网来访问该服务,总是无法访问(虚拟机网卡已配置成桥接):
附:直接关闭防火墙(不推荐)最好还是开启
宿主机【win7】ip:
虚拟机【CentOS7】ip:
彼此能互相ping通,虚拟机中启动了一个简单的web服务:一个简单的只要访问就能得到一句简单的响应:
在虚拟机内部能够访问:
在主机中通过浏览器就不能:
在路由器里配置转发规则:
从外网依然无法访问:
百度了其它一些方法都不行,最后实在没辙,关了windows防火墙和linux防火墙,居然能够访问了,我服。
总结一下,原来是CentOS7防火墙没有开启端口3032,开启的方法为(老版本或其他linux版请自行百度):
- [[email protected] sysconfig]# firewall-cmd --permanent --add-port=3032/tcp
- success
- [[email protected] sysconfig]# firewall-cmd --reload
- success
- [[email protected] sysconfig]# systemctl stop firewalld.service
- [[email protected] sysconfig]# systemctl start firewalld.service
附:如果使用的是网络地址转换NAT链接:
需要在【端口转发】里设置一下虚拟机映射主机端口:
其中192.168.56.1是虚拟机的ip地址:
10.0.2.15是虚拟机里centos系统的ip地址:
同样修改一下防火墙配置,即可访问: