Anpassen, wie lange Linux für das Failover auf den in resolv.conf aufgeführten Backup-DNS-Server benötigt

Anpassen, wie lange Linux für das Failover auf den in resolv.conf aufgeführten Backup-DNS-Server benötigt

Derzeit verwende ich die einfache Standard-Linux-Konfiguration für resolv.conf… so etwas wie:

nameserver 123.123.123.123
nameserver 8.8.8.8

Wenn 123.123.123.123 ausfällt, werden DNS-Abfragen unmöglich langsam. Ich gehe davon aus, dass Linux jedes Mal die erste wiederholt. Gibt es eine Möglichkeit, Linux dazu zu bringen, diesbezüglich intelligenter zu sein? Gesundheitschecks oder so etwas? Oder verstehe ich das falsch, wie es resolv.conffunktionieren soll?

Antwort1

Zusätzlich zu ewwhites toller Antwort noch ein Nachtrag.

Sie können dies hinzufügen in/etc/resolv.conf

options timeout:1 attempts:1 rotate

Die Standardeinstellungen sind Zeit:5 Versuche:2

Was passiert, ist, dass die Resolver-Bibliothek versucht, die /etc/resolv.confvon oben nach unten aufgelisteten Nameserver zu verwenden, wenn keine Rotationsoption vorhanden ist. Wenn Rotation vorhanden ist, führt sie eine Round-Robin-Auswahl durch. Wenn der Resolver zum Ende der Liste geht und der Server nicht innerhalb von X Sekunden antwortet (wobei X der Timeout-Parameter ist), wiederholt er den gesamten Prozess der Round-Robin-Auswahl Y-1-mal (wobei Y der Wert der Versuche ist).

Allerdings ist Vorsicht geboten, wenn Sie Dig und Co. zum Testen dieser resolv.conf-Optionen meiden. Da sie die Resolver-Bibliothek umgehen und direkt die Nameserver abfragen, ist getent hosts der bessere Befehl. Beachten Sie, dass alles, was den glibc-Resolver verwendet, die /etc/resolv.confDatei befolgen muss.

Antwort2

Dies wird über beschrieben man resolv.conf.

Bitte versuchen Sie eine der Timeout-Optionen, um den Standardwert von 5 Sekunden auf möglicherweise 1 Sekunde zu senken ...

options timeout:1
nameserver 123.123.123.123
nameserver 8.8.8.8

Aber DNS bietet tatsächlich so viele Ausfallsicherheiten, dass man ohne Timeouts bei niedrigerer Auflösung leben kann. Ist es möglich, ein besseres öffentliches DNS auszuwählen oder einen eigenen internen Resolver auszuführen?

verwandte Informationen