我正在尝试设置虚拟 LAMP 服务器,包括使用 samba 在客户操作系统 (Ubuntu Server) 和主机操作系统 (Windows 7) 之间共享文件。我思考我的问题是我无法让桥接(或仅主机)网络在 VirtualBox 中工作。
我可以使用 NAT 正常启动 Linux VM,但无法直接访问其上的任何服务(端口转发 80 之后除外)(我的理解是端口转发之所以有效是因为我没有在主机操作系统上运行 Web 服务器,因此它可以将流量转发到未使用的端口 80)。
我认为端口转发 Samba 流量(从主机到客户机)不会起作用,因为我认为主机操作系统正在使用这些端口。
当我关闭 NAT 并打开桥接网络时,出现错误。虚拟机无法启动,弹出一个对话框(标题:VirtualBox - 错误),提示“无法为虚拟机 UbuntuServer 打开会话。配置错误:无法获取 MAC 地址(VERR_CFGM_VALUE_NOT_FOUND)。
我希望一旦这个问题解决,Samba 就能正常运行:)
对此的任何建议都很好(如何修复它会很棒,故障排除的下一步也会很棒:))
答案1
所以看起来我偶然找到了答案。我摆弄了 VM 管理器程序(在主机操作系统上),并将“桥接”适配器设为 #1,现在一切正常。主机专用适配器一旦设为 #1 也可以正常工作。
(我一开始使用默认设置:NAT 作为适配器 #1,然后添加桥接适配器作为 #2。当我意识到桥接/仅主机适配器不工作时,我禁用了适配器 #1(NAT),而将桥接适配器保留为 #2)
答案2
我的解决方案与这些答案不同。使用 VirtualBox 4.3.10 ,我只需执行以下操作:
- 设置我的虚拟机以使用 DHCP 或手动 IP。
- 在 VBox 设置中,如果 Nat 网络没有值,则添加具有默认设置的 NAT 网络。
- 在 VBox 设置中,如果仅主机网络为空,则添加一个名为仅主机以太网适配器 #2 的适配器(我认为 #1 也可以工作)
- 重启虚拟机。虚拟机将获取 IP,现在可以使用每个虚拟机实例的桥接网络访问互联网。
非常奇怪和晦涩,这个功能开箱即用。
答案3
似乎许多 VBoxNetDHCP 进程存在问题,这些进程的数量减少了,但当 VirtualBox 关闭时,一些进程仍保留在主机服务器进程列表中。有点僵尸进程的感觉。
我在 Win7 上有一个 VirtualBox 主机服务器,还有两个 Win7 客户端。一周后,这些机器无法通过网络访问。我配置了 2 个接口:
- 网桥
- NAT 网络
我当时的解决方法是关闭所有客户虚拟机,关闭 VirtualBox 管理控制台,然后在主机服务器上终止一个 VBoxNetDHCP(其他的都自己退出了)。然后我再次启动 VirtualBox 和虚拟机,互联网又恢复了。
以前,重新启动整个主机服务器也是可行的,但这是一个更糟糕的解决方案。
答案4
Virtualbox 中的桥接网络模式应该可以正常工作,但您的虚拟机似乎尚未分配 MAC 地址(该地址应该与您的物理网卡的 MAC 地址不同)
附件是桥接模式下虚拟机的网络设置图片,在高级部分确保有一个 MAC 地址的值,您可以使用右侧的图标为虚拟网卡生成一个新的 MAC 地址。