web-dev-qa-db-ja.com

「デュアル」DNSの操作

Consulをサービス検出として使用しており、現在使用しているDNSサーバーを使用してDNSサーバーとして追加したいので、Dig ser.service.consulを実行すると、領事から結果が得られます。

/etc/resolv.confに追加しようとしましたが、最初のサーバーが利用可能な場合にのみ最初のサーバーに移動し、最初のサーバーで見つからなかった場合はセカンダリDNSに移動しません。

一方にアドレスが見つからなかった場合に「デュアル」DNSサーバーを使用する方法はありますか?

4
Shovals

関連する構成は、領事館のドキュメントにあります。

https://learn.hashicorp.com/consul/security-networking/forwarding

たとえば、dnsmasqを使用する場合、次の行をdnsmasq.confに追加できます。

server=/consul/127.0.0.1#8600

これは基本的に、consul.ドメインとそのサブドメインへのクエリは、127.0.0.1:8600で利用可能なリゾルバーによって解決される必要があることを意味します。これは 領事の標準的な場所 です。

(それを微調整する必要がある場合は、dnsmasqの manpage -server=を検索して-S, --local, --server=行の構文を見つけることができます)。

次に、dnsmasqSudo systemctl restart dnsmasq.service)を再起動した後、ser.service.consulへのクエリは領事によって解決され、他のすべてのクエリは通常どおり解決されます。

3

「bind」、「dnsmasq」、「unbound」などのDNSキャッシングサービスを使用することをお勧めします。 https://learn.hashicorp.com/consul/security-networking/forwarding#dnsmasq-setup を参照してください

または、DNSにconsulを排他的に使用するようにシステムを構成してから、consul構成ファイルに recursors オプションを指定して、すべての非.consul要求を適切なDNSサーバーに転送することもできます。

0
spuder