Perché ho dovuto rimuovere resolvconf per far funzionare di nuovo dnsmasq?


8

Ieri ho effettuato l'aggiornamento a Precise e dnsmasq ha smesso di funzionare. Cioè, le query DNS a localhost in cui dnsmasq è in ascolto (127.0.0.1) sono state rifiutate.

La rimozione di resolvconf ( apt-get remove resolvconf) e il riavvio hanno risolto il problema (ho trovato quel suggerimento da qualche parte su Google). /etc/resolv.confsembrava a posto con e senza resolvconf in atto. Nessuna differenza.

  1. Perché dovrei usare resolvconf? Ci sono dei benefici? L'articolo di Wikipedia relativo a resolvconf schifo.
  2. Perché resolvconf ha interferito con dnsmasq? È un problema noto?

bla @ blubb: ~ $ [-f /usr/share/doc/resolvconf/README.gz] && echo "Found" || echo "Non trovato" Non trovato um. intelligentone.
lightxx,

Risposte:


10

La semplice risposta a (1) è: resolvconf si imposta come intermediario tra i programmi che forniscono queste informazioni (come ifup e ifdown, i client DHCP, il demone PPP e i server dei nomi locali) e i programmi che usano queste informazioni (come DNS cache e librerie resolver). A partire da Ubuntu 12.04 resolvconf fa parte dell'installazione predefinita in entrambe le varianti del server e del desktop. Non è mai necessario rimuovere resolvconf e le persone che lo rimuovono di solito non lo capiscono, generalmente perché non hanno letto resolvconf (8) e /usr/share/doc/resolvconf/README.gz.

La risposta alla seconda domanda è che resolvconf molto probabilmente non ha interferito con dnsmasq. La mia ipotesi è che stavi riscontrando un errore # 959037.

Spiegazione: In Ubuntu 12.04 ci sono due modi in cui viene eseguito dnsmasq. Esiste la versione standalone tradizionale di dnsmasq che è in ascolto su tutti gli indirizzi. E c'è il nuovo processo dnsmasq controllato da NetworkManager che ascolta solo su 127.0.0.1. Il secondo è in conflitto con il primo a meno che il primo non venga riconfigurato. Questo problema è stato risolto in Ubuntu 12.10 facendo ascoltare il processo dnsmasq controllato NM su 127.0.1.1 anziché 127.0.0.1 e forzando il processo dnsmasq autonomo ad ascoltare solo sugli indirizzi assegnati alle interfacce.


Ho letto il manapage e ancora non riesco a trovare un modo affidabile per anteporre i miei nameserver resolv.conf.
Michael Mior,

Con resolvconf installato puoi anteporre l'indirizzo di un nameserver inserendo nameserver x.x.x.x/etc/resolvconf/resolv.conf.d/head. Si informa, tuttavia, che ciò non è generalmente necessario o raccomandato. Generalmente esiste un modo più corretto per aggiungere righe "nameserver" a resolv.conf. Generalmente l'utilità che configura un'interfaccia di rete aggiunge o rimuove gli indirizzi dei nameserver disponibili tramite tale interfaccia eseguendo resolvconf -ao resolvconf -d, rispettivamente. La priorità degli indirizzi dei nameserver aggiunti in questo modo è regolata da /etc/resolvconf/interface-order.
jdthood,

In realtà, inserendo una riga del nameserver è stata headaggiunta DOPO il nameserver predefinito.
Michael Mior,

Non l'ho provato, ma sembra che echo x.x.x.x | resolvconf -a lofarebbe il trucco per aggiungere un nameserver che mi piacerebbe essere il primo per tutte le interfacce.
Michael Mior,

Resolvconf mette sempre il contenuto di headin testa (in alto, all'inizio) di resolv.conf.
jdthood,

2

L'ho appena rimosso dalla mia installazione. Stavo usando pppd manualmente per comporre la mia connessione modem 3G e resolvconf ha interferito con le mie impostazioni DNS aggiungendo automaticamente il DNS del mio provider quando volevo usare il DNS personalizzato. pppd ha opzioni per controllare questo, ma resolvconf li ha bloccati con le sue proprie impostazioni. Vorrei anche sapere la risposta a questa domanda? Sembra che questo sia un tipo di pacchetto che rende le cose più facili ma complicate?

ps Ho trovato questa segnalazione di bug: https://bugs.launchpad.net/ubuntu/+source/resolvconf/+bug/922578


grazie per il tuo contributo. l'avrei votato ma mi manca il rappresentante.
lightxx

@lightxx: votato per te;)
Tomasz Zieliński il

Invece di rimuovere resolvconf potresti aver configurato resolvconf per ignorare le informazioni del nameserver provenienti da pppd.
jdthood,

Il normale contenuto di resolv.conf è abbastanza semplice. Ogni volta che la macchina è un server o anche una postazione di lavoro non portatile, sembra ovviamente più facile rintracciare il singolo resolv.conf invece della mezza dozzina di file differenti potenzialmente utilizzati da resolvconf.
Ericx,

@jdthood - non vedo come farlo nella pagina man resolvconf.conf, sarei interessato ai dettagli dell'implementazione.
dps,

1

La semplice risposta a (1) è: resolvconf si imposta come intermediario tra i programmi che forniscono queste informazioni (come ifup e ifdown, i client DHCP, il demone PPP e i server dei nomi locali) e i programmi che usano queste informazioni (come DNS cache e librerie resolver).

Viene dalla descrizione del pacchetto. Sui desktop, funziona insieme a NetworkManager per gestire agevolmente le connessioni.

Quindi resolvconf, insieme a dnsmasq, sono usati in 12.04 per rendere più affidabile la gestione delle informazioni DNS sulla versione desktop. Quindi, in alcune situazioni, rende le cose migliori, ma l'intera situazione manca della documentazione nel posto giusto, esp. nel mondo dei server.

Nonostante un sacco di googling, non sono stato in grado di accertare cosa è raccomandato su un'installazione del server.

Per quanto riguarda (2), stai avendo il problema opposto da me. Dnsmasq funziona bene con resolvconf sulla mia macchina e aggiorna il file /etc/resolv.conf per contenere 127.0.0.1 ma ha altri problemi perché dnsmasq non ottiene i server dei nomi ISP da dhclient su eth0 (questo è un gateway) né lo fa ottenere i server dei nomi che ho inserito manualmente nella stanza eth0 in / etc / network / interfaces.

Perché usi dnsmasq? Stai anche eseguendo un gateway con 2 reti? O è solo un desktop semplice? In tal caso, resolvconf si coordina con il gestore della rete


grazie per la tua risposta. l'avrei votato, sfortunatamente hai bisogno di 15 reputazione per votare. lol
lightxx

1
le pagine man sono fantastiche quando sai cosa devi sapere. In caso contrario, possono essere sconcertanti per non dire altro. Howto, esempi e domande frequenti sono ciò di cui hai bisogno quando non hai esperienza in un'area.
Adam,

ha votato @lightxx a tuo nome :)
fkl
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.