0
Vagrant依靠VMware(Workstation和Fusion)从一个盒子中部署的guest虚拟机上生成eth0的MAC地址(第一个和默认的以太网接口)。如何使用VMware配置程序在Vagrant中设置eth0 MAC地址?
我想修复这个MAC地址,使其每次重新创建虚拟机时都是静态的,不会重新生成,以便VMware DHCP服务每次都可以为其分配相同的IP地址。
Vagrant依靠VMware(Workstation和Fusion)从一个盒子中部署的guest虚拟机上生成eth0的MAC地址(第一个和默认的以太网接口)。如何使用VMware配置程序在Vagrant中设置eth0 MAC地址?
我想修复这个MAC地址,使其每次重新创建虚拟机时都是静态的,不会重新生成,以便VMware DHCP服务每次都可以为其分配相同的IP地址。
首先确保VMware DHCP服务通过编辑vmnetdhcp.conf
将IP地址分配给指定的MAC地址,该vmnetdhcp.conf
具有不同的locations depending on OS。放置在该文件的末尾中的条目与所需的值替换的主机名,MAC和IP:
host hostname {
hardware ethernet 00:0A:AA:AA:AA:AA;
fixed-address 192.168.1.1;
}
重新启动VMware DHCP服务来加载这些变化。
在你Vagrantfile
使用下面的设置来配置默认网络接口:
Vagrant.configure("2") do |config|
config.vm.define 'hostname' do |hostname|
hotname.vm.box = box
hostname.ssh.host = '192.168.1.1'
puppet.vm.provider :vmware_fusion do |v, override|
v.vmx['ethernet0.addressType'] = 'static'
v.vmx['ethernet0.address'] = '00:0A:AA:AA:AA:AA'
end
puppet.vm.provider :vmware_workstation do |v, override|
v.vmx['ethernet0.addressType'] = 'static'
v.vmx['ethernet0.address'] = '00:0A:AA:AA:AA:AA'
end
end
end
下一次虚拟机带来了vagrant up
将分配的静态MAC地址,并收到来自DHCP同一个IP地址。
其他vmx keys也可以使用此方法操作ethernet0
。
如果更新了VMware Workstation或VMware Fusion,则可能会重置此文件,并将更改放回原处。 – Aethylred 2014-11-05 01:13:07