1、 浅谈 Oracle VM VirtualBox 虚拟机的网络配置浅谈 Oracle VM VirtualBox 虚拟机的网络配置VirtualBox 是一款开源 x86 虚拟.机软件,它可以在 Linux 和Windows 主机中运行,并支持在其中安装Windows、Linux 、OpenBSD 等多种操作系统。VirtualBox 虚拟了四种网络设备,如图所示。下面就这几种网络连接方式,做一个祥细的说明。 1、NAT(网络地址转换)方式 NAT 方式是最简单的实现 Guest OS 上网的方式,也是 Guest OS 默认使用的方式,安装后,在 Guest OS 中不用进行任何手工配置就能
2、直接访问互联网。可以这样理解,NAT 方式只允许从 Guest OS 向外发出连接请求,因此一般在 Guest OS 中上网没有问题,但无法在 Guest OS 中设置网络服务,因此也不能从外部(包括 Host OS)通过 SSH 连接到Guest OS。这是因为 NAT 方式让 Guest OS 使用 Host OS 的 IP 地址去访问外部的网络资源,当使用这种方式的时候 ,Guest OS 在外部网络中没有独立的 IP 地址,而是与 Guest OS 的网桥和 DHCP 服务器一起构成一个内部网络,由这个网络的 DHCP 服务器分配 IP 地址。这种构成方式有如下关系:(1)Guest
3、OS 与 Host OS 关系: 只能单向访问,Guest OS 可以通过网络访问到主机,主机无法通过网络访问到 Guest OS。(2)Guest OS 与网络中其他 Host OS 的关系:只能单向访问,Guest OS 可以访问到网络中其他 Host OS,其他 Host OS不能通过网络访问到虚拟机。(3)Guest OS 与 Guest OS 之间的关系:相互不能访问,Guest OS 与 Guest OS 各自完全独立,相互间无法通过网络访问彼此。 NAT 方式的特点:(1)配置简单。(2)Guest OS 的网络地址外网不可见。 2、Bridged Adapter (桥接方式)方
4、式 Bridged Adapter (桥接方式)方式,是通过 Host OS 的网卡,架设了一个网桥,直接连入到网络中。因此,它使得 Guest OS 能被分配到一个网络中独立的 IP,所有网络功能完全和在网络中的真实机器一样。这样 Guest OS 在外部网络中需要独立的标识和 IP 地址。Host OS 的网卡和 Guest OS 的网卡通过虚拟网桥进行桥接,两块网卡处于同等地位。 这时,如果给 Guest OS 设置一个 IP 地址为192.168.1.100,子网掩码为 255.255.255.0,网关为 192.168.1.1, Host OS 的 IP 地址设置为 192.168.
5、1.1,子网掩码为 255.255.255.0, Guest OS和 Host OS 相互 ping,或局域网中其它的 Host OS 或 Guest OS,只要在同一网段上,都可以 ping 通。 3 、Internal 方式 在Internal 方式中,Guest OS 与外网完全断开,只实现 Guest OS 与Guest OS 之间的内部网络模式。 这种构成方式有如下关系: (1)Guest OS 与 Host OS 关系:不能相互访问,彼此不属于同一个网络,无法相互访问。(2)Guest OS 与网络中其他 Host OS 关系:不能相互访问,原理同上。(3)Guest OS 与 G
6、uest OS 关系:可以相互访问,前提是在设置网络时,两台 Guest OS 设置在同一网段。 4、Host-only Adapter 方式 可以理解为 VM VirtualBox 在主机中模拟出一张专供虚拟机使用的网卡,所有虚拟机都是连接到该网卡上,通过设置网卡来实现上网及其他功能(例如,网卡共享、网卡桥接等)。这种构成方式有如下关系: (1) 默认情况下, Host OS 中VirtualBox Host-Only Ethernet Adapte 的 IP 为 192.168.56.1,子网掩码为 255.255.255.0,Guest OS 的 IP 为 192.168.1.101, 子网掩码为255.255.255.0。Host OS 中 Ping Guest OS 通,反之不通。通过网卡共享、网卡桥接等,可以实现 Guest OS 于 Host OS 相互访问。 (2)Guest OS 与网络中其它 Host OS 的关系: 默认不能相互访问,原因同上,通过设置,可以实现相互访问。 (3)Guest OS 与 Guest OS 关系:默认可以相互访问,都是同处于一个网段。 以上,通过对这几种网络连接方式的分析,我们就可以灵活运用,组建出所需要的任何一种虚拟网络环境了。