Как добавить 'Host-only Adapter' к машине VirtualBox через конфигурацию файла Vagrant?


21

Многие ответы есть только применимая версия 1 конфигурации файла Vagrant. например

config.vm.network :hostonly, :adapter => 2

Новое public networkне поддерживает эту функцию. например, эта строка здесь

config.vm.network "public_network", bridge: 'vboxnet0'

Будет выдавать ошибку, потому что vboxnet0это не сетевой интерфейс, как en0. Вот снимок экрана:

введите описание изображения здесь

Я также пытался

config.vm.provider "virtualbox" do |vb|
  vb.customize ["modifyvm", :id, "--hostonlyadapter2", "vboxnet0"] 

Но это никак не влияет на виртуальную машину.

Как я могу создать новый интерфейс, как это?

введите описание изображения здесь

Я использую

  • Mac OS X 10.10.1
  • VirtualBox 4.3.20
  • Бродяга 1.6.5

Ответы:


24

Я думаю, что нашел ответ.

config.vm.provider "virtualbox" do |vb|
    config.vm.network "private_network", :type => 'dhcp', :name => 'vboxnet0', :adapter => 2
end

Это создаст адаптер только для хоста, как я хотел в моем вопросе


Приятно видеть, что это решено! Вы должны отметить это как ответ, когда у вас есть момент, так как это явно поможет другим, сталкивающимся с подобными проблемами.
JakeGould

В дополнение к этому, если вам посчастливилось иметь сервер DHCP пользовательский уже настроен, вы должны убедиться , что dhcp_ip, dhcp_lowerи dhcp_upperсоответствовать пользовательский сервер DHCP в противном случае бродяга выдаст ошибку.
Morloch

2
Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu/xenial64"
  config.vm.network "private_network", type: "dhcp"
end

Работает для меня, хотя я уже настроил vboxnet0 по умолчанию, он создал новую сеть только для хоста vboxnet1.

Я не смог использовать vboxnet0, далее он выдает конфликтующую сетевую ошибку. Создание нескольких VMS с вышеупомянутым конфигом работало для меня с использованием vboxnet1 по умолчанию.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.