VirtualBox网络配置方案

VirtualBox是开源的虚拟机软件,这里重点讲一下它的的网络配置。

一般虚拟机都会提供了三种网络工作模式,分别是:

  • Bridged(桥接模式
  • NAT(网络地址转换模式)
  • Host-Only(仅主机模式)

这三种网络模式有什么区别,会在哪种情况下使用?我们来详细分析一下。


1. Bridged(桥接模式)

桥接模式就是将主机的网卡,与虚拟机虚拟的网卡利用虚拟网桥进行通信。

  • 类似于把物理主机虚拟为一个交换机,所有桥接设置的虚拟机连接到这个交换机的一个接口上,物理主机也同样插在这个交换机当中,所以所有桥接下的网卡与网卡都是交换模式的,相互可以访问而不干扰。
  • 虚拟机ip地址需要与主机在同一个网段,如果需要联网,则网关与DNS需要与主机网卡一致。

其网络结构如下图所示:

VirtualBox虚拟机会默认安装Bridged网卡和Host-Only网卡:

在虚拟机里选择要桥接的物理网卡,这里选择的是Intel wi-fi这个物理网卡:

因为启用了【网卡1】,虚拟机会给Ubuntu系统配置一块虚拟网卡【enp03】,这里我们设置Ubuntu虚拟网卡和桥接的Windows物理网卡在同一个网段,这样就可以实现互通了;

因为windows的wifi网卡地址是:10.4.23.200,所以设置虚拟机的enp0s3网卡地址为:10.4.23.218;这样两个系统现在都在真实的网络上,且可以正常上网。

小结:

  • 桥接模式:物理机和虚拟机在网络上是一样的,虚拟系统相当于在此网络下的一个独立系统,需要分配网络的一个独立IP。
  • 连接时指定的桥接到哪个物理网卡,相当于要把虚拟系统接到那个网段的交换机上。

2. NAT(地址转换模式)

NAT模式下,虚拟机访问网络的所有数据都是由主机提供的,虚拟机并不真实的存在于网络上,主机和网络中的任何机器是不能查看和访问这个虚拟机的。

其网络结构如下图所示:

NAT模式借助虚拟NAT设备和虚拟DHCP服务器,使得虚拟机可以联网。

  • DHCP用于动态分配虚拟机的IP地址。
  • 物理机下的虚拟网卡,在VMware下是VMnet8网卡,在VirtualBox下不可见。

另外,在连接上:

  • 虚拟机可以通过网络访问主机
  • 主机无法通过网络访问虚拟机,如:telnet 是连不到虚拟机中的。

小结:

这种虚拟系统都是隐藏在物理机后面的机器,在网络上是看不见的,地址由DHCP负责分配,上网有NAT设备负责。

这这网络连接实现有些系统不需要暴露在网络节点上又需要上网的这种需求,这也是最简单的一种虚拟机使用方式。

3. Host-Only(仅主机模式)

Host-Only听名字就是只和主机建立关系。这种模式是将虚拟机与外网隔开,使得虚拟机成为一个独立的系统,只与主机相互通讯。

它的网络结构是在NAT网络的基础上,去除虚拟NAT设备让它不能上网,如下图所示:

在虚拟机安装完后,windows下就会多出来一个Host-Only网卡,这个虚拟网卡就是用来实现通信用的。

在选择Host-Only模式时,需要选择一块Host-Only网卡用于和虚拟机进行通信使用:

同时设置虚拟机的IP地址和Host-Only的网卡地址要在同一个网段:

相互ping都是通的,这也实现了物理机和虚拟机互通的功能。


三种模式总结:

  • 桥接模式:实现虚拟机在真实的网络上;
  • NAT模式:实现虚拟机隐藏在物理机之后,能上网,但不能访问物理机;
  • Host-Only模式:实现虚拟机隐藏在物理机之后,不能上网,但可以访问物理机;

上面只是介绍选用一个网络模式的情况,在实际使用中,我们还可以同时使用两种及以上的网络模式,比如:NAT + Host-Only,这样可以实现虚拟机上网和物理机通信两种能力。

以上就是VirtualBox最常用的网络配置,希望对你有用。

参考文章:https://zhuanlan.zhihu.com/p/403513377

一下为个人配置,可能与上面的ip分配模式不完全相同,仅供参考

如果想要用只配置nat网络,并且让主机访问到虚拟机的话就需要配置端口转发,

配置位置:管理->全局设定->网络->主机使用的NAT网络,我这边配置的是NatNetwork,双击即可看到端口转发按钮

点击即可看到端口转发规则界面,我这边配置的nat网关ip是192.168.77.1,子系统ip是192.168.77.4

通过如下配置,主机即可通过访问192.168.77.1:12580来实现对于192.168.77.4:22的访问

Comments Closed.