注 - 私のタイトルはその意味だと思います...
私のサーバーでdnsmasqを使用し、クライアントにDNS(DHCP経由)を設定しています。
192.168.2.1 (local server)
ISP DNS 1
ISP DNS 2
これは少なくとも動作します - 私のUbuntuクライアントでsudo nmcli dev list | grep DNS
提供されています
IP4.DNS[1]: 192.168.2.1 (local)
IP4.DNS[2]: 122.56.237.1 (ISP 1)
IP4.DNS[3]: 210.55.111.1 (ISP 2)
ただし、実行すると、ping mail.mydomain.org
ローカルネットワークではなく外部インターネットアドレスが返されます。
nslookup
Ubuntuのネットワーク管理者が動作していることを示し(nmcli
上記と一致)、ドメイン内の外部IPが信頼できないことを示します。に変更すると、server 192.168.2.1
検索時にローカルIPのみが提供されます。
私の(クライアントの)解決。confは最終的に
nameserver 172.20.1.153
nameserver 172.20.1.6
nameserver 127.0.1.1
後輩は一番下ですか?これはnslookupが使用しているようです...
では、どのようにこのようなことが起こりましたか?問題を解決するにはどうすればよいですか? (もちろんセカンダリDNSを維持したい)私はローカルDNSサーバーを試しましたが、設定を変更してもdnsmasqは何も渡すことができないようです(文書も役に立ちません。「転送専用」である必要があるように見えるため)基本的に)。
分析はUbuntuで行われましたが、Macでも同じ状況が発生します。
答え1
DNS リゾルバのリストやNS
レコードセットは本質的に順序付けされていないため、「デフォルト」はありません。お客様は、ご希望の順番でご希望の内容を自由にお問い合わせいただけます。特にパーサー、クライアントの場合可能デフォルトでは、サーバーはクライアントに表示される順序で使用されますが、わかるようにそうでない可能性があります。
答え2
私の考えの最も簡単な方法は、ローカルパーサーに再帰照会を実行させることです。 ISPリゾルバのIPでローカルリゾルバを設定し、ローカルリゾルバだけですべてのクライアントを設定できます。むしろ、独自の情報で応答するため、LAN上のサーバーを通過するのにかかる時間は無視できます。