プライマリサーバーがドメインのIPを見つけることができない場合は、2番目のDNSサーバーを使用するようにLinuxコンピュータをどのように構成しますか?
両方を追加しようとしましたが、最初のネームサーバーが利用できない場合は、/etc/resolv.conf
2番目のネームサーバーのみを試してください。nameserver
最初のネームサーバーを使用できますがドメインを確認できない場合は、2番目のネームサーバーを試してみたいと思います。
どちらのネームサーバーも制御できないため、あるネームサーバーが別のネームサーバーに再帰されるように構成することはできません。両方のソリューションを繰り返すために独自のDNSサーバーを実行していますか?
答え1
Linux DNSリゾルバは、複数の個々のDNS名前空間の概念をうまく処理できません。特定のDNSサーバーにクエリを送信して信頼できるサーバーを返す場合は、基本的にNXDOMAIN
「この名前が存在しないという絶対的な真実を言っています」と言うことであり、検証者は検索する必要がないことを「知っています」。さらに進む。私はresolv.conf
この動作を変更するオプションをここまたは他の場所で設定できるかどうかわかりません。
これを行う必要があるたびに私が見つけた唯一のオプションは、独自のDNSサーバーを実行して「分割DNS」設定を提供し、DNSサーバーのセットに照会して特定の名前を解決するように構成することでした。 、他の名前は別のコレクションを照会することによって解決されます。コメントに提案されている代替ソリューションを使用するdnsmasq
ことも可能です。
答え2
常に利用できないローカルDNSサーバー(例:で作成libvirtd
)に関連するユースケースについては、netconfig
以下で定義できますNETCONFIG_DNS_STATIC_SERVERS
。
DNSマージ順序は以下に定義されていますNETCONFIG_DNS_POLICY
。最初の項目は、他のすべての項目(* - ファイルで定義されているすべてのインターフェースをSTATIC
表す)の前にマージされます。ifcfg-*ifname*
NetworkManager
潜在的に応答しないサーバーを照会してDNSが輻輳しないようにするには、最小タイムアウト値を設定して順番に照会します。rotate timeout:1
TL;DR 最後の内容は次のとおりです/etc/sysconfig/network/config
。
NETCONFIG_DNS_POLICY="STATIC * NetworkManager"
NETCONFIG_DNS_STATIC_SERVERS="192.168.100.1"
NETCONFIG_DNS_RESOLVER_OPTIONS="rotate timeout:1"
そして/etc/resolv.confの結果項目は次のようになります。
options options rotate timeout:1
search lan
nameserver 192.168.100.1
nameserver 192.168.1.1
192.168.1.1 は DHCP 経由で NetworkManager に提供されます。 192.168.100.1 は静的に定義されたサーバーであり、常に使用できるわけではありません (たとえば、libvirtd が終了した場合など)。
dns-priority
NetworkManagerがすべてのDNSレコードを提供している場合は、各プロファイルに静的に定義されたDNSエントリを設定することもできます。 DHCPのプライマリDNSサーバーの前に静的に定義されたDNSサーバーを設定することはできません。 DHCP に関連する構成ファイル内の他のすべての DNS サーバーはセカンダリ サーバーです。