如何为权威(auth)dnsmasq dns服务器配置通配符子域?

时间:2016-12-08 23:49:44

标签: dnsmasq

我编译了'1' v2.76,包括支持运行其权威的dns服务器(在Makefile中删除了NOAUTH)。

Wildcard subdomains with dnsmasq可用于服务器的缓存部分。

我试过了:

  1. dnsmasq
  2. host-record=*.domain.tld,1.2.3.4
  3. host-record=.domain.tld,1.2.3.4
  4. host-record=domain.tld,1.2.3.4
  5. 他们都没有返回www.domain.tld的预期答案。

    如何为权威方配置通配符A记录

2 个答案:

答案 0 :(得分:2)

在要发布的dnsmasq 2.77版本中,CNAME记录会有一个通配符选项。

可以像这些示例一样进行配置:

cname=*.domain.tld,domain.tld
cname=*.otherdomain.tld,host.even-another-domain.tld

commit b637d7815da89b5fb04c27b1d9a361fe5b2622a0星期二,2016年12月13日18:44:11 +0200,支持CNAME通配符。 Commit 2.77test4包含通配符代码的最新内容。

答案 1 :(得分:0)

正如dnsmasq man page中所述,只有一些选项用于填充权威区域的数据:

  

当dnsmasq配置为充当权威服务器时,以下数据用于填充权威区域。

     

--mx-host--srv-host--dns-rr--txt-record--naptr-record,只要记录名称位于权威域中。

     

--cname只要记录名称在权威域中。如果CNAME的目标不合格,则使用权威区域名称进行限定。

     

来自/ etc / hosts(以及--addn-hosts)和--host-record以及--interface-name的IPv4和IPv6地址,前提是该地址属于--auth-zone中指定的子网之一。

     

DHCP租约的地址,前提是该地址属于--auth-zone中指定的子网之一。 (如果使用构造的DHCP范围,这取决于动态分配给接口的地址,则应使用通过接口的动态地址定义子网的--auth-zone形式来确保满足此条件。)

     

在默认模式下,DHCP租约具有非限定名称,并且可能是使用--domain构造的限定名称,因此权威区域中的名称由非限定名称和区域域构成。这可能与--domain指定的相同或不同。如果设置了--dhcp-fqdn,则使用与DHCP租约关联的完全限定名称,并且必须与区域的域匹配。

特别是host-record,主机文件条目和DHCP租约可以生成A / AAAA记录,而--address选项会被考虑在内。不幸的是,--address选项是为域及其所有子域指定A / AAAA响应的唯一方法。

dnsmasq没有其他DNS服务器(如bind)所知的通配符记录功能,如my answer to the question you linked中所述。