为什么 VirtualBox 为两个虚拟机实例分配相同的 IP 地址?两者都使用仅主机网络

为什么 VirtualBox 为两个虚拟机实例分配相同的 IP 地址?两者都使用仅主机网络

VB 版本:4.2.16

客户机操作系统版本:Ubuntu 12.4 LTS

主机操作系统版本:OSX 10.8.4

我创建了两个虚拟机。每个虚拟机都分配了两个网络适配器:NAT 和 Host-only。

这是仅主机适配器的定义方式:

在此处输入图片描述

这是来自 VirtualBox 两个实例的屏幕截图。

第一个虚拟机

第二台虚拟机

看起来两台机器的接口 virbr0 的 IP 都是 192.168.122.1。

正如@kenster 所言,VB 没有创建 virbr0 接口。我不知道它从何而来。

显然 eth0 来自 NAT 适配器。两个虚拟机的 eth0 具有相同的 IP。以下是其中一个虚拟机的屏幕截图:

在此处输入图片描述

我应该从第二个仅主机适配器期待一个 eth1 吗?如果是,为什么没有创建它?

VB 偏好设置中的仅主机 dhcp 设置:

在此处输入图片描述

那么,为什么 VB 为两个盒子分配两次相同的 IP?

答案1

抱歉,问题中产生了太多噪音。

基本上是这样的:

1)我第一次创建两个虚拟机时只使用一个网络适配器(NAT)

2)然后我在 VirtualBox 中又添加了一个仅主机适配器,并错误地期望新的接口会出现在 ifconfig 中

我的问题的解决方案

在 /etc/network/interface 中添加新的 eth1 并重新启动网络。

答案2

如果您从已创建的安装中创建了克隆,请检查两个安装的 MAC 地址。

如果 MAC 地址相同,更改 MAC 地址在其中一台机器上并重新启动它。

答案3

删除内核的网络接口规则文件,以便重新生成

# rm -f /etc/udev/rules.d/70-persistent-net.rules
# reboot

它将适用于您的克隆虚拟机。

答案4

解决此问题的另一种方法是将网络从 NAT 更改为网桥。对我而言,这种方法有效。

相关内容