基于NAT模式实现VirtualBox中的虚拟机与主机之间的通讯

与桥接模式不同的是,NAT模式是通过共享主机IP实现与外网的互联,其基本模式图如图1所示,其基本原理为:虚拟机先与NAT子网络通讯,然后通过NAT子网络接通外网。

图2 NAT模式框架
图1 虚拟机与宿主机器间的交互

我们通过VirtualBox可以创建NAT网络,也就是图中的虚拟二层交换机所在的子网络,在VirtualBox中的具体执行步骤如下:

Step1: 管理->全局设定->网络,开始新建一个NAT网络。图2示例中的网络名称为NatNetwork1,网络地址为:192.168.1.0,子网掩码为255.255.255.0,默认的网关为192.168.1.1

图2 NAT网络的具体属性

Step2: 将虚拟机的网络模式设置为NAT模式(选择上述创建的NatNetwork1子网络)

图3 虚拟机选中NAT模式

Step3:此时虚拟机将获得一个合法的动态IP,该IP处于上述创建的NAT网络中。当然也可将虚拟机的IP地址设置为静态IP,且该静态IP需要和上述创建的NAT子网为同一个网段即可。如可见任意一台虚拟机设置为:192.168.1.4(该IP是在上述NAT子网段下面),完成该步骤即可以实现共享主机的ip地址访问外网。

Step4:上述3个步骤的配置通过主机打开了通往外网的世界,虚拟机可以主动访问主机,但是主机还无法访问虚拟机,若要实现这一功能,可以借助VirtualBox提供的第三种网络模式 (VirtualBox Host-Only Network),在主机的适配器中我们可以看到“VirtualBox Host-only Network”网络适配器,将该网络适配器的IP地址设置为虚拟机的IP地址,网关和虚拟机一样。(实际上,这个适配器正式打通主机与虚拟机的桥梁)

Step5:若要使用Shell等软件连接虚拟机中的Ubuntu系统,还需要一个简单的端口映射,Shell使用的是ssh协议进行通讯,其端口为22,具体的操作步骤如图4所示,这一步的关键在于端口的转发,上述步骤其实只完成了IP地址的转发,由于ssh协议为端到端的连接,故应该进行端口转发。

图4  端口转发

Step6:使用XShell软件IP地址设置为:10.141.91.66,端口:1111.相当于访问192.168.14:22 

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值