Perché il mio file resolv.conf viene rigenerato ogni volta?

17

Il mio file /etc/resolv.conf viene rigenerato ogni volta, facendo perdere i server DNS di Google quando ricollego il mio modem 3G.

Per modificare le impostazioni DNS, ho esaminato il link .

Il mio dhclient.conf è abbastanza grande (58 linee), quindi l'ho postato su pastebin .

Tuttavia, qui è l'intero dhclient.conf senza righe di commento o righe vuote:

option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;
send host-name "<hostname>";
request subnet-mask, broadcast-address, time-offset, routers,
    domain-name, domain-name-servers, domain-search, host-name,
    netbios-name-servers, netbios-scope, interface-mtu,
    rfc3442-classless-static-routes, ntp-servers;
prepend domain-name-servers 8.8.8.8, 8.8.4.4;

Sto utilizzando wvdial invece di Network Manager.

    
posta Jakh Saidlikp 18.03.2011 - 18:03

7 risposte

6

In 12.04, resolvconf è installato per impostazione predefinita. Ecco un breve riepilogo di come apportare modifiche alla configurazione DNS per alcuni casi di utilizzo comuni:

Per una configurazione statica che utilizza ifup , utilizza dns-nameservers e dns-search voci in /etc/network/interfaces .

Per una configurazione statica che utilizza NetworkManager , seleziona Automatic (DHCP) addresses only Method e inserisci indirizzi e nomi di dominio nei campi Additional DNS servers e Additional search domains nell'Editor delle connessioni.

Per sovrascrivere la configurazione predefinita di resolvconf, usa base , head e tail in /etc/resolvconf/resolv.conf.d/ . Inserisci solo indirizzi e nomi di dominio in questi file come misura temporanea, dato che appartengono davvero altrove, come descritto sopra.

Disabilitare resolvconf non è raccomandato, ma puoi sostituire il link simbolico /etc/resolv.conf con un file normale.

Per ulteriori informazioni, consultare il post di blog di Stéphane Graber.

    
risposta data Robie Basak 24.01.2013 - 09:55
4

Se tutto ciò che vuoi fare è mantenere i server DNS di Google in resolv.conf, puoi modificare
/etc/dhcp3/dhclient.conf e aggiungere:

prepend domain-name-servers 8.8.8.8;
prepend domain-name-servers 8.8.4.4;

L'unica differenza tra ciò che hai e ciò che mostro qui è che hai entrambi i name server su una singola riga, secondo i documenti che hai menzionato.

A meno che manchi qualcosa, il tuo dhclient.conf non è un problema qui. A questo punto, presumo che il problema abbia a che fare con wvdial.

Ecco qualcosa da provare, da ubuntuforums :

gksudo gedit /etc/ppp/peers/wvdial

RIMUOVI il parametro usepeerdns e salva il file. Codice:

gksudo gedit /etc/wvdial.conf

aggiungi queste righe:

check DNS = no
auto DNS = no
    
risposta data belacqua 18.03.2011 - 21:05
4

Il modo migliore per impostare un server dei nomi tramite la CLI, senza NetworkManger, con un indirizzo statico o indipendente dalla connessione è questo:

Installa il resolvconf pacchetto.

Esegui

sudo nano /etc/resolvconf/resolv.conf.d/head

(ignora l'avviso spaventoso. /etc/resolv.conf viene generato automaticamente, quindi l'avviso è presente quindi verrà inserito in /etc/resolv.conf quando viene generato /etc/resolv.conf.) Alla fine di il file, aggiungi

 nameserver <ip_of_nameserver>

Premi Ctrl x e rispondi si per salvare il file. Per finire, rigenera /etc/resolv.conf in modo che le modifiche vengano applicate subito:

 sudo resolvconf -u
    
risposta data Azendale 08.07.2011 - 05:58
0

Puoi impostare l'opzione domain-name-servers dhclient.conf.

    
risposta data Adam Byrtek 18.03.2011 - 21:08
0

Ho risolto lo stesso problema con i seguenti comandi:

echo "nameserver 212.217.0.1" >> /etc/resolvconf/resolv.conf.d/head
ln -s /etc/resolvconf/resolv.conf.d/head /etc/resolv.conf
resolvconf -u
/etc/init.d/networking restart
    
risposta data moha 18.07.2012 - 09:36
-1

è possibile che sia installato il pacchetto resolvconf. in tal caso, ogni volta che viene visualizzata un'interfaccia, il file resolv.conf viene aggiornato. è possibile aggiungere voci statiche usando il file /etc/resolv.conf.tail, vedere la pagina man di resolv.conf per ulteriori informazioni.

    
risposta data eFloh 18.03.2011 - 18:47
-1

Ho avuto lo stesso identico problema, il server DNS fornito dal mio provider di telefonia mobile era piuttosto scadente, quindi volevo utilizzare il DNS di Google. Anche NetworkManager fa un lavoro davvero pessimo nella gestione delle connessioni a banda larga mobile, quindi wvdial è una necessità.

Come risulta che /etc/resolv.conf è un link simbolico in ubuntu 12.10 e forse anche 12.04 . Ecco cosa ho fatto sudo unlink /etc/resolv.conf dopo questo puoi creare un nuovo resolv.conf con vim o l'editor di tua scelta e aggiungere i server dei nomi di google o qualsiasi altro server dei nomi che preferisci. Salvalo e il gioco è fatto.

Se hai paura di rompere qualcosa, puoi prendere nota del link simbolico esistente facendo un ls -la /etc/resolv.conf prima di unlinking .

Spero che ti aiuti.

    
risposta data nikhil 25.01.2013 - 15:36

Leggi altre domande sui tag