之前是把相关的内容,放到:
【已解决】实现VirtualBox中的(Guest OS)Mac和主机(Host OS)Win7之间的文件和文件夹共享
中的,现在把关于网络配置方面内容,单独提取出来,专门解释一下。
虚拟机,不论是Virtualbox还是VMware等,关于网络设置方面,一般都支持NAT,桥接网卡等配置。
下面就有Virtualbox中的网络连接方式,来解释解释其具体含义。
此处,主要内容,还是来自翻译自VirtualBox官网关于网络的解释:
目的不在于翻译的多么完整,但是要致力于把问题描述清楚,包括含义和如何配置。
VirtualBox中的网络设置
VirtualBox中每个虚拟机,支持多达8个PCI网卡;
对于每个网卡,又可以设置:
- 选择哪个(虚拟化出来的,某个型号的)网卡
- 该网卡的虚拟化模式
配置网卡的两种方式
可以通过图形界面和命令行配置网卡:
图形界面
界面中,选择虚拟机->设置->网卡
图形界面中配置网卡,最多可选的只有6种网卡:
AMD PCNet PCI II (Am79C970A);
AMD PCNet FAST III (Am79C973, the default);
Intel PRO/1000 MT Desktop (82540EM);
Intel PRO/1000 T Server (82543GC);
Intel PRO/1000 MT Server (82545EM);
Paravirtualized network adapter (virtio-net)
对应着“控制芯片”列表中的6项:
命令行
有个命令行工具,叫做VBoxManage modifyvm,可以用来配置网卡。
命令行模式中,可选网卡类型,多达8个;
关于命令行下,如何配置,此处不多解释,需要的自己去看:VBoxManage modifyvm
默认的网卡选择
因为PCNet FAST III兼容性最好,几乎所有的系统都支持,甚至是GNU GRUB boot manager都支持,所以一般默认都选的是PCNet FAST III。
不过如果发现有些系统,比如Windows Vista,中没有PCNet FAST III的驱动,那么取而代之的是Intel PRO/1000系列的网卡。
关于Paravirtualized network adapter (virtio-net)
如果你选择了Paravirtualized network adapter (virtio-net),那么则需要自己保证,有对应的,特殊的软件接口,去实现对应的网络处理的。
目前已有很多系统支持virtio了:
- Linux 2.6.25+:自己启用相关配置即可;
- Windows 2000/XP/Vista:需要自己从WindowsGuestDrivers下载并安装;
Virtualbox中5种网络类型
未指定 – Not attached
含义:
类似于,虚拟机中有网卡,但是没有插网线;
目的:
用于“告诉”虚拟机,网络断开了 -> 导致虚拟机内的网络方面的,重新配置
网络地址转换NAT – Network Address Translation (NAT)
目的:
如果你只是需要用虚拟机去上上网,下载个东西,查看邮件之类的,那么用这个,默认的,配置,就足够了。
缺点:
在文件共享方面会有些限制,详情可参考the section called “NAT limitations”;
效果:
虚拟机中,没有自己独立的IP的。
虚拟机是虚的,不存在与真实的网络中的。
虚拟机可以访问主机而已,但是主机无法访问到虚拟机。
提示:
Virtualbox中,默认使用此NAT配置。
桥接网卡 – Bridged networking
作用和效果:
虚拟机有独立的IP,就像同处一个局域网中的其他的计算机一样。
因此,可以在虚拟机中,找到类似于主机(XP,Win7)中看到的 网上邻居一样的效果,
可以看到其他各个同局域网内的计算机,当然也包括此台Host主机所对应的计算机。
所以,只要本身主机共享出来了文件夹了,那么此时在虚拟机中肯定也是可以访问到该共享文件夹的。
提示:
Virtualbox,会使用主机中单独的一个驱动,来处理网络数据。从网络数据中,过滤出,你的虚拟机的数据。
所以该驱动,也叫做网络过滤器(net filter)。
内部网络 – Internal networking
作用和效果:
和桥接网卡类似;
但是,当前虚拟机,只能被,属于同一主机Host中的,其他虚拟机所访问。
仅主机(Host-Only)适配器 – Host-only networking
目的:
用于在无需主机的物理网卡的情况下,创建一个网络,该网络中,只有本主机Host和其下的一些虚拟机Virtual Machine;
机制:
内部会创建一个,类似于loopback的,虚拟网络接口;
作用和效果:
可以理解为,桥接网卡 和 内部网络 混合的效果。
不同虚拟机之间和主机之间,就像中间连接了一个物理上的网卡交换机Switch一样,是可以互相通讯的。
不过呢,实际上当然是,物理上的网络接口是不存在的,所以,虚拟机和外部网络,又是没法对话和通讯的。
提示:
Virtualbox 2.2版本之后新加的此功能。
通用驱动 – Generic networking
作用和效果:
运行用于选择网卡驱动。
该驱动,是virtualbox内部自带的,或者是通过extension pack添加进来的。
提示:
1. 此模式实际上很少用到。
2.关于extension pack,不了解的可参考:
【整理】VirtualBox中的Guest Additions(客户端增强包)和Extension Pack(扩展增强包)的含义和区别