現在、私はresolv.conf
...の単純なバニラLinux構成を使用しています...
nameserver 123.123.123.123
nameserver 8.8.8.8
123.123.123.123がダウンすると、DNSクエリが遅くなり、不可能になるので、Linuxは毎回最初のクエリを再試行すると想定しています。これについてLinuxを賢くする方法はありますか?健康診断か何か?または、resolv.conf
の動作を誤解していますか?
Ewwhiteの素晴らしい応答に加えて、いくつかの補遺。
/etc/resolv.conf
に追加できます
options timeout:1 attempts:1 rotate
デフォルトは時間:5回の試行:2回です。
何が起こるかというと、回転オプションが存在しない場合、リゾルバライブラリは/etc/resolv.conf
にリストされているネームサーバーを上から下に使用しようとします。回転が存在する場合、ラウンドロビン選択を行います。リゾルバーがリストの最後に移動し、サーバーがX秒以内に応答しない場合(Xはタイムアウトパラメーターと見なされます)、ラウンドロビン選択のプロセス全体がY-1回繰り返されます(Yは試行の値)。
ただし、これらのresolv.confオプションをテストするためにDigやその仲間を避けることは少し注意する必要があります。彼らはリゾルバーライブラリを避け、直接ネームサーバーに尋ねます。 getent hostsを使用することをお勧めします。 glibcリゾルバーを使用するものはすべて、/etc/resolv.conf
ファイルに従う必要があることに注意してください。
これはman resolv.conf
で記述されます。
タイムアウトオプションのいずれかを試して、デフォルトを5秒からおそらく1秒に下げてください...
options timeout:1
nameserver 123.123.123.123
nameserver 8.8.8.8
しかし、実際には、DNSには非常に多くの回復力があり、より低い解像度のタイムアウトなしで生きることができます。より優れたパブリックDNSを選択するか、独自の内部リゾルバーを実行することは可能ですか?