Подтвердить что ты не робот

Vagrant VMWare Public: невозможно установить статическое автоматически

Я использую модуль VMWare. В настоящее время я использую следующее:

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

Он действительно делает соединение BRIDGED, однако это BRIDGED DHCP Connection.

Кто-нибудь использовал статический IP-адрес успешно?

Это коробка CentOS-6.6.

Обновление: это была конкретная конфигурация виртуальной машины, создатель не удалял файл в /etc/, который необходимо очистить перед упаковкой VM

4b9b3361

Ответ 1

Я придумал довольно элегантное решение, ожидая, что это будет исправлено командой плагинов vagrant-vmware-workstation.

Я настроил бродягу, настроил public_network с параметром auto_config равным false. (Так что бродяга не перезаписывает файл, который я меняю)

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

После того, как я установил это, я могу запустить средство обеспечения оболочки для эха в файл, содержащий настройки для 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

Он запускает оболочку script, передающую IP и сетевую маску в оболочку script в качестве аргументов.

Оболочка script изменяет /etc/sysconfig/network-scripts/ifcfg-eth1 (файл конфигурации для eth1 в CentOS-6.6), затем переходит к перезагрузке сети, чтобы настройки вступили в силу.

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

Как я уже сказал, похоже, что это была ошибка на некоторое время. Я создал самое изящное исправление, которое я мог на данный момент.

Ответ 2

Согласно этот поток ошибок, люди столкнулись с той же проблемой, когда они использовали vmware_fusion в качестве поставщика; пока он работает с поставщиком virtualbox.

Кажется, что v3.2.0 для VMware Fusion/Workstation plugin был выпущен с исправлением для этого. Попробуйте обновить свой VMWare Plugin до этой версии и снова протестируйте его.

Но если мы посмотрим на Vagrant VMWare Plugin для 3.2.0, он упоминает:

Ядро: статические IP-адреса работают в общедоступных сетях (частные сети имеют всегда работает)

И ничто в недавно выпущенных версиях ( > 3.2.0), похоже, не исправляет это.

Ответ 3

Оказалось, что базовый брандмауэр CentOS, который мы использовали, имел какую-то проблему. Я упаковал новый брандмауэр CentOS вручную, и он смог обеспечить использование брандмауэра.