NXDOMAINがある場合は、2番目のDNSサーバーを使用するようにnsswitchをどのように更新しますか?

NXDOMAINがある場合は、2番目のDNSサーバーを使用するようにnsswitchをどのように更新しますか?

resolv.confは次のようになります。

machine:~ # cat /etc/resolv.conf
search  foo.bar
nameserver      DNSSERVERIP1
nameserver      DNSSERVERIP2
machine:~ #

最初のDNSSERVERIP1はbarfoo.comを知りません。

ただし、2番目のDNSサーバーであるDNSSERVERIP2はこれについて知っています。とてもよく解決しました。

デフォルトでは、最初の DNS サーバーが NXDOMAIN を返す場合、2 番目の DNS サーバーは要求されません。

しかし、問題は、最初のDNSサーバーがNXDOMAINを提供したときに2番目のDNSサーバーに尋ねるように/etc/nsswitch.confを構成する方法です。

答え1

私の考えでは、あなたはこれを行うことができないと思いますnsswitch.conf。このファイルは、各カテゴリで使用されるデータソースを指定します。これは、すべてのソースがどのように機能するかを「影響」するものではありません。

[STATUS=ACTION]以前のデータソースから得られた結果に基づいて動作を変更できます。しかし、データソース(DNS)を変更したくないので、これは望むものではありません。

あなたが直接言った。 DNSSERVERIP1が答え(NXDOMAIN)を知らない場合、これはサーバーがその質問に答える権限を持っていることを意味します。したがって、答えは最終的であり(DNS仕様に関連して)、他のサーバーに問い合わせる必要はありません。繰り返しますが、これは定義によるものなので、オーバーライドすることはできません。

唯一の方法は、DNS設定が一致していることを確認することです。 DNSSERVERIP1とDNSSERVERIP2が複製されている場合はそうします。 DNSSERVERIP2に応答がある場合は、DNSSERVERIP1にも応答が必要です。

関連情報