主机不能访问虚拟机中的web服务【解决方案】

情况是这样的:在虚拟机visualBox里安装了centos7系统,并且在该系统里运行了一个web服务,想通过宿主机或者外网来访问该服务,总是无法访问(虚拟机网卡已配置成桥接):

 

宿主机【win7】ip:

虚拟机【CentOS7】ip:

彼此能互相ping通,虚拟机中启动了一个简单的web服务:一个简单的只要访问就能得到一句简单的响应:

在虚拟机内部能够访问:

在主机中通过浏览器就不能:

在路由器里配置转发规则:

从外网依然无法访问:

百度了其它一些方法都不行,最后实在没辙,关了windows防火墙和linux防火墙,居然能够访问了,我服。

 

总结一下,原来是CentOS7防火墙没有开启端口3032,开启的方法为(老版本或其他linux版请自行百度):

[plain] view plain copy
 
 
  1. [root@localhost sysconfig]# firewall-cmd --permanent --add-port=3032/tcp  
  2. success  
  3. [root@localhost sysconfig]# firewall-cmd --reload  
  4. success  

附:直接关闭防火墙(不推荐)最好还是开启

[plain] view plain copy
 
 
  1. [root@localhost sysconfig]# systemctl stop firewalld.service  
  2. [root@localhost sysconfig]# systemctl start firewalld.service  

 

这样一来就都可以访问了。

 

附:如果使用的是网络地址转换NAT链接:


需要在【端口转发】里设置一下虚拟机映射主机端口:


其中192.168.56.1是虚拟机的ip地址:

10.0.2.15是虚拟机里centos系统的ip地址:

同样修改一下防火墙配置,即可访问:

posted @ 2021-06-01 21:42  FFLYY  阅读(1685)  评论(0编辑  收藏  举报