Сбой настроек сети для Ubuntu / xenial64 Vagrant box

С Официальным Ubuntu 16.04 LTS (Xenial Xerus) Образ Vagrant Box (на VirtualBox) У меня проблемы с основными настройками сети:

My Vagrantfile:

Vagrant.configure(2) do |config|

  config.vm.box = 'ubuntu/xenial64'

  config.vm.define "xenial" do |server|
    server.vm.network "private_network", ip: "192.168.10.10"
  end
end

vagrant up результат:

==> xenial: Configuring and enabling network interfaces...
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!

/sbin/ifdown eth1 2> /dev/null

Stdout from the command:



Stderr from the command:

sudo: unable to resolve host ubuntu-xenial
mesg: ttyname failed: Inappropriate ioctl for device

Выход из конфигурации на DHCP также не работает:

server.vm.network "private_network", type: "dhcp"

В то же время вышеуказанные конфигурации работают для ubuntu/trusty64 и ubuntu/wily64 и неофициальные gbarbieru/xenial .

Попытка команды /sbin/ifdown eth1 2> /dev/null не дает результатов, так как интерфейс имеет другую схему именования (основной является enp0s3).

Я что-то упускаю здесь, или коробка просто сломана?

15
задан 23 April 2016 в 01:28

5 ответов

Проблема связана с соглашением об именах сетевых интерфейсов в новых версиях Ubuntu. Ваша Vagrant VM не была подготовлена, но вы все равно можете подключиться к ней по ssh (vagrant ssh). Там вы увидите, что нет интерфейса с именем eth1 (вы можете использовать ifconfig -a или ip link). В моем случае я вижу интерфейсы enp0s3 и enp0s8.

Как упоминалось в , выпуск 6871

... нам нужен способ обнаружения интерфейсов вместо статического назначения ...

... или убедить ubuntu сменить имидж облака.

На данный момент нет чистого решения.

0
ответ дан 23 April 2016 в 01:28

Несмотря на ubuntu/xenial64 поле Official Ubuntu, оно имеет некоторые проблемы относительно конфигурации сети и не является Бродячей проблемой, как объяснен в ответе @Maxime.
Так, как в проблеме упоминается, предпочтен для использования бенто поле (сохраняемый сообществом и с Шеф-поваром Opscode как лидер проекта), который для этого случая был бы bento/ubuntu-16.04.

2
ответ дан 23 April 2016 в 11:28
  • 1
    Привет, @Devigner3D, сделайте, чтобы Вы успешно выполнились с этим? – pa4080 15 November 2017 в 08:00

На самом деле, дополнительно к ответу Maximes, Вы могли изменить командную строку GRUB в своем поле, пока новая версия не распространена.

Просто переходят в /etc/default/grub и устанавливают соответствующую строку на GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0", необходимо измениться /etc/network/interfaces для отражения корректных имен (eth0...).

Посмотрите documentaion в certdepot для большего количества Информации .

1
ответ дан 23 April 2016 в 11:28
  • 1
    @ryoishikawa74 не забудьте голосовать/принимать мой ответ, если это было полезно. Спасибо! – heynnema 12 September 2017 в 15:05

Проблема, кажется, решена в следующем выпуске бродяги: https://github.com/mitchellh/vagrant/issues/7155

я попробовал другое поле от Jeff Geerling https://twitter.com/geerlingguy/status/723571293174427648? lang=fr и это работали отлично на меня. Jeff сделал большую большую работу над Vagrant/Ansible, таким образом, я предполагаю, что это - лучшее решение перед выпуском следующей версии Бродяги

15
ответ дан 23 April 2016 в 11:28
  • 1
    парни спасибо так, i' ll пробуют это на следующей неделе и i' ll отвечают спасибо за Вашу поддержку. – Devigner3D 13 September 2017 в 11:07

Я столкнулся с подобной проблемой, как обсуждено в исходном вопросе.

Я использую Бродягу 1.8.1. и использование ubuntu/trusty64 поля работало просто великолепно, однако, когда я пытался использовать ubuntu/xenial64 поле, я столкнулся с той же проблемой. Комментарий в этом потоке проблемы принес мне к решению, которое, кажется, удается.

Я изменил строку

config.vm.network "private_network", ip: "192.168.33.10"

в Vagrantfile к

config.vm.network "private_network", ip: "192.168.33.10", auto_config: false
1
ответ дан 23 November 2019 в 02:46

Другие вопросы по тегам:

Похожие вопросы: