Semua contoh yang saya lihat tentang konfigurasi ( /etc/network/interfaces
) menunjukkan bahwa Anda mengkonfigurasi antarmuka dan kemudian di bawahnya memberi dns-*
garis-garis seperti:
auto eth0
iface eth0 inet static
...
dns-nameservers 127.0.0.2
dns-search example.com my.example.com
Sekarang saya sadar bahwa protokol DNS tidak tergantung pada mekanisme transportasi. Oleh karena itu seharusnya tidak salah menambahkan alamat IPv6 di dns-nameservers
telepon.
Namun, karena saya juga mengkonfigurasi antarmuka untuk IPv6, masuk akal untuk menambahkan dns-nameservers
baris di sana:
iface eth0 inet6 static
...
dns-nameservers ::2
dns-search example.com my.example.com
... atau melakukannya? Karena ketika resolvconf
menciptakan /etc/resolv.conf
itu hanya mengabaikan semua server IPv6 DNS. Tampaknya juga mengabaikan dns-search
dan dns-domain
. Satu-satunya baris yang tampaknya dihormati adalah dns-nameservers
garis dari konfigurasi IPv4 untuk eth0
.
Apa metode konfigurasi server DNS yang benar?
Bukti mendalam lebih lanjut mengapa itu harus menjadi bagian dari setiap iface
bait masing-masing . Kutipan dari man 8 resolvconf
:
The
ifup(8)
program dapat digunakan untuk antarmuka jaringan mengkonfigurasi sesuai dengan pengaturan di/etc/network/interfaces(5)
. Untuk membuatifup
informasi server nama pushresolvconf
ketika mengkonfigurasi antarmuka, tambahkandns-
baris keiface
bait yang relevan di/etc/network/interfaces
. Untuk menambahkan alamat server nama, tambahkan baris yang dimulai dengandns-nameservers
.
sumber
Jawaban:
Adalah benar untuk menempatkan opsi dns- * di dalam
iface eth0 inet static
bait atauiface eth0 inet6 static
bait. Opsi menjadi aktif ketika definisi antarmuka logis yang menjadi miliknya menjadi aktif.Saya baru saja menguji ini pada mesin Ubuntu 15.04 saya sendiri yang biasanya saya konfigurasikan dengan DHCP. Saya menonaktifkan NetworkManager dan mengedit / etc / network / interfaces sehingga terlihat seperti ini:
Saya kemudian melakukannya
Hasil:
Perhatikan bahwa alamat, dns-nameserver dan opsi dns-search dari kedua bait sekarang aktif.
[Diperbarui 30 Mei 2015]
sumber
Pada RPi saya yang menjalankan Ubuntu 16.04.2 LTS, temuan saya adalah sebagai berikut:
Catatan: Saya menghapus NetworkManager dan baru saja meninggalkan resolvconf untuk melakukan tugasnya. (Ini adalah server tetap sehingga hal-hal tidak banyak mengubah jaringan bijaksana.)
JIKA saya memiliki baris dns-search dan dns-nameserver hanya pada SATU antarmuka (yang utama, kabel) tetapi tidak yang lain (wlan0) kemudian di reboot, sekitar 95% dari waktu file /etc/resolv.conf saya akan kosong.
mis. Ketika file antarmuka saya terlihat seperti ini:
LALU setelah reboot, resolv.conf saya akan terlihat seperti ini:
Namun, pada satu atau dua reboot saya perhatikan bahwa APA memiliki apa yang saya inginkan, misalnya
Solusi Ketika saya memberikan KEDUA antarmuka (kabel dan wlan0) garis dns-search dan dns-nameserver, semuanya bekerja dengan baik pada setiap reboot (sejauh ini pula)
yaitu file antarmuka berikut ini berfungsi untuk saya:
dan memberi saya resolv.conf berikut yang benar setelah setiap reboot (sejauh ini)
Saya menganggap konfigurasi duplikat ini normal, jika agak berlebihan.
Kesimpulan: Jika sebuah antarmuka (selain lo0) tidak memiliki informasi dns-search dan dns-nameserver, maka resolvconf tidak memasukkan apa pun dalam file resolv.conf Anda. (Seolah-olah ifup melakukan antarmuka wlan0 kedua dan ifup menghapus resolv.conf atau sejenisnya.)
Saya tidak yakin apakah ini bug atau tidak, saya merasa salah.
sumber
Mengedit antarmuka jaringan untuk menambah penggunaan DNS khusus Anda adalah sebuah cara ... tetapi untuk memodifikasi secara permanen resolv.conf seluruh sistem dengan custom server nama Anda, Anda perlu menginstal paket resolvconf (jika belum diinstal secara default) dan mengisi basisnya file konfigurasi dengan nilai server nama DNS khusus Anda. Semoga panduan singkat ini akan membantu Anda untuk konfigurasi lebih lanjut mengenai entri DNS resolv.conf http://www.bytelinux.com/make-permanent-changes-to-resolv-conf-file-on-ubuntu/
sumber
resolvconf
yang diinstal. Saya ingin/etc/network/interfaces
mengkonfigurasi server DNS saya masing-masing untuk IPv4 dan IPv6.Anda ingin menggunakan server DNS IPv6 di /etc/network/interfaces ... cukup masukkan entri DNS nameserver IPv6 Anda pada antarmuka jaringan tertentu seperti ini:
Untuk menambahkan dnsnamesers IPv6 permanen ke resolv.conf gunakan tautan yang sama dengan yang saya tambahkan di bawah ini dan edit file base resolvconf dengan mengisi dengan nameserver DNS IPv6 Anda sendiri:
Untuk mengkonfigurasi / etc / network / interfaces dengan IPv6 gunakan panduan ini http://www.bytelinux.com/configure-permanent-static-ip-address-alias-interfaces-debian-based-systems/ dan ganti IPv4 dengan IPv6 sebagai sebagai berikut: auto eth0
sumber
/etc/resolv.conf
. Jika ini entah bagaimana bekerja untuk Anda, akan berguna untuk mengetahui versi sistem yang tepat./etc/network/interfaces
baik - baik saja. Apa yang tidak terjadi adalah mereka dipindahkan ke/etc/resolv.conf
sebagaimana mestinya. Dan saya mencoba mencari tahu apa yang saya lakukan salah, ya.Mengapa Anda tidak mengimplementasikan server nama DNS IPv6 itu secara langsung di file /etc/resolv.conf dengan mengedit file base resolvconf seperti yang disarankan dalam jawaban saya sebelumnya dengan tautan dan masih terus menggunakan file antarmuka jaringan? Anda dapat menambahkan satu set server nama DNS IPv6 di /etc/resolv.conf dan jika Anda ingin menggunakan server nama IPv6 lainnya untuk NIC tertentu, gunakan hanya di / etc / network / interfaces.
sumber
/etc/network/interfaces
seharusnya melakukan pekerjaan, saya mencoba mencari tahu apa yang saya lakukan salah.