当前位置: 首页 > news >正文

外网访问 虚拟机下的web服务器 设置主机端口与虚拟机ip和端口的映射

之前在Centos虚拟机上安装了LAMP,搭建起了自己的web服务器,具体流程见博文:http://blog.csdn.net/ai_net/article/details/7693165

但是,在本机访问虚拟机的时候,因为系统原因,还是会有一些问题的,解决方法有:http://blog.csdn.net/ai_net/article/details/7693788

除了上面一篇博文写到的问题之外,我更想尝试的是利用本机的ip+port来访问虚拟机上的web服务器,因为这样的话,我就能够将我的web服务器部署成为一个能让外网访问的服务器了,首先说下我的环境:

主机:系统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上网和端口映射都是很简单的,操作方便,当然,里面包含了许多虚拟网络机制了,封装的好,面对用户透明,就显得很智能了。还有桥接等上网方式,面对不同的应用,都有其独特的优势,值得我们深入学习。

172.18.186.210此IP是公网IP的话,就可以在外网上浏览,不然只能在局域网内浏览。



http://www.taodudu.cc/news/show-2639150.html

相关文章:

  • 【physx/wasm】在physx中添加自定义接口并重新编译wasm
  • excel---常用操作
  • Lora训练Windows[笔记]
  • linux基础指令讲解(ls、pwd、cd、touch、mkdir)
  • InnoDB 事务处理机制
  • 启明云端ESP32 C3 模组WT32C3通过 MQTT 连接 AWS
  • php程序员应具备的7种能力
  • 门门通还是精通一门(程序员)
  • 神探狄仁杰是一个Debug高手
  • 亲情友情爱情:《悲惨世界》第四部《卜吕梅街的柔情和圣德尼街的史诗》/人性:《悲惨世界》第五部《冉阿让》摘录...
  • html5新年网页做给父母的,2020给父母的新年祝福语
  • Gateway 出现Can not connect to tcp://127.0.0.1: Connection refused
  • 关于 该设备或资源(127.0.0.1)未设置为接受端口 的解决办法
  • mysql多进程模块型_mysql mysqld_multi 单机多进程
  • mysql单数据库多硬盘配置_MySQL 使用mysqld_multi部署单机多实例详细过程
  • mysql mysqld multi_MySQL 使用mysqld_multi部署单机多实例详细过程 (转)
  • 数据结构(Java)-排序算法-插入排序
  • Presenting view controllers on detached view controllers is discouraged
  • The remote device or resource won't accept the connect
  • [java 手把手教程][第二季]java 后端博客系统文章系统——No7
  • 数据库学习纪要(十二):SQL Sever介绍-4
  • MapReduce之幺半群
  • 【后端】--process information unavailable解决办法[详细版]
  • ISCC2017 Misc write up附件题目文件
  • [割点问题]HOJ 12307 Disconnected Pair
  • 计算几何专项:UVa 12307
  • asp dotnet core 从零开始创建一个 WebApi 服务
  • UVa 12307 Smallest Enclosing Rectangle(旋转卡壳+最小覆盖矩形)
  • uva 12307(点集的外接矩形)
  • UVA 12307 Smallest Enclosing Rectangle(旋转卡壳)
  • uva 12307 - Smallest Enclosing Rectangle(旋转卡壳)
  • UVA 12307 Smallest Enclosing Rectangle
  • UVA 12307 旋转卡壳
  • uva12307(旋转卡壳)
  • UVA12307 Smallest Enclosing Rectangle 题解
  • numpy.ptp