从VirtualBox虚拟主机访问NAT客户机的方法
转自:http://www.jb51.net/os/other/352995.html
VirtualBox对虚拟机支持几种不同的网络方式,其中一种是NAT网络。当虚拟机启用NAT后,VirtualBox会自动在虚拟机和主机之间进行网络翻译,因此你不必在虚拟机和主机之间配置任何东西。这也意味着NAT中的虚拟机对于外部网络以及主机本身是不可见的。这会在你想要从主机访问虚拟机时会产生问题(比如SSH)。
如果你想从VirtualBox的NAT环境的虚拟机,你可以在GUI或者命令行下启用VirtualBox NAT的端口转发。本篇教程将会演示如何通过启用22端口转发而从主机SSH连接到NAT环境的客户机。如果你先想要从HTTP访问NAT的客户机,用80端口代替22端口即可。
通过GUI配置VirtualBox端口转发
在VirtualBox中选择你想要访问的虚拟机,打开虚拟机的“设置”。点击左侧的“网络”菜单,点击网络适配选项的“高级”。
点击“端口转发”按钮
你会看到一个配置端口转发规则的窗口。点击右上角的“添加”图标。
就会看到像下面那样的转发规则。
Name: SSH (可以是任意唯一名)
Protocol: TCP
Host IP: 127.0.0.1
Host Port: 2222 (任何大于1024未使用的端口)
Guest IP: 虚拟机IP
Guest Port: 22 (SSH 端口)
端口转发的规则会自动在你启动虚拟机的时候启用。为了验证。可以在你启用虚拟机后检查端口2222是否被VirtualBox开启了。
代码如下:

现在端口转发可以使用了,你可以用下面的命令SSH到虚拟机。
代码如下:
发送到127.0.0.1:2222的登录请求会自动被VirtualBox翻译成10.0.2.15:22,这可以让你SSH到虚拟机中。
通过命令行配置VirtualBox端口转发
VirtualBox有一个称为VBoxManage的命令行管理工具。使用命令行工具,你也可以为你的虚拟机设置端口转发。
下面的命令会为IP地址为10.0.2.15的虚拟机设置一个名字为"centos7"的端口转发规则,SSH的端口号为22,映射到本地主机的端口为2222。规则的名字(本例中是SSH)必须是唯一的。
代码如下:
规则创建之后,你可以用下面的命令来验证。
代码如下:

从VirtualBox虚拟主机访问NAT客户机的方法的更多相关文章
- nginx 配置虚拟主机访问PHP文件 502错误的解决方法
最近配置Nginx 服务器虚拟主机 访问目录发现报502错误 百度了很多方法 都不管用 我擦 各种抓狂----- 原本Nginx配置如下: 网上找了很多方法: 查看日志 借助nginx的错误日志 ...
- Linux(7)- Nginx.conf主配置文件、Nginx虚拟主机/访问日志/限制访问IP/错误页面优化、Nginx反向代理、Nginx负载均衡
一.Nginx.conf主配置文件 Nginx主配置文件conf/nginx.conf是一个纯文本类型的文件,整个配置文件是以区块的形式组织的.一般,每个区块以一对大括号{}来表示开始与结束. 核心模 ...
- Vmware虚拟主机访问外网设置
本手册使用10.4.7.0/24网段 重点在于虚拟主机的网关和宿主机上的Vmnet8的IP和虚拟网络编辑器的NET网关保持一致 1.设置宿主机网络适配器 选择允许Vmware网络共享 配置VMnet8 ...
- Vagrant安装完lnmp后,配置linux和windows共享文件并配置虚拟主机访问项目
虚拟机目录下的Vagrantfile文件是vagrant的配置文件,如果想把虚拟机当作一台服务器,可以通过ip访问,需要修改配置文件进行配置. (1)第一步:打开虚拟机目录下的Vagrantfile文 ...
- 阿里云虚拟主机的域名添加https的方法
第一步:购买CDN套餐,阿里云虚拟主机目前是不支持https的,不过可以通过阿里云的CDN服务来跳转一下实现部署https 静态HTTPS请求数根据你的网站访问量来选择 第二步:申请SSL证书服务,有 ...
- apache虚拟主机访问原理
www.a.com www.b.org www.c.net 都放在10.0.0.10这个服务器上 那么客户访问这三个域名 服务器是怎么分辨访问的是哪个目录呢 GET http://download.m ...
- VMWare无法共享文件夹(Win7宿主机\Ubuntu14.04客户机)
在安装VMWare tools的时候,需要执行 vmware-install.pl.在安装过程中,需要编译vmhgfs module,如果编译失败就很可能导致共享文件夹无法正常挂载. 最近,我在虚拟机 ...
- C#判断网站是否能访问或者宕机的方法
最近有位朋友说他有很多网址,可能有些已经过期或者不能访问了.自己去一个一个点可以,但又很麻烦! 再过一段时间又要去检查一次,每次都这样就不方便了! 于是就做了个小程序给帮他检测一下. 以下做了一个例子 ...
- WAMP,BITNAMI上建立多个虚拟主机都访问到主站上去了怎么解决?
新建立了多个虚拟主机,访问的结果都是localhost,只要把localhost也建立成一个虚拟主机所有的虚拟主机访问就正常了.
随机推荐
- ISE在win8.1的安装问题
问题1:.lic无法打开 打开:C:\Xilinx\14.6\ISE_DS\ISE\lib\nt64 思路是这样: 将libPortability.dll重命名(加尾缀.orig,意思是origina ...
- 关于 Content-Type:application/x-www-form-urlencoded 和 Content-Type:multipart/related
最近项目中用到的一个是用一个页面接收c程序post过来的一断字符串..总接收不到值... 我用C#写一个测试可以正常接收到值. 最后抓包比较 区别只是 Content-Type:application ...
- Java并发之AQS同步器学习
AQS队列同步器学习 在学习并发的时候,我们一定会接触到 JUC 当中的工具,JUC 当中为我们准备了很多在并发中需要用到的东西,但是它们都是基于AQS(AbstractQueuedSynchroni ...
- 在ASP.NET MVC5中使用特性路由
首先在RegisterRoutes时开启特性路由功能: routes.MapMvcAttributeRoutes(); 然后,就可以使用了. [Route("{productId:int}/ ...
- 【VBA研究】浮点数计算总是有误差的
作者:iamlaosong 数字有两种表达方式.一种是整数,一种是浮点数.浮点数是属于有理数中某特定子集的数的数字表示,在计算机中用以近似表示随意某个实数.详细的说,这个实数由一个整数或定点数(即尾数 ...
- javascript中字符串与数组互转的方法分享
说明:1.join()方法:用于把数组中的所有元素放入一个字符串,元素是通过指定的分隔符进行分隔的.指定分隔符方法join("$");其中$可以是任意字符2.split()方法:用 ...
- NEXYS 3开发板练手--USB UART(二)
上一篇文章中提到实际上我们操作的只是一个“伪”USB协议,我们真正需要完成的收发机遵循的协议应该是异步串行通信协议.这个协议对于大家来说应该是再熟悉不过了,在这里我就不多废话了.需要说明的是,我在这个 ...
- python @property使用详解
1.@property,@xx.setter的作用把方法变成属性@property获取属性@xx.setter设置属性 2.使用示例 #@property使用 class Lang(object): ...
- 让一个div始终固定在页面的某一固定位置的方法
方法一:直接用position:fixed 方法二:写一个滚动条滚动事件,让这个div设置 position:absolute 该top的距离等于滚动的距离scrollTop() 写法如下:$(win ...
- js 记录
(function(win,doc) { })(window,document)