È possibile che resolvconf sia configurato in modo errato. Ciò è particolarmente probabile se stai giocando con i suoi file di configurazione senza davvero capire come funzionano resolvconf e NetworkManager.
Per informazioni di base, si prega di leggere la documentazione resolvconf e il post sul blog di Stéphane Graber.
https://www.stgraber.org/2012/02/24/dns-in-ubuntu-12-04/
Prima di tutto dovresti sapere che sia Ubuntu Desktop che Ubuntu Server per impostazione predefinita hanno resolvconf installato e attivato. Resolvconf fornisce un framework per l'aggiornamento dinamico del file /etc/resolv.conf in modo ordinato e reversibile.
Secondo, dovresti sapere che Ubuntu Desktop di default ha NetworkManager installato e attivato. Per impostazione predefinita NetworkManager avvia un'istanza di dnsmasq per fungere da nameserver di inoltro locale. Questa istanza dnsmasq controllata da NetworkManager ascolta le query in 127.0.1.1. Quando NetworkManager avvia l'istanza dnsmasq indica a resolvconf di inserire l'indirizzo 127.0.1.1
in resolv.conf. Come menzionato in un'altra risposta, se si configura NetworkManager per non avviare un'istanza di nameserver di inoltro locale, non avvierà un nameserver di inoltro locale e non verrà indicato a resolvconf di inserire l'indirizzo 127.0.1.1
in resolv.conf.
Questa configurazione predefinita funziona correttamente, quindi a meno che la situazione non sia speciale, è necessario ripristinare la configurazione predefinita.
Per ripristinare la configurazione predefinita, accertarsi che
- /etc/resolvconf/resolv.conf.d/head contiene solo il testo dell'intestazione resolvconf costituito da due righe che iniziano con un
#
carattere
- /etc/resolvconf/resolv.conf.d/base è un file vuoto
- /etc/resolvconf/resolv.conf.d/tail è un file vuoto
- /etc/resolv.conf è un collegamento simbolico con contenuto
../run/resolvconf/resolv.conf
Per ottenere ciò, eseguire i seguenti comandi.
sudo su
dpkg-reconfigure resolvconf # And answer `Yes` to agree to dynamic updates
cd /etc/resolvconf/resolv.conf.d
echo '# 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' > head
rm -f base tail original
:> base
:> tail
La configurazione originale di NetworkManager deve avere
[main]
...
dns=dnsmasq
...
in /etc/NetworkManager/NetworkManager.conf. È una scelta ragionevole disabilitare il server dei nomi di inoltro locale controllato da NetworkManager commentando la dns=dnsmasq
riga.
[main]
...
#dns=dnsmasq
...
Dopo aver fatto tutto ciò, è consigliabile riavviare la macchina per cancellare i record di informazioni del nameserver non aggiornati.
sudo reboot