外网主机访问虚拟机下的web服务器(NAT端口转发)

主机:系统win7,ip地址172.18.186.210

虚拟机:VMware Workstation 7,虚拟机下安装了Centos操作系统,ip地址是192.168.202.128,部署了LAMP,成为一个web服务器

网络环境:校园网(有认证服务器,需要账号认证才能上网),虚拟机采用NAT的方式联网

在校园网的环境下,可以把校园网内的其他主机看成是外网的主机。其实,虚拟机采用NAT联网的方式,可以让我们联想到计算机网络的相关知识,可以把我们的主机看成是一部路由器,然后虚拟机就是处在一个局域网中的一台主机,共享路由器一个端口的地址对外网进行访问,但是外网要访问这部主机,就需要在路由器上做 端口映射。于是乎,我们要做的就是在VMware上做端口映射,将主机的一个端口映射到虚拟机的ip地址,那么外网访问虚拟机,只要输入 主机的ip:port 就可以访问到虚拟机了。首先,设置虚拟机网络:

选择:编辑 --> 编辑虚拟网络,如下图所示:

得到如下的设置窗口(由于NAT的联网方式是使用VMnet8这个网卡的,所以我们编辑这个网卡,点击“VMnet8”):

可以看到,我的虚拟机是在192.168.202.0这个网段,我们点击NAT Settings(如上述红框内所示),出现如下界面:

点击上图红色框的“Add”,可以设置主机端口与虚拟机ip和端口的映射,里面存在的那个映射是我已经设定好的,点击Add之后会出现下面的设置界面:

我将主机的5901端口映射到虚拟机的“192.168.202.128”的80端口了,因为web服务自动开放的端口是80,所以,只要我们访问“http://172.18.186.210:5901”,就可以访问到虚拟机的80端口,也就是web服务了。如果是按照我之前的博文搭建的web服务器的话,你就能访问到“index.php”这个文件了(也就是之前新建的web服务器/var/www/html/下的一个php文件,/var/www/html/是web服务器的默认网页程序目录)。

其实说起来,虚拟机下的NAT上网和端口映射都是很简单的,操作方便,当然,里面包含了许多虚拟网络机制了,封装的好,面对用户透明,就显得很智能了。还有桥接等上网方式,面对不同的应用,都有其独特的优势,值得我们深入学习。

时间: 2024-08-02 15:14:51

外网主机访问虚拟机下的web服务器(NAT端口转发)的相关文章

宿主如何访问虚拟机中的web服务器

宿主:win10专业版 虚拟机:VMware 12 pro 虚拟机系统:Ubuntu 16.04 LTS Web服务器:Apache(xampp) (图中选的是桥接模式,NAT模式也行.) Ubuntu 系统下Ctrl+Alt+T打开终端 输入ifconfig回车 查看IP 在win10 系统中 浏览器地址栏输入IP 即可访问Ubuntu虚拟机中的Web服务器. 在Ubuntu中亦可访问Win10 中的Web服务器.

Windows服务器外网无法访问web的解决方法

windows环境下使用集成 IIS服务器时一般不会发生外网无法访问的问题,而使用apache.kangle.lighttpd.niginx.tomcat等时:服务器上可通过配置的域名访问网站,ping服务器ip.网站域名都是通的,但是服务器以外远程无法访问主机上的网站. 方法1:关闭Windows server系统自带防火墙 1 打开防火墙找到:windows防火墙属性. 2 在公用配置文件中关闭防火墙. END 方法2:增加TCP80端口 在系统防火墙设置中点击添加端口按钮:(如图所示)  

我在腾讯云上买了太CVM服务器,来配置下外网如何访问MySql全程实录

1.服务器申请 最近在给一个小企业做个报价系统,C#WPF框架开发,桌面程序.由于用户可能经常出差,更换电脑,因此考虑将程序的数据库放到外网服务器上,每次程序使用需要登录验证,有点类似QQ的方法.这里有人说为什么不直接做成web,桌面应用已经落伍了.确实如此,原因主要是这个企业的报价系统的前端交互太多,一堆的javascript代码,还有一堆的word报表输入输出,做成web太过麻烦.因此还是决定做成桌面应用程序.由于访问量和并发性并不大,因此考虑性能一般的云服务器就可以了. 正好赶上腾讯活动,

主机访问 虚拟机web注意事项

在这里, 我通过NAT的方式, 通过主机访问虚拟机. 需要做的是, 将主机中访问的端口, 映射为虚拟机的'编辑->虚拟网络编辑器->vmnet8', 如下图 在弹出的'映射传入端口'界面中,做端口映射编辑, 如图 其中, 192.168.16.123是虚拟机的ip地址; 8080是部署在虚拟机上的, 通过该端口访问web. 所以, 当我们在主机上访问虚拟机时, 访问端口8081, 就相当于访问 192.168.16.123:8080 例如, 我的主机ip为 192.168.1.24, 需要访问

Windows Server2008下MYSQL外网无法访问问题解决

这几天为俱乐部配置了个服务器,用作项目开发之用. 安装的是windows Server 2008 R2 操作系统 按照国际管理,安装了数据库 MYSQL 5.0. 一路顺利,可以通过外部连接MYSQL的时候出现了问题,无论如何也连接不上 发现这方面的资料很少,几经摸索,终于知道是防火墙的问题 解决方法如下: 选择:网络->windows 防火墙->高级设置->入站规则 然后点击右上角的新建规则 选择"端口" 下一步,输入3306端口,加入规则, 然后再次点击新建规则

CenOS下Tomcat外网不能访问

今天在CentOS下部署了一个Tomcat,启动没问题,但是外网不能访问,检查知防火墙开了. 1.检查防火墙是否开启,执行 /etc/init.d/iptables status 如果有下面结果,表示防火墙开启. [[email protected] bin]# /etc/init.d/iptables status表格:filterChain INPUT (policy ACCEPT)num target prot opt source destination 1 ACCEPT all --

CDH中HDFS的WEB UI外网无法访问的问题

文章来自:http://www.cnblogs.com/hark0623/p/4177794.html 转载请注明 其实问题很简单,因为在CDH中hdfs-site.xml配置文件中WEB UI配置的是域名,而域名在Hosts又被解析成内网IP. 你使用netstat -apn | grep 50700看一下监听情况. 你会发现监听的是你的内网IP,而不是外网IP,所以HDFS的WEB UI就无法访问啦. 解决办法:如果你使用的是Apache Hadoop,那么需要去手动修改hdfs-site.

内网主机通过外网地址访问内网服务器

网关设备一般都具有NAT功能,分别为源地址NAT.目标地址NAT,这两种功能应用比较普遍,各厂商都有很标准的实现方式.但是对于"内网主机通过外网地址访问内网服务器"这一场景,各厂商的实现不通,下面就这个场景,分别说一下各厂商的实现.1.华为2.华三内网用户通过NAT地址访问内网服务器1组网需求 · 某公司内部网络中有一台FTP服务器,地址为192.168.1.4/24. · 该公司拥有两个外网IP地址:202.38.1.1和202.38.1.2. 需要实现如下功能: · 外网主机可以通

CentOS----宿主机无法访问虚拟机中的web服务解决方案

宿主机无法访问虚拟机中的web服务 在Windows7宿主机中的VMware虚拟机中安装了CentOS6.5操作系统,并且基于Nginx搭建了Web服务器,网页刚刚搭建好的时候,通过宿主机的浏览器可以访问虚拟机中的网页.但是过了一会儿,就无法访问了,这个问题困扰了自己好几天,每次只好通过虚拟机快照返回到刚刚建立好web服务的那一步,这样就能访问了,但过了一会儿又不能访问了. 后来通过网上查找资料,终于明白了,是一位CentOS6.5的防火墙没有开通web服务的80端口,屏蔽了外部的访问.有两种方