Consul.IO - 如何在本地网络中公共服务域进行 DNS 查找

Har*_*yen 5 windows consul

在Windows中,当我在本地网络中设置Consul服务以进行服务发现时,我使用DNS接口来进行查询服务。但是当我用这个命令查询服务时

dig -x 127.0.0.1 -p 53 consul.service.consul +short
Run Code Online (Sandbox Code Playgroud)

它什么也没返回。目前,我的本地网络 DNS 地址是10.18.200.103. 但是当我更改为 Consul 服务器时10.18.200.202,它起作用并返回正确的数据。我想知道我的本地DNS服务器如何在不将DNS更改为Consul服务器的情况下找到Consul服务的域

Eug*_*ene 2

您可以在 consul 配置中将本地 DNS 设置为递归服务器,然后将 consul 设置为主要 DNS 服务器,将普通 DNS 设置为辅助 DNS 服务器。这将首先通过领事传递请求。

如果 consul 启动,它将解析 *.consul 域并将其他所有内容传递给递归器。如果 consul 关闭,操作系统会将请求传递给辅助 DNS,并且最终仍会得到解析。

"recursors": [ "10.18.200.103" ],
Run Code Online (Sandbox Code Playgroud)

https://www.consul.io/docs/agent/dns.html