分享

virtualbox NAT网络模式详解以及NAT模式下端口映射

 who-cl 2015-06-15

virtualbox虚拟主机上面联网方式中NAT模式是最简单的实现虚拟机上网的方式,你可以这样理解:Vhost访问网络的所有数据都是由主机提供的,vhost并不真实存在于网络中,主机与网络中的任何机器都不能查看和访问到Vhost的存在。

 

虚拟机与主机关系:只能单向访问,虚拟机可以通过网络访问到主机,主机无法通过网络访问到虚拟机。

 

虚拟机与网络中其他主机的关系:只能单向访问,虚拟机可以访问到网络中其他主机,其他主机不能通过网络访问到虚拟机。

 

虚拟机与虚拟机之间的关系:相互不能访问,虚拟机与虚拟机各自完全独立,相互间无法通过网络访问彼此。

 

IP:10.0.2.15

网关:10.0.2.2

DNS:10.0.2.3

 

一台虚拟机的多个网卡可以被设定使用 NAT, 第一个网卡连接了到专用网 10.0.2.0,第二个网卡连接到专用网络 10.0.3.0,等等。默认得到的客户端ip(IP Address)是10.0.2.15,网关(Gateway)是10.0.2.2,域名服务器(DNS)是10.0.2.3,可以手动参考这个进行修改。

所有虚拟机刚新建好后都默认这种模式联网。

下面我来说说我的实验环境:

物理机 官方原版win7      虚拟机 纯净xp

物理机win7的IP地址为192.168.0.8(家用路由器DHCP分配)

虚拟机采用NAT模式联网  ip地址  10.0.2.15

物理机已经共享一个文件夹(PFiles文件夹)

在虚拟机中输入 \\192.168.0.8   可以访问共享的文件夹(如果您不能访问 可以参考这里 )

virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥
而物理机则无法访问

virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥

然后我再开启一台虚拟机  XP系统   IP地址也是10.0.2.15(DHCP分配)我新建一个文件夹 并且开启共享   (两个不同虚拟机的IP地址一样)

 virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥
所以说明了NAT模式的特点

 

 

下面我来说说怎样做NAT的端口映射功能

  首先介绍一下NAT网络模式下端口映射的优点,首先节省一个IP地址(有些情况下,IP地址资源比较宝贵);其次,这样可以避免Server暴露过多的接口,提供什么服务暴露什么接口,这样保证Server安全性。当然这种方式也有一定的局限性,服务的端口必须是固定的,假如服务的端口是动态的,那么这种方式就没有办法了,比如NFS服务就不能用端口映射来实现。

 

我下面就来演示一下基本的端口映射

实验目的,我想用我的物理主机来远程连接虚拟机的远程桌面(默认TCP 3389端口)

首先在虚拟机上面把功能打开

virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥当然默认情况下 没有用户可以在远程端登录的   你可以添加远程用户

Windows默认远程端口是 3389 tcp协议 

 

下面来做端口映射

virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥
virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥

virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥

virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥打*号的为必填项

 

virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥我可以这样填
 

virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥也可以这样填


virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥物理机上面则需要这样输入

virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥连接后 就弹出来登录框   这说明已经映射到虚拟XP的3389端口了

 

下面我用我另一台XP 也来远程(第二台虚拟机XP并没有开启远程功能)

第二台XP网络模式也是NAT

virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥

virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥好的 连接到了第一台虚拟XP了!

我再来改一下我第二台虚拟XP的联网方式  改为bridged adapter 桥接模式   桥接到我物理网卡上

virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥
好的没问题  已经连上网络了!继续远程连接

virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥
OK 也可以通过物理机IP映射到第一台虚拟XP上面!

 

 

下面是命令行做端口映射 这里是用 virtualboxmanage命令实现的 (具体详情看这里

VBoxManage modifyvm "VM name" --natpf1 "guestssh,tcp,,2222,,22"


这里需要注意了!  红色的皆为重要项 不可有误! 第一个VM name 就是虚拟机的名字

virtualbox NAT网络模式详解以及NAT模式下端口映射 - P哥万岁!! - Professor哥
对那个虚拟系统实施映射规则 就填写那个系统的虚拟机名字

guestssh  这里就是 规则里的名称 (用来区分多条规则的,不可重复)

tcp 指的是协议类型

tcp,,2222,,22  TCP后面有空 这里应该填host IP   留空的话默认任何IP

2222  指的是访问者端口
     2222,,22  这里又有个空  这里应该填guest IP   留空的话默认任意IP
    22  最后这个22指的是虚拟机系统的端口号

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多