3

我已经设置了 consul ( http://consul.io/ ) 和 dnsmasq,这样我就可以拥有自己的内部 dns 解析。我已经用 dig 测试了 consul 支持反向 dns 查找:

$ dig @127.0.0.1 -p 8600 +noall +answer -x  11.0.16.69
69.16.0.11.in-addr.arpa. 0      IN      PTR     ip-11-0-16-69.node.dc1.consul.

但是通过 dnsmasq 反向 dnslookups 失败。如何配置 dnsmasq 将反向查找条目转发给领事?

我目前正在使用默认配置运行领事。每个节点都有一个领事代理,如下所示:

consul agent -data-dir=/tmp/consul -bind <ip> -node <short hostname>

除了将 dns 请求转发到端口 8600 的 consul 的单个设置外,dnsmasq 以默认配置在每个节点上运行。有一个文件/etc/dnsmasq.d/10-consul用于执行此操作:

server=/consul/127.0.0.1#8600

/etc/resolve.conf最后,我添加了一个指向 localhost的条目,因此使用了 dnsmasq:

search us-gov-west-1.compute.internal
nameserver 127.0.0.1
nameserver 11.0.0.2

我在 AWS 上,我仍然可以利用他们在他们的环境中提供的 dns 服务以及我自己的内部 dns 方案,这一点至关重要。

4

1 回答 1

3

添加行:

server=/16.0.11.in-addr.arpa/127.0.0.1#8600

到一个文件/etc/dnsmasq.d/some_name

16.0.11 代表 cidr 中的任何 ip11.0.16/24

因此,该范围内的 IP 将被转发到第二部分(在端口 8600 上运行的领事代理 dns)。

于 2015-09-29T20:42:48.610 回答