dnsmasq - 域条目的多个转发服务器?

T. *_* B. 9 domain-name-system dnsmasq

我想知道是否可以配置 dnsmasq 将“server=”条目发送到多个上游服务器?

像这样:

server=/facebook.com/1.2.3.4
server=/facebook.com/2.3.4.5
Run Code Online (Sandbox Code Playgroud)

并让它根据可用与否来选择哪一个,就像resolv.conf? 根据手册页,似乎只允许一个,但我想知道是否有办法让它以这种方式行事。

Spr*_*dzy 11

好吧,在您的示例中,您只是指出了 facebook,但我想您对可能访问的每个主机名都有相同的需求

dnsmasq 提供选项 --all-servers

--所有服务器

默认情况下,当 dnsmasq 有多个可用的上游服务器时,它只会向一台服务器发送查询。设置此标志会强制 dnsmasq 将所有查询发送到所有可用服务器。首先应答的服务器的应答将返回给原始请求者。

设置多个DNS服务器

server=OpenDNS.IP.Addr.ess

server=GoogleDNS.IP.Addr.ess

server=...
Run Code Online (Sandbox Code Playgroud)

并且会考虑最快的响应


Zor*_*che 7

当然只需添加多行。

server=/facebook.com/1.2.3.4
server=/facebook.com/2.3.4.5
Run Code Online (Sandbox Code Playgroud)

曼 dnsmasq

   -S, --server=[/[<domain>]/[domain/]] ...
          ...  More than one -S  flag  is  allowed,  with
          repeated domain or ipaddr parts as required.
Run Code Online (Sandbox Code Playgroud)

  • 是的,如果第一台服务器不可用,dnsmasq 会将请求发送到第二台服务器(除非使用 --all-servers 选项,这将强制 dnsmasq 并行使用所有服务器并获取第一个回复) (2认同)