Answers:
您是否尝试过此虚拟网络指南?
虚拟机从集成到VirtualBox的DHCP服务器接收专用网络上的网络地址和配置。这样分配给虚拟机的IP地址通常与主机位于完全不同的网络上。由于可以将虚拟机的多个卡设置为使用NAT,因此第一张卡连接到专用网络10.0.2.0,第二张卡连接到网络10.0.3.0,依此类推。
我认为您正在寻找的是“ Internal Networking ”,将内部VM彼此连接。
您可以在VirtualBox图形用户界面中使用VM的“设置”对话框。在设置对话框的“网络”类别中,从网络模式的下拉列表中选择“内部网络”。现在,从下面的下拉列表中选择一个现有内部网络的名称,或在输入字段中输入一个新名称。
我为我的环境找到了以下解决方案:
这些设置可以通过GUI Oracle VM VirtualBox Manager进行。最初,我和乔纳斯有同样的问题,我错过了DHCP。最后,我找到了这篇文章(存档副本,原始链接已死),然后使用了:
VBoxManage dhcpserver add --netname intnet --ip 10.13.13.100 --netmask 255.255.255.0 --lowerip 10.13.13.101 --upperip 10.13.13.254 --enable
从命令行。之后,它运行良好。
我敢说这个手册是很贫乏的资源,因为Windows主机上VirtualBox的大多数配置都可以通过GUI来完成,而不能用GUI配置DHCP则带来了极大的不便。
我的环境:我正在Windows 7 64位上运行可移植VirtualBox 4.1.2r73507。当前,仅主机和桥接模式不起作用,因为缺少仅主机适配器。我有一个与Virtual Box论坛上的德语问题中描述的问题类似的问题,我没有仅主机的适配器。
这就是我仅以NAT模式连接vbox guest虚拟机的方式(在VirtualBox 4.2.4上测试)。
只需使用网关IP从一位访客到主机即可。然后使用端口转发将主机流量“代理”到另一个来宾中。
例如,如果访客A要到达监听端口1000的访客B服务,则A必须使用网关IP(对于第一个NAT接口,它是10.0.2.2)。然后,您需要在来宾B上配置端口转发,以便主机在端口1000上收到的所有流量都流向端口1000上的来宾B。
这可能不适用于所有服务,但似乎对ssh,salt,...都适用
总之,您不需要连接多个来宾的仅主机模式,但是我并不是说仅主机模式不是您的用例的最佳选择。
(由bernd_k回答的问题)
为了在主机和来宾之间共享文件,实际上是共享目录而不是文件。
如果网络模式是桥接模式或NAT,则主机和来宾都是平等的网络伙伴。尽管整个设置都包含在一个主机中,但是从网络角度来看,它们在网络上都是相同的,就好像它们是物理计算机一样。(NAT有时使用起来比桥接问题要多。)
这样,任何人都可以使用虚拟或物理计算机上的任何共享文件夹。由于并非所有虚拟机都可以一直打开,因此将主机的一个文件夹设置为共享文件夹很有意义。然后,主机共享该文件夹,并且虚拟机按原样或将其用作映射驱动器。
以下文章详细介绍了如何在Windows中共享文件夹:
如何使用共享文件夹向导在Windows 7中共享文件夹?
我做了以下步骤,最后(在CentOS VB上)对我来说很好用:
然后,该VB应该可以访问Internet,并且可以从其他VB和本地计算机进行访问。
注意:
NAT适配器将用于访问Internet,而Host-Only适配器将用于在任何其他VB与本地计算机之间进行网络访问。