Saya akhirnya bermigrasi ke 12,04 dari 7.10. Saya memiliki satu bagian terakhir untuk diselesaikan tetapi saya bingung. Saya menggunakan Wayang pada setiap server, dan di masa lalu saya telah memasukkan alamat server nama dan nama domain pencarian untuk puppetmaster di resolv.conf.
search puppetmaster.com
nameserver 192.168.1.XXX
Dalam 12,04 resolv.conf akan ditimpa ketika reboot. Saya tidak dapat menggunakan IP statis untuk ini, jadi menggunakan / etc / network / interfaces untuk membantu saya keluar adalah titik nol.
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.0.1
Apakah ada cara untuk mendapatkan resolvconf untuk menangani ini baik di kepala, ekor atau pangkalan? Jika ada, apakah ada contoh yang bisa saya gunakan untuk mengubah pada server saya.
Bantuan apa pun sangat kami hargai.
resolv.conf
Sam
sumber
sumber
Jawaban:
Mungkin lebih baik untuk memiliki server DNS Anda dapat menyelesaikan 'boneka' ke alamat yang benar, dan baik untuk memiliki server DHCP Anda membagikan alamat server nama DNS dan daftar pencarian atau yang lain (jika Anda memiliki alamat IP statis) untuk memiliki sesuatu seperti berikut ini di / etc / network / interfaces.
Tetapi jika Anda ingin melakukannya melalui file konfigurasi resolvconf Anda akan ingin mengedit
/etc/resolvconf/resolv.conf.d/base
. Dalam file itu, masukkan info Anda seperti yang Anda inginkanresolv.conf
.Kemudian beri tahu resolvconf untuk membuat ulang
resolv.conf
.sumber
Saya pikir jawabannya adalah memeriksa Anda
/etc/dhcp/dhclient.conf
, yaitu jangan memintadns-nameservers
dari klien dhcp Anda .Kemudian perbarui
/etc/network/interfaces
Maka Anda
resolv.conf
akan secara otomatis mengkonfigurasi seperti yang Anda inginkan.Tambahkan ke
dns-search
dan kemudian jalankan a/etc/init.d/networking restart
(meskipun skrip ini tidak digunakan lagi, ia masih berfungsi).sumber
/etc/init.d/networking restart
tidak bekerja pada mesin saya, tetapisudo ifdown -a
kemudiansudo ifup -a
berhasil. (Juga, butuh sedikit waktu untuk menyadari bahwa saya harus menggantidnsserverip
dengan sesuatu seperti8.8.8.8
; Saya merasa agak konyol.)systemctl restart networking.service
Ini kemungkinan disebabkan oleh konfigurasi DHCP ketika Anda pertama kali menginstal Ubuntu. Coba proses 3 langkah ini untuk menangani masalah konfigurasi otomatis ini.
Pertama
Edit konfigurasi antarmuka Anda, yang terletak di:
/etc/network/interfaces
Tambahkan baris ini di bawah ini
iface lo inet loopback
:Sebagai contoh untuk Google DNS, Anda mungkin ingin menggunakan ini:
Kedua
Edit file konfigurasi DHCP Anda, yang terletak di:
Tandai sintaksis sebagai komentar yang digunakan
#
pada setiap baris atau cukup hapus setiap server nama permintaan. Di 16.04, Anda mungkin tidak diharuskan untuk membuat perubahan apa pun di sini.Ketiga
Mulai ulang jaringan Anda dengan menggunakan perintah ini:
Dalam 16,04:
sumber
/etc/init.d/networking restart
tidak bekerja pada mesin saya, tetapisudo ifdown -a
kemudiansudo ifup -a
berhasil.Silakan lihat
resolvconf
halaman manual. Anda dapat memaksakan penyertaan pengaturan DNS tertentu dengan membuat misalnya/etc/resolvconf/resolv.conf.d/base
:Ada file khusus lainnya (kepala dan ekor), ini dapat membantu Anda mencapai apa yang Anda inginkan.
sumber
Karena banyak jawaban lain menyatakan ini ada hubungannya dengan
resolvconf
diinstal di sistem Anda.Jadi cara terbaik untuk menjaga sesuatu
resolv.conf
agar tidak hilang saat reboot adalah memasukkannya dalam file konfigurasi resolvconf yang ada di:Di sana cari
head
file. Apa pun yang Anda letakkan di sana akan ditulis di bagian atas/etc/resolv.conf
Jadi semuanya akan seperti ini:
sumber
Bagi saya, jawaban di atas tidak memadai karena alasan berikut:
resolvconf
, hanya polos/etc/resolv.conf
.chattr +i
untuk mengunciresolv.conf
sepertinya terlalu berantakan. Saya membutuhkan Wayang untuk bebas melakukan perubahan saat diperlukan./etc/network/interfaces
tidak mencegahresolv.conf
ditimpa; itu hanya menentukan server nama yang harus ditulis. Bagi saya, menentukan server nama bukan itu intinya. Saya mencoba untuk mengaturoptions timeout:1
danoptions attempts:1
diresolv.conf
file saya .The solusi terbaik saya menemukan menimpa perilaku default
dhclient
menggunakan kait yang didokumentasikan.Buat file baru di
/etc/dhcp/dhclient-enter-hooks.d/nodnsupdate
dengan konten berikut:Kemudian buat file tersebut dapat dieksekusi:
Sekarang ketika dhclient berjalan - baik saat reboot atau ketika Anda menjalankan secara manual
sudo ifdown -a ; sudo ifup -a
- ini memuat skrip ininodnsupdate
. Script ini menimpa fungsi internal yang disebutmake_resolv_conf()
yang biasanya akan menimparesolv.conf
dan bukannya tidak melakukan apa pun.Ini bekerja untuk saya di Ubuntu 12.04.
sumber
Ini mungkin hanya beberapa kekhasan aneh di mesin saya, tetapi orang lain mungkin memiliki kasus sudut yang sama.
Saya mencoba berbagai cara untuk memasukkan server nama ISP saya di /etc/resolv.conf tanpa hasil:
Saya memasukkan mereka ke dalam
/etc/network/interfaces
dan memulai kembali jaringan. Mereka tidak muncul di/etc/resolv.conf
.Saya menempatkan mereka
/etc/resolv.conf
secara eksplisit, tetapi tentu saja mereka ditimpa. Mereka memang muncul/run/resolvconf/interface/eth0.inet
, tetapi tidak pernah berhasil/etc/resolv.conf
.Saya mencoba mengonfigurasi resolvconf untuk pembaruan dinamis. Tidak ada perubahan.
Akhirnya saya membaca di suatu tempat bahwa jika mesin lokal (127.0.0.1) muncul di
/etc/resolv.conf
server nama lain tidak termasuk.Dalam keputusasaan saya edit
/run/resolvconf/interface/lo.named
, dihapus hanya baris di dalamnya (nameserver 127.0.0.1
) dan restart:ifdown eth0 && ifup eth0
./etc/resolv.conf lalu menyertakan server nama ISP saya untuk pertama kalinya! Saya berlari
service network-manager restart
untuk melihat apakah itu stabil dan/etc/resolv.conf
masih termasuk nameserver ISP saya. Reboot hanya untuk memastikan dan itu masih ada tetapi/run/resolvconf/interface/lo.named
mendapat ulang ke:nameserver 127.0.0.1
.Anehnya memulai kembali jaringan masih berfungsi:
/etc/resolv.conf
masih mengandung server nama ISP saya. Saya tidak bisa menjelaskan ini (bisakah seseorang?) Tetapi ini mungkin membantu seseorang terjebak di tempat yang sama.sumber
dnsmasq
. Anda dapat menghapusnya menggunakanapt-get remove dnsmasq
atau memperbarui konfigurasi/etc/dnsmasq.conf
.tambahkan nameserver Anda ke file /etc/resolvconf/resolv.conf.d/head. File berisi pesan yang telah Anda terima:
file itu akan terlihat seperti ini setelah menambahkan 8.8.8.8
sumber
tambahkan pada baris terakhir misalnya:
Buka terminal dan ketik
tanda + i menangani bahwa file tidak akan direset pada boot.
Untuk membatalkan hal di atas
Untuk lebih
sumber
Solusi lain tidak bekerja untuk saya di sistem Fedora 20 saya. Masalah khusus saya adalah bahwa baris "pencarian" di /etc/resolv.conf sedang ditimpa. Inilah yang diperbaiki. (Ini mengasumsikan bahwa NetworkManager memproduksi baris
search rn.yourcompany.com
dan Anda ingin memilikinyasearch rn.yourcompany.com yourcompany.com intnet.yourcompany.com
:1.Gunakan perintah "ifconfig" untuk mencari tahu antarmuka apa yang menarik:
2. Menjadi root dan ubah ke direktori perangkat jaringan konfigurasi sistem:
Domain
baris dengan domain tambahan untuk mencari:DOMAIN="yourcompany.com intnet.yourcompany.com"
Simpan, keluar, dan masuk kembali. NetworkManager sekarang harus memiliki baris di
\etc\resolve.conf
:sumber
Tambahkan entri di
/etc/resolvconf/resolv.conf.d/head
dan jalankan perintah berikut
sumber
Untuk Ubuntu Server 18 Netplan adalah utilitas baru untuk mengkonfigurasi jaringan.
Kemudian edit entri nameserver alamat dalam file yaml (gunakan indentasi yang benar). Misalnya, jika Anda menggunakan server DNS Google:
Untuk memulai kembali layanan
Lihat https://netplan.io/
https://www.techrepublic.com/article/how-to-set-dns-nameservers-in-ubuntu-server-18-04/
sumber
Jika Anda menggunakan DHCP, edit
/etc/dhcp/dhclient.conf
untuk menambahkan server DNS tambahan:Klien DHCP menimpa
dns-nameservers
inetc/network/interfaces
dan saya pikir/etc/resolvconf/resolv.conf.d/base
juga.Ini bekerja untuk saya di server Ubuntu 14.04.3.
Lihat Wiki Konfigurasi Jaringan Debian untuk detailnya.
sumber
Cukup cadangkan resol.conf Anda dan hapus resolvconf pacage dan edit file /etc/resolv.conf ke apa pun yang Anda inginkan.
Kita harus memiliki hak untuk memilih untuk tidak menggunakan perangkat lunak yang buruk seperti resolvconf.
Omong-omong, kolom pencarian di /etc/resolv.conf tidak berguna.
sumber
Menggunakan
resolvconf
dan menonaktifkansystemd-resolved.service
(ini berfungsi untuk saya ubuntu 19.04):Pasang
resolvconf
Menambahkan server nama
Buka
/etc/resolvconf/resolv.conf.d/base
dengan editor teks Anda, saya gunakanvim
.lalu, tambahkan server nama di dalam file yang dibuka, mis .:
Memperbarui
resolv.conf
Nonaktifkan
systemd-resolved.service
dan mulai ulang.nameserver 127.0.0.53
tidak ditulis untuk/etc/resolv.conf
.Selesai!
Sumber
sumber
Saya menemukan ini perbaikan paling sederhana. Jika Anda memiliki
resolv.conf
danresolvconf
file, mereka akan saling menginjak. Anda perlu menghapusresolv.conf
file yang mendapatkan dan menimpa setiap kali Anda melakukan reboot.Letakkan bagian
nameserver 1.1.1.1 1.0.0.1
bawah file resolvconf lalu jalankanUntuk menyingkirkan file tersebut. Kemudian lakukan restart dan semuanya akan berfungsi.
sumber
Solusi Mi pada 12.04:
Saya perhatikan bahwa jika Anda menambahkan dns-nameserver di antarmuka yang tidak mengambil server resolusi nama
halaman manual resolvconf
Untuk membuat resolv.conf tidak berubah ketika kami mengedit secara manual lakukan ini di terminal:
setelah:
kemudian secara manual mengedit
/run/resolvconf/resolv.conf
menambahkan maksimal dua server DNS.Kemudian mulai kembali layanan:
sumber
Taruh saja
perintah pada
/etc/network/interfaces
konfigurasi Anda . kemudian restart jaringan Anda.itu harus bekerja.
sumber
Konfigurasi itu dinyatakan dalam
/etc/default/bind9
tidak = tidak menerapkan ketentuan dalam
init.d
bind9
ya , atau nilai lainnya = ganti
resolv.conf
Masalah ini bertambah ketika Anda menginstal
bind9
dan tidak peduli memeriksa semua conf.sumber