amp*_*ent 10 virtualbox dhcp ip virtual-machine
我的 VirtualBox 中有一个 VM,想将其用作模板/映像,因此我克隆了它。然后我同时启动了原始和克隆(为我正在处理的事情模拟服务器集群),但是,两个实例都分配了相同的 IP 地址。这可能是我们 DHCP 中的一个错误,我认为 VirtualBox 使用它来获取 IP 地址?或者也许是我设置虚拟机的方式?无论如何,我最终对解决此问题感兴趣,以便我可以同时使用同一映像的两个 VM。
tbe*_*nz9 13
这称为 IP 冲突,可能会导致网络出现严重问题。
可以重新初始化克隆虚拟机的MAC地址;这只是意味着生成一个新的随机一个。在克隆的 VM 上单击设置 >> 网络 >> 高级,然后单击两个圆形箭头以生成新的 MAC。您的虚拟机需要关闭。当它启动时,您的 DHCP 服务器应该为虚拟机分配一个不同的 IP 地址。
另外仅供参考,当您克隆 VM 时,您应该看到一个带有“重新初始化 MAC”字样的复选框,这将克隆 VM 并生成新的 MAC,而不是克隆它。
如果您好奇,克隆虚拟机通常用于对虚拟机进行完整备份,在这种情况下,您希望 MAC 和 IP 相同,以防您必须使用备份。对于克隆 VM 以构建集群的情况,您需要在每个克隆上重新初始化 MAC。
更新 1 针对您在 2013 年10 月 8 日发表的评论。
确保 IP 地址不是静态设置的。您在问题中提到虚拟机应该从 DHCP 获取它的 IP。如果是这种情况,配置应如下所示。对于基于 debian 的系统,它可以在 /etc/network/interfaces 中找到
auto eth0
iface eth0 inet dhcp
Run Code Online (Sandbox Code Playgroud)
对于基于 redhat 的系统,网络配置位于 /etc/sysconfig/network-scripts/ifcfg-eth0
您的第二条评论提到缺少 eth0。你有eth1吗?由于您的计算机更改了mac地址,因此操作系统将原始mac保留为eth0,并且通常将eth1分配给新mac。要重置 eth* 设备以使您拥有 eth0 而不是 eth1,您需要清除 udev 网络规则。
与网络打交道可能会让人毛骨悚然。一种选择是删除您克隆的虚拟机并再次克隆原始虚拟机并选中“重新初始化 mac”。我不确定它会解决您的问题,但可能会。
这里还没有人提到它。
您可能还需要更改machine-id:
适用于 Ubuntu:
sudo rm -f /etc/machine-id
sudo dbus-uuidgen --ensure=/etc/machine-id
sudo rm /var/lib/dbus/machine-id
sudo dbus-uuidgen --ensure
reboot
Run Code Online (Sandbox Code Playgroud)
你也可以在 Ubuntunetplan配置文件中试试这个参数:
dhcp4: yes
dhcp-identifier: mac
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
37213 次 |
| 最近记录: |