Pengaturan jaringan gagal untuk kotak Ubuntu / xenial64 Vagrant


15

Dengan gambar kotak Vaginal resmi Ubuntu 16.04 LTS (Xenial Xerus) (di VirtualBox) saya memiliki masalah dengan pengaturan jaringan dasar:

Saya 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 hasil:

==> 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

Membiarkan konfigurasi ke DHCP juga tidak berfungsi:

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

Pada saat yang sama, konfigurasi di atas berfungsi untuk ubuntu/trusty64dan ubuntu/wily64dan tidak resmi gbarbieru/xenial.

Mencoba perintah /sbin/ifdown eth1 2> /dev/nulltidak memberikan hasil karena antarmuka memiliki skema penamaan yang berbeda (yang utama adalah enp0s3).

Apakah saya kehilangan sesuatu yang jelas di sini atau kotaknya rusak?

Jawaban:


15

Masalahnya tampaknya diselesaikan dalam rilis berikutnya dari gelandangan: https://github.com/mitchellh/vagrant/issues/7155

Saya mencoba kotak lain dari Jeff Geerling https://twitter.com/geerlingguy/status/723571293174427648?lang=fr dan berfungsi dengan baik untuk saya. Jeff telah melakukan banyak pekerjaan hebat di Vagrant / Ansible jadi saya kira itu solusi terbaik sebelum rilis versi berikutnya dari Vagrant


Saya memiliki masalah yang sama dengan kotak Ubuntu 16.04 resmi. Setelah beberapa jam coba-coba, saya mencoba kotak geerlingguy dan itu berfungsi seperti pesona. Kotak Ubuntu 14.04 LTS resmi juga baik-baik saja.
Jabba

2

Meskipun ubuntu/xenial64adalah kotak Ubuntu Resmi, ia memiliki beberapa masalah mengenai konfigurasi jaringan dan bukan masalah Vagrant seperti yang dijelaskan dalam jawaban @ Maxime.
Jadi, seperti dalam masalah ini disebutkan, lebih disukai menggunakan kotak bento (dijaga oleh masyarakat dan dengan Opscode Chef sebagai pemimpin proyek), yang untuk kasus ini akan menjadi bento/ubuntu-16.04.


Kotak "bento" juga direkomendasikan oleh pengelola Vagrant: github.com/mitchellh/vagrant/issues/7155#issuecomment-228568200
joonas.fi

1

Masalahnya adalah karena konvensi penamaan antarmuka jaringan dalam versi Ubuntu baru. Vagrant VM Anda gagal disediakan, tetapi Anda masih dapat melakukannya ( vagrant ssh). Di sana Anda akan melihat bahwa tidak ada antarmuka bernama eth1(Anda dapat menggunakan ifconfig -aatau ip link). Dalam kasus saya, saya melihat antarmuka enp0s3dan enp0s8.

Sebagaimana disebutkan dalam edisi 6871

... kita membutuhkan cara untuk mendeteksi antarmuka daripada memiliki tugas statis ...

... atau meyakinkan ubuntu untuk mengubah gambar cloud mereka.

Saat ini, tidak ada solusi bersih.


1

Sebenarnya, selain jawaban Maximes, Anda dapat mengubah perintah GRUB di kotak Anda sampai versi baru disebarkan.

Cukup buka /etc/default/grubdan atur baris yang sesuai ke GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0" Anda harus mengubah/etc/network/interfaces untuk mencerminkan nama yang benar (eth0 ...).

Lihat dokumen di certdepot untuk Info lebih lanjut .


1

Saya menghadapi masalah yang sama seperti yang dibahas dalam pertanyaan awal.

Saya menggunakan Vagrant 1.8.1. dan menggunakan kotak ubuntu / trusty64 bekerja dengan baik, namun, ketika saya mencoba menggunakan kotak ubuntu / xenial64, saya menghadapi masalah yang sama. Komentar dalam utas masalah ini membawa saya ke solusi, yang sepertinya berhasil.

Saya mengubah garis

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

dalam Vagrantfile ke

config.vm.network "private_network", ip: "192.168.33.10", auto_config: false
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.