Saya meng-upgrade ke Ubuntu 17.04 dan tampaknya sekarang memiliki mekanisme resolver DNS baru yang pertama kali diperkenalkan di Ubuntu 16.10.
Saya sekarang mendapatkan kegagalan pencarian DNS 50% dari waktu yang ada. Setiap panggilan lain ke nslookup gagal, dengan separuh panggilan menyelesaikan dengan baik dan separuhnya lagi memberikan ini:
watch -n 1 nslookup google.com
Server: 127.0.0.53
Address: 127.0.0.53#53
** server can't find google.com: SERVFAIL
Dari apa yang saya pahami, alamat IP server DNS itu sekarang digunakan untuk mewakili systemd-resolved, yang melakukan semacam meta lookup untuk menghindari kueri DNS yang lebih lambat (atau semacamnya...). Saya melihat perilaku yang sama persis pada dua mesin yang telah saya upgrade ke 17.04 dalam seminggu terakhir.
Adakah yang tahu apa masalahnya di sini, dan cara yang benar untuk mengatasinya?
Semuanya berfungsi dengan baik sebelum upgrade (dari 16.04 atau 16.10, saya tidak ingat yang mana, maaf). Saya PIKIR 17.04 adalah rilis LTS, tetapi sekarang saya melihat bahwa saya telah melewatkan kesempatan dan itu tidak akan dianggap stabil sampai bulan April. Jadi... di sinilah saya.
Juga sebagai catatan... browser tampaknya tidak menunjukkan masalah, tetapi nslookup, ping, git, dll. melakukannya.
Ubuntu 17.04 tidak dapat menyelesaikan server DNS dengan dukungan DNSSEC pada 2017-04-18. Nonaktifkan DNSSEC dengan daemon ini:
sudo mkdir -p /etc/systemd/resolved.conf.d
printf "[Resolve]\nDNSSEC=no\n" | sudo tee /etc/systemd/resolved.conf.d/no-dnssec.conf
Secara opsional, konfigurasikan ulang resolvconf jika Anda mengacaukannya (katakan ya untuk "prepare /etc/resolve.conf for dynamic updates?"):
sudo dpkg-reconfigure resolvconf
Mulai ulang systemd-resolve:
sudo systemctl restart systemd-resolved
DNS Anda seharusnya mulai bekerja. Anda dapat memeriksanya dengan mencoba systemd-resolve www.google.com
dan melihat responnya.
Saya sudah bolak-balik antara manajemen systemd-resolved dan manual /etc/resolv.conf dan belum menemukan mekanisme systemd DNS resolver yang stabil.
Tampaknya ada setidaknya satu libnss bug di Ubuntu 16.10 dan tampaknya masih di 17.04. Ada banyak orang dengan masalah DNS sejak Ubuntu 16.10 dihidupkan systemd-resolved, di sini adalah salah satu analisis dan di sini adalah solusi orang lain. Tak satu pun dari mereka bekerja untuk saya sampai saya secara manual menimpa /etc/resolv.conf dengan server DNS google's.
nameserver 8.8.8.8 << or another if you don't trust google
nameserver 8.8.4.4
Ini adalah solusi yang sangat valid, jika Anda tidak memerlukan konfigurasi DNS dinamis. Pastikan Anda menghentikan dan menonaktifkan systemd-resolved:
sudo systemctl disable systemd-resolved.service
sudo service systemd-resolved stop
Ubuntu 17.04 dan distro lainnya merangkul systemd, yang mencakup systemd-resolved, yang membuat pengguna harus menghadapi resolusi DNS yang agak berat.
Saya tidak berpikir bahwa ini adalah perubahan yang BURUK, hanya saja BANYAK perubahan. Saya akan mencoba memperbarui dan memperluas jawaban ini saat saya belajar lebih banyak.