VirtualBox 主机与虚拟机互相访问且均上外网

Posted Jacey

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VirtualBox 主机与虚拟机互相访问且均上外网相关的知识,希望对你有一定的参考价值。

 
VirtualBox中有4中网络连接方式:
NAT
Bridged Adapter
Internal
Host-only Adapter

VMWare中有三种,其实他跟VMWare 的网络连接方式都是一样概念,只是比VMWare多了Internal方式。

要让自己(或别人)理解深刻,方法就是做比较和打比方,比较之间的不同和相同,拿熟知的事物打比方。先来一张图,通过这张图就很容易看出这4种方式的区别:
技术分享


再来用文字做详细的解释(其实归结起来就是上面的那张图):

1、NAT

NAT:Network Address Translation,网络地址转换

NAT模式是最简单的实现虚拟机上网的方式,你可以这样理解:

Guest访问网络的所有数据都是由主机提供的,Guest并不真实存在于网络中,主机与网络中的任何机器都不能查看和访问到Guest的存在。

Guest可以访问主机能访问到的所有网络,但是对于主机以及主机网络上的其他机器,Guest又是不可见的,甚至主机也访问不到Guest。

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

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

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

2、Bridged Adapter(网桥模式)

网桥模式,你可以这样理解:

它是通过主机网卡,架设了一条桥,直接连入到网络中了。因此,它使得虚拟机能被分配到一个网络中独立的IP,所有网络功能完全和在网络中的真实机器一样。

网桥模式下的虚拟机,你把它认为是真实计算机就行了。

虚拟机与主机的关系:可以相互访问,因为虚拟机在真实网络段中有独立IP,主机与虚拟机处于同一网络段中,彼此可以通过各自IP相互访问。

虚拟机于网络中其他主机的关系:可以相互访问,同样因为虚拟机在真实网络段中有独立IP,虚拟机与所有网络其他主机处于同一网络段中,彼此可以通过各自IP相互访问。

虚拟机与虚拟机的关系:可以相互访问,原因同上。

3、Internal(内网模式)

内网模式,顾名思义就是内部网络模式:

虚拟机与外网完全断开,只实现虚拟机于虚拟机之间的内部网络模式。

虚拟机与主机的关系:不能相互访问,彼此不属于同一个网络,无法相互访问。

虚拟机与网络中其他主机的关系:不能相互访问,理由同上。

虚拟机与虚拟机的关系:可以相互访问,前提是在设置网络时,两台虚拟机设置同一网络名称。如上配置图中,名称为intnet。

4、Host-only Adapter(主机模式)

主机模式,这是一种比较复杂的模式,需要有比较扎实的网络基础知识才能玩转。可以说前面几种模式所实现的功能,在这种模式下,通过虚拟机及网卡的设置都可以被实现。

我们可以理解为Guest在主机中模拟出一张专供虚拟机使用的网卡,所有虚拟机都是连接到该网卡上的,我们可以通过设置这张网卡来实现上网及其他很多功能,比如(网卡共享、网卡桥接等)。

虚拟机与主机的关系:默认不能相互访问,双方不属于同一IP段,host-only网卡默认IP段为192.168.56.X 子网掩码为255.255.255.0,后面的虚拟机被分配到的也都是这个网段。通过网卡共享、网卡桥接等,可以实现虚拟机于主机相互访问。

 

虚拟机与网络主机的关系:默认不能相互访问,原因同上,通过设置,可以实现相互访问。

虚拟机与虚拟机的关系:默认可以相互访问,都是同处于一个网段.

Windows XP的防火墙一定要关闭
附上VirtualBox Host-Only 上网设置
1.将连接到Internet的网卡(本地连接)启用Internet连接共享,将“家庭网络连接”选为虚拟机的Host-Only网卡(如果为win7则不需要选择),这时Host-Only网卡的IP地址会被自动设置为192.168.56.1
技术分享

2.打开VirtualBox,选择管理 ——全局设定——网络,点右边的螺丝刀按钮,在弹出的窗口中选择DHCP Server选项卡,将Enable Server选项取消,保存退出。
技术分享
技术分享






3.配置需要上网的虚拟机的网络选项,选择连接方式为“Host-Only Adapter”,名称一般只有一个“VirtualBox Host-Only Ethernet Adapter”,选择便是。


4.启动虚拟机,在虚拟机的网络连接中配置虚拟机的网卡,右击选择属性,在弹出的窗口中双击“Internet协议(TCP/IP)”,修改选项为“自动获得IP地址”和“自动获得DNS地址”,确定退出。成功后虚拟机的网络连接中会出现一个网关,这时就可以上网了。

5.如果有第二台虚拟机需要上网,重复“配置需要上网的…”之后即可。一般地,虚拟机操作系统会自动配置IP,不用手动修改,用Linux系统也是。这样,各个虚拟机之间可以互相通信,也都可以和主机通信,也都可以连接到互联网。主机的IP就是连接到互联网上的网卡的IP,各个虚拟机的IP就是自动分配的IP。

 


















































































以上是关于VirtualBox 主机与虚拟机互相访问且均上外网的主要内容,如果未能解决你的问题,请参考以下文章

Virtualbox的centos7 nat和桥接网络配置

VirtualBox 设置静态ip,实现虚拟机和宿主机互相访问,并能访问网络

VirtualBox中CentOS通过Host-Only方式实现虚拟机主机互相访问共享上网

virtualbox主机与虚拟机之间互相通信教程

VirtualBox NAT方式与主机互相通信

为VirtualBox中的Ubuntu配置双网卡