我不确定这是否完全可能,所以认为值得一问。我想使用 Vagrant 允许用户在需要时启动 VM。但是,在我们的网络设备上必须通过它们的 MAC 地址进行注册。创建地址池不是问题,但是否可以为 VM 选择地址,即分步过程:
- 读取 MAC 地址文件
- 选择未使用的 MAC 地址
- 启动虚拟机并设置 MAC 地址
希望有人能对此有所了解,因为我的谷歌搜索失败了。
我不确定这是否完全可能,所以认为值得一问。我想使用 Vagrant 允许用户在需要时启动 VM。但是,在我们的网络设备上必须通过它们的 MAC 地址进行注册。创建地址池不是问题,但是否可以为 VM 选择地址,即分步过程:
希望有人能对此有所了解,因为我的谷歌搜索失败了。
我相信这是可能的,因为 vagrant 配置是通过执行 Ruby 文件生成的;通过使用标准 ruby 库,您可以检查文件,选择未使用的 MAC 并按照您的描述启动 VM,方法是将检索到的值插入此处的配置指令中。
但是,我建议如果虚拟机将在不同用户的主机上启动,而不是使用文件,最好提供一个 Web 服务,可以为 vagrant 配置提供一个未使用的 mac 地址,集中管理地址池被认为是使用与否。
然后,您可以使用类似于此处提供的功能来通知您的 Web 服务 mac 地址不再被使用,
vagrant halt
或者vagrant destroy
VMWare 的所有自动 MAC 地址都在 00:50:56:00:00:00-00:50:56:3F:FF:FF 范围内 - 为什么不预先定义该范围?是的,它有 262,143 个地址,但并没有那么大。