2015-04-28 34 views
13

我正在使用VMWare插件。我目前使用下列内容:Vagrant VMWare Public:无法自动设置静态

config.vm.network "public_network", ip: "172.17.255.13", netmask: "255.255.255.0" 

它确实做出BRIDGED连接,但它是一个BRIDGED DHCP连接。

有没有人使用静态IP的成功?

它是一个CentOS-6.6盒子。

更新:这是特定的虚拟机配置,创建者没有删除在/ etc /需要VM包装

回答

5

我与一个漂亮优雅的解决方案来了,而等待这个由无业游民与VMware工作站插件队得到修补。

我设置了vagrant建立一个public_network与auto_config设置为false。 (所以流浪汉不会覆盖我改文件)

config.vm.network "public_network", auto_config: false 

后,我设置了,我可以运行一个shell供应者呼应到包含的eth1(eth0的永远是漂泊不定的主机只是网络设置的文件)

config.vm.provision "shell" do |s| 
    s.path = "setIP.sh" 
    s.args = ["192.168.1.150", "255.255.255.0"] #ip/netmask 
    privileged = "true" 
end 

它运行一个shell脚本,将IP和网络掩码作为参数传递给shell脚本。

shell脚本修改/etc/sysconfig/network-scripts/ifcfg-eth1(CentOS-6.6中eth1的配置文件),然后重新启动网络以使设置生效。

setIP.sh:

echo Setting IP to $1, Netmask to $2 
cat <<EOF > /etc/sysconfig/network-scripts/ifcfg-eth1 

#PACHONK SET-IP CONFIG BEGIN 
IPADDR=$1 
NETMASK=$2 
ONBOOT=yes 
DEVICE=eth1 
#PACHONK SET-IP CONFIG BEGIN 

EOF 

#Restart networking to make IP active 
/etc/init.d/network restart 

就像我说的,看起来它是一个错误一段时间。我创造了我目前最优雅的解决方案。

+0

我试过了,它对我很好。不错的工作! – PierreF

1

根据this bug thread之前被清除文件中,人们遇到了同样的问题,当他们使用作为提供者的vmware_fusion;同时与virtualbox供应商合作。

VMware Fusion/Workstation pluginv3.2.0似乎已经发布了一个bug修复。尝试将您的VMWare插件更新到此版本并再次测试。

但是,如果我们看一看在Vagrant VMWare Plugin为3.2.0,它提到:

核心:静态IP地址的公共网络工作(专用网络有 始终工作)

而且新发布的版本(> 3.2.0)似乎没有解决这个问题。

+0

我仍然有问题,我宣布公共网络,它被配置为DHCP。 – Pachonk

0

原来我们使用的CentOS base vagrant box有一些问题。我手工打包了一个新的CentOS流浪盒,并且能够使用vagrant插件进行配置。