VirtualBox 网络图解

VirtualBox 的网卡有多种设置方式,总结各种情况,可以用下表描述。

注:

1. 表中假设 Host OS 能访问互联网。

2. 表中有「能否访问其他 Guest OS」,但无「能否被其他 Guest OS 访问」,是因为各 Guest 在逻辑上是对称的。

3. 只要 Guest OS 之间能互访,就能搭建虚拟的局域网,这在做集群实验时,非常有用。

4. 官方参考:https://www.virtualbox.org/manual/ch06.html

以下用图逐一说明:

1. Not attached, 未指定

这种情况,Guest OS 相当于无联网的单机,和 Host OS 不能互访,且无法访问 Internet. 这种网络结构比较适合做需要隔离内外网络环境的实验,Guest OS 相当于一个完全无破坏里的沙盒(sandbox)。

VitualBox network: not attached

2. NAT, 网络地址转换(NAT)

这是 VirtualBox 默认的网卡模式,在此模式下,Guest OS 可以通过 10.0.2.2 访问 Host OS 的资源,也可访问互联网,但 Guest OS 之间不能互访。有关 NAT 更详细的信息,可以参考:http://en.wikipedia.org/wiki/Network_address_translation

VirtualBox network: NAT

3. NAT Network, NAT 网络

这是一种比较有趣的网络结构,在此模式下,Guest OS 可以互访,IP 为 10.0.2.*, 网关 IP 是 10.0.2.2,并可通过此 IP 访问 Host OS. 可用此模式搭建一个内访问外部网络 ,但不能被外部访问到的局域网。

VirtualBox network: NAT Network

4. Bridged Adapter, 桥接网卡

这种网络模式下,Guest OS 和 Host OS 完全对等,可以组件虚实相间的局域网。目前的 VirtualBox 已经支持 IPv6 了,查看 Guest OS 的 IP,已看不到 IPv4 地址。

VirtualBox network- Bridged Adapter

5. Internal Network, 内部网络

这种网络模式下,Guest OS 之间可以互访,但无法和外部交换信息,可以形成一个内部可见的局域网。

VirtualBox: Internal Network

6. Host-ony Adapter, 仅主机(Host-Only)适配器

这种网络模式下,Guest OS 之间可以互访,且能被 Host OS 访问到,但无法访问 Host OS,也无法访问互联网。可以用此模式在单机上搭建一个仅限本机可用的虚拟局域网。实际上,我搭建的第一个 Hadoop cluster 正是用的这种网络结构。

VirtualBox network: Host-only

7. Generic Driver, 通用驱动

官网的文档说这是一个相当罕用的模式,允许用户选择 VirtualBox 自带或 Extension pack 带的驱动。我已完全无心研究这个模式了。

本文的图通过 drive.google.com 的 Google Drawings 绘制,导出成 png 格式,再通过 PicPick 剪裁空白,添加边框,缩小为原尺寸的80%进行保存。