resolv.conf tidak diatur pada reboot ketika jaringan dikonfigurasi untuk ip statis

17

Saya mengalami apa yang tampaknya menjadi masalah resolusi nama di Ubuntu 12.04 Server edisi ketika mengkonfigurasi komputer saya untuk menggunakan ip statis.

Di / etc / network / interfaces:

# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.28
netmask 255.255.255.0
gateway 192.168.1.1

Berjalan $ sudo apt-get upgrade, menghasilkan 'Gagal mengambil ...':

. . . W: Failed to fetch http://us.archive.ubuntu.com/ubuntu/dists/precise-backports/universe/i18n/Translation-en_US Something wicked happened resolving 'us.archive.ubuntu.com:http' (-5 - No address associated with hostname)
[...]

Ketika saya mengubah / etc / network / interfaces saya ke:

auto eth0
iface eth0 inet dhcp

Semuanya bekerja dengan baik.

Melihat ke /etc/resolv.conf memberikan beberapa petunjuk lagi.

Dalam kasus di mana saya mendapatkan masalah penyelesaian, resolv.conf kosong; tidak ada server nama yang ditentukan. Kemudian saya berubah menjadi DHCP dari jaringan statis dan restart; /etc/resolv.conf diubah menjadi: 'nameserver 192.168.1.1'.

Beralih kembali dari DHCP ke statis dan memulai ulang tidak menghapus entri server nama. Tetapi ketika saya me-restart sistem dengan set statis, resolv.conf kosong. Ketika saya me-restart sistem dengan set DHCP, resolv.conf memiliki nameserver 192.168.1.1. Jadi, tampaknya masalahnya adalah resol.conf tersebut tidak ditulis dengan benar? Paket / kode mana yang bertanggung jawab untuk menulis ke resolv.conf? Apakah ada paket khusus yang bisa saya lihat pada masalah terbuka?

UPDATE: istream memposting artikel bagus yang membahas perubahan untuk menyelesaikan.conf di 12,04. http://www.stgraber.org/2012/02/24/dns-in-ubuntu-12-04/

kenneth koontz
sumber
2
Jika semuanya berfungsi dengan baik saat Anda gunakan DHCP, maka "masalah" apa yang Anda ingin saran untuk "memperbaiki". Seperti apa LAN Anda? Jenis router apa yang Anda gunakan? (Ada apa di 192.168.1.1?) Server DNS apa yang Anda tentukan saat menggunakan IP statis?
rasional John
1
Judul yang diperbarui untuk mencerminkan gejala dengan lebih akurat dan menambahkan lebih banyak temuan
kenneth koontz
+1 untuk mengedit pertanyaan dan judul untuk meningkatkannya meskipun Anda sudah memiliki jawaban!
John,
1
Menambahkan referensi istream untuk perubahan dns di ubuntu 12.04.
kenneth koontz

Jawaban:

16

Sesuai halaman manual resolvconf (contoh disediakan di halaman manual), tambahkan berikut ini ke / etc / network / interfaces di bawah konfigurasi statis Anda:

dns-nameservers [IP address(es) of your DNS]     
dns-search      [your dns-search strings (optional)]
ukjola
sumber
Sempurna. Ini bekerja!
kenneth koontz
Apa yang aneh adalah di 11.10 Saya tidak harus menentukan server-nameserver dns.
kenneth koontz
Betul. Pada 12,04 Ubuntu mulai menggunakan resolvconf untuk menangani resolv.conf. Ini resolvconf yang membaca dns-nameserversopsi di / e / n / i.
jdthood
1

Apakah Anda yakin bahwa Anda memberikan 192.168.1.1nilai untuk DNS ketika Anda mengatur IP statis?

Saya tidak tahu bagaimana melakukan ini dari baris perintah, tetapi menggunakan System Settings -> NetworkGUI harus bekerja juga, bukan? Yang saya pikirkan adalah Anda menginginkan sesuatu seperti tangkapan layar di bawah ini? Atau apakah saya tidak mengerti apa yang Anda coba lakukan?

Konfigurasi jaringan dengan IP statis, rute default, server DNS

Catatan: Abaikan nilai-nilai di jendela sebelah kiri. Itu hanya nilai-nilai saya dari DHCP. Saya tidak repot-repot menyimpan konfigurasi statis karena saya hanya mencoba menggambarkan apa yang saya pikirkan.

Ngomong-ngomong, saya menggunakan 192.168.1.1karena itulah yang Anda gunakan. Tetapi Anda juga bisa menggunakan IP untuk server DNS yang valid. Misalnya, 8.8.8.8dan / atau 208.67.222.222seharusnya juga berfungsi.

irasional John
sumber
Terima kasih atas solusinya. Namun, saya tidak menggunakan desktop.
kenneth koontz
@kennethkoontz saya tidak mengerti. Apakah Anda menggunakan server Ubuntu? Jika Anda tidak menggunakan instalasi desktop khas 12,04, silakan edit pertanyaan Anda dan tambahkan informasi ini ke sana.
rasional John
2
Maaf bila membingungkan. Saya seharusnya mengatakan, "Saya tidak menggunakan edisi desktop. Saya menggunakan edisi server." Saya akan memperbarui pos pertanyaan untuk menghapus ambiguitas.
kenneth koontz
0

Jika Anda tidak ingin (atau tidak bisa) menggunakan applet Network Manager untuk mengatur pengaturan jaringan Anda, saya menemukan cara yang tepat untuk mengatur konfigurasi IP "statis" , karena ketika Anda tidak memiliki server DHCP tersedia, adalah memiliki sewa statis pada dhclient.conf. Di sana Anda harus menentukan nameserver yang akan ditulis ke resolv.conffile ketika dhclient kembali ke statis.

Namun, jika Anda tidak ingin tangan Anda kotor, saya masih menyarankan untuk menggunakan GUI untuk menentukan alamat server DNS pada pengaturan IP koneksi Anda, seperti di /ubuntu//a/127537/33305 .

Simon
sumber
0

OP menggunakan server ed. NetworkManager tidak berlaku .. meskipun siapa tahu mungkin itu akan ditambahkan hanya untuk menambah kompleksitas ke server.

Untuk itu mengapa di dunia ini resolvconf bisa ditambahkan ke server ed ... MENGAPA !! ??!?

Pokoknya untuk menjawab pertanyaan Anda, tambahkan:

/ etc / network / interfaces

sesuatu seperti ini:

auto eth0 inet static
     dns-nameservers ns1.mydnsservers.com ns2.mydnsservers.com

Opsi penting adalah "dns-nameserver".

jbowen7
sumber