端口映射

(您的阅读是我的荣幸,如有不满之处请留言指正!)------正在修正中。。。。已解决的大哥给我留言,求解啊

                                                           这篇是我在遇到物理机无法访问虚拟机中服务时搜集的,亲身试验,OK!

 1、NAT模式+端口映射

           将虚拟机某端口映射到物理机的某端口,这样外部机器(包括你的哦~)就可以访问虚拟机上的服务了

             

         (在命令行模式下,先到VirtualBox的安装目录下面,否则找不到命令)

 

          进入安装目录会有
 

 

          vboxmanage setextradata win7 "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/Protocol" TCP
          vboxmanage setextradata win7 "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/HostPort" 8000
          vboxmanage setextradata win7 "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/GuestPort" 80

 

命令解释:
  VBoxManage setextradata "win7" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/Protocol"
  VBoxManage:VBOX提供的一个强大的设置工具,利用它我们可以进行一系列的设置。
  setextradata:是在虚拟机的记录文档中加入后面的信息。
  "win7":引号中的文字代表你需要修改的虚拟机的名称,示例中使用的是名称为“win7”的虚拟机。
  VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/Protocol:
  
这行代码中,“pcnet”代表的是虚拟机的型号带有pcnet的网卡,如果你选中的是intel的网卡,请将“pcnet”换成“e1000”,如果是Paravirtualized Network的话请替换成“virtio-net”。
  同样地,如果你为虚拟机配置了n个网卡,则要把/0/换成相应的序列。 
  /http/:即我们需要给使用“http”服务进行端口映射,如果你需要其他的服务,请将其替换成相应服务的名称,服务名称请自定义,没有限制。
   “Protocol、GuestPort、HostPort”对应就是“协议、虚拟机需要映射的端口、主机映射的端口”。通常协议使用的是TCP,而 IIS中默认使用的端口是80,如果有换成别的请将后面的数字替换成你的端口号。同样地,主机中映射的端口请使用未占用的端口,不然会造成无法访问。
 

 

                     红色部分需要在虚拟机设置里查看虚拟机名相应改变,我的操作过程如下:

         

 

         以上操作请小心进行,如写入出错的话会导致虚拟机启动出错,结果是我们需要到任务管理器中Kill掉VBOX的两个进程才可以重新操作。如实在不能启动,可删除相应虚拟  机后重新建立,只要虚拟硬盘文件安好就可以。
 

 

命令完成就要设置一下网络连接方式为:NAT,控制芯片为pCnetxxx

         

 

                

posted @ 2013-11-07 10:47  luckymore  阅读(650)  评论(0编辑  收藏  举报