我正在使用VMWare插件。我目前正在使用以下内容:
config.vm.network "public_network", ip: "172.17.255.13", netmask: "255.255.255.0"
它确实建立了一个BRIDGED
连接,但是这是一个BRIDGED DHCP
连接。
有人成功地使用了静态IP吗?
这是一个CentOS-6.6盒子。
更新:这是特定的VM配置问题,创建者没有删除需要在VM封装之前清除的/etc/文件。
我正在使用VMWare插件。我目前正在使用以下内容:
config.vm.network "public_network", ip: "172.17.255.13", netmask: "255.255.255.0"
它确实建立了一个BRIDGED
连接,但是这是一个BRIDGED DHCP
连接。
有人成功地使用了静态IP吗?
这是一个CentOS-6.6盒子。
更新:这是特定的VM配置问题,创建者没有删除需要在VM封装之前清除的/etc/文件。
在等待vagrant-vmware-workstation插件团队修复此问题时,我想出了一个相当优雅的解决方案。
我使用vagrant设置了一个public_network,并将auto_config设置为false。(这样vagrant就不会覆盖我更改的文件)
config.vm.network "public_network", auto_config: false
在我设置好之后,我可以运行一个shell provisioner来向包含eth1设置的文件中打印输出(eth0始终是Vagrant的主机专用网络)。
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脚本修改/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
就像我所说的那样,这个问题似乎已经存在一段时间了。我现在创建了一个最优雅的修复方法。
vmware_fusion
作为提供程序时,会遇到相同的问题;而使用virtualbox
提供程序则可以正常工作。VMware Fusion/Workstation 插件
的v3.2.0
已经发布了一个修复此问题的bugfix。请尝试将您的VMWare插件更新到此版本并再次测试。新发布的版本(> 3.2.0)中似乎没有解决此问题。core:静态IP适用于公共网络(私有网络一直有效)