使用 Vagrant,我目前正在尝试在我的 ubuntu/precise32 机器上设置一个 private_network 接口(interface),并使用“5C:A1:AB:1E:00:01”的 MAC 地址配置这个接口(interface)。我没有在任何地方看到这种用法的明确示例,因为所有示例都使用公共(public)网络(桥接)接口(interface)。然而 documentation显示 :mac
选项可用于专用网络接口(interface)。到目前为止,我已经尝试了以下组合:
语法 v1
config.vm.network :hostonly, "192.168.33.10", :mac => "5CA1AB1E0001"
语法 v2
config.vm.network "private_network", ip: "192.168.33.11", :mac => "5CA1AB1E0001"
config.vm.network :private_network, ip: "192.168.33.11", :mac => "5CA1AB1E0001"
以上所有三行都成功通过了 Vagrant ruby 解析器,但是这些行都没有成功更改网络适配器的 mac 地址。
为公共(public)(桥接)网络设置 mac 地址(语法 v1 和 v2)的解决方案。
有人问了类似的问题here并且确实有效,但我只能将其应用于公共(public)网络设置(如答案所示)。指定“private_network”代替公共(public)网络成功启动虚拟机,但无法更改专用接口(interface) (eth1) 的 mac 地址。
最佳答案
我使用vboxmanage 来修改MAC 地址。我不知道它可以用 Vagrant 的语法来改变。更多关于 vboxmanage .
config.vm.provider "virtualbox" do |vb|
vb.customize ["modifyvm", :id, "--macaddress1", "5CA1AB1E0001" ]
end
关于ruby - Vagrant:在 private_network 中设置 VM 的 MAC 地址(hostonly),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23396679/