Modifica della durata del failover di Linux per eseguire il backup del server DNS elencato in resolv.conf


15

Attualmente sto usando la semplice configurazione Linux vanilla per resolv.conf... qualcosa del tipo:

nameserver 123.123.123.123
nameserver 8.8.8.8

Quando 123.123.123.123 diminuisce, le query DNS diventano impossibili e lente, presumo che Linux riprovi il primo ogni volta. C'è un modo per rendere Linux più intelligente su questo? Controlli sanitari o qualcosa del genere? O fraintendo come resolv.confdovrebbe funzionare?

Risposte:


18

Oltre alla straordinaria risposta di ewwhite, qualche addendum.

Puoi aggiungerlo in /etc/resolv.conf

options timeout:1 attempts:1 rotate

I valori predefiniti sono tempo: 5 tentativi: 2

Quello che succede è che la libreria del resolver tenterà di usare i nameserver elencati /etc/resolv.confdall'alto verso il basso se non è presente alcuna opzione di rotazione. Se è presente la rotazione, esegue una selezione round-robin. Se il resolver va in fondo all'elenco e il server non risponde entro X secondi (considerando che X è il parametro di timeout), ripeterà nuovamente l'intero processo di selezione round robin per Y-1 volte (dove Y è il valore dei tentativi).

Tuttavia un po 'di cautela sarebbe quella di evitare di scavare e amici per testare queste opzioni resolv.conf. Poiché evitano la libreria del resolver e chiedono direttamente ai nameserver. getent hosts è il comando migliore da usare. Nota che tutto ciò che usa il risolutore glibc dovrà obbedire al /etc/resolv.conffile.


12

Questo è descritto tramite man resolv.conf.

Prova una delle opzioni di timeout per ridurre il valore predefinito da 5 secondi a forse 1 secondo ...

options timeout:1
nameserver 123.123.123.123
nameserver 8.8.8.8

Ma in realtà, DNS ha così tante resilienze disponibili, è possibile vivere senza timeout di risoluzione inferiore. È possibile scegliere un DNS pubblico migliore o eseguire il proprio resolver interno?

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.