virtualbox虚拟机网络设置原理解析

时间:2021-11-19 21:42:20

这几天在虚拟机中研究操作系统(os)的属性问题,众所周知,最经济实惠,最廉价的方法就是架设虚拟机。这段时间我在我的个人电脑上面装了centos、linuxmint、windows8的操作系统,系统是装好了,但是遇到了一个问题,虚拟机与实体机的网络互联,及虚拟机的网络访问问题始终没有解决。

这几天耐心下通过度娘,查找了一些资料,通过观察,渐渐弄明白了virtualbox网络设置问题,恩,废话不多说,首先介绍一下虚拟机的几种网络连接方式。

virtualbox虚拟机网络设置原理解析

第一种:not attached

顾名思义就是不设置网络连接,即虚拟主机不在任何网络中,宿主机不能访问虚拟主机,虚拟主机也不能访问宿主机。

第二种:nat(network address translation)

即网络地址转换模式,这是虚拟机最简单的一种网络连接方式,这种方式的网络连接基本上不用在宿主主机与虚拟主机上进行任何的网络设置,也就是这个原因,这种方式也是virtualbox的默认网络连接设置。虚拟主机通过nat方式进行网络连接,此时的virtualbox相当充当了一个路由器,连通了虚拟主机和宿主主机。

一方面虚拟主机与宿主主机共享宿主主机在网络中的ip,另外一方面虚拟主机也由virtualbox事先设置的ip中dhcp分配一个10.0.x.xx的ip地址,这就是为什么我们查看虚拟主机的ip的地址时,是一个10网段的ip。

由于nat方式的连接,虚拟主机与宿主主机公用一个实体网络的ip地址访问实体的网络,所以虚拟主机可以访问宿主主机及宿主主机网络中任何一个可连接的实体主机,又由于虚拟主机也有virtualbox自动分配的10网段的ip,所以宿主主机及宿主主机网络中的其他机器一般情况下不能访问该虚拟主机,该虚拟主机一般情况下不能访问其他虚拟主机。

    但并不是宿主主机没有方法访问虚拟主机,我们的virtualbox就提供了一种port forwording(端口转发)方式访问虚拟主机。点击如下图绿色标记的按钮可进入设置界面设置要访问虚拟主机的实体网络中的主机(包括宿主主机)。

virtualbox虚拟机网络设置原理解析

第三种方式:bridged adapter(桥接)

这种方式是虚拟机的网卡与宿主机的网卡连接起来,在由虚拟机获取一个宿主机ip网段的网络ip,从而达到网络互联的效果。通过这种方式的连接,虚拟机有一个同宿主机在一个网段的ip,并且也有同宿主机一样的网络设置,所以虚拟机可以与宿主机及宿主机网络中的任何机器进行网络互联访问。

选择了之中方式,基本其他的设置也是默认性质的,但是有一点要注意,有与本人刚开始是没有注意这一点,在开始时即使选择了桥接,也无法进行网络互联。。。。

故名思议,桥接就是将网络通过“桥”进行连接,“桥”的一边自然无法选择,是虚拟机的网卡名称,所以不用选择,但是对于宿主机,可能显示的网络适配器就不指一个了,在不同的环境可能只有不同的网络适配器能够进行上网,如在用有线连接的时候,网络适配器“本地连接”是激活状态,能够和虚拟进行桥接,达到互联的效果,但是假如此时你用的是无线网络进行上网,那么此时你在桥接在“本地连接”的网络上,可能虚拟机的网络就是一个受限连接,而且没有被分配宿主机网段的ip.此间选择需要被桥接的网络设置,如下图标记所示:

virtualbox虚拟机网络设置原理解析

第四种方式:internal network(内部网络)

这种方式有和bridged adapter相似的地方,但也有很大区别,只有在如下图标记的name名为:intnet(默认)的虚拟主机才会被桥接到一个网络中,进行网络互联,所以这种情况通常是用在宿主机上面有多台虚拟机切虚拟机之间需网络互联时才使用。

virtualbox虚拟机网络设置原理解析

进行这种网络设置的虚拟机,该虚拟机不能访问宿主机,宿主机也不能访问虚拟机,而且各虚拟机需要网络互联,还需要手动设置同一网段的ip地址。

第五种方式:host-only adapter(独立网卡模式)

这种方式也是比较常用的方式,我们在装virtualbox的时候,我们的宿主机网络适配器里面会被虚拟一个名为:virtualbox host-only ethernet adapter的网卡,当我们选择这种方式的时候,virtualbox会自动选择连接这个虚拟出来的网卡。

virtualbox虚拟机网络设置原理解析

我们可以对这个虚拟出来的网卡进行任何的网络设置,可以通过灵活多变的设置来完成虚拟机于宿主机的网络互连,但这一切需要使用者有一定的网络基础才能配置实用该方法。

总结一下,就单单使用virtualbox进行网络互联来说,第二种方式与第三种方式是比较简单和方便的,尤其第三种方式个人认为是一种很好的方法,简单实用。至于第五种,使用要求较高,但也是一种不错的方法。

参考文献:

http://reverland.bitbucket.org/virtualbox_net.html

http://www.virtualbox.org/manual/ch06.html

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。