【问题标题】:How to configure wildcard subdomains for authoritative (auth) dnsmasq dns server?如何为权威(auth)dnsmasq dns 服务器配置通配符子域?
【发布时间】:2017-04-24 08:51:05
【问题描述】:

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

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

我试过了:

  1. host-record=*.domain.tld,1.2.3.4
  2. host-record=.domain.tld,1.2.3.4
  3. host-record=domain.tld,1.2.3.4
  4. address=/domain.tld/1.2.3.4

它们都没有返回 www.domain.tld 的预期答案。

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

【问题讨论】:

    标签: dnsmasq


    【解决方案1】:

    在即将发布的 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 包含最新添加的通配符代码。

    【讨论】:

    • @CMCDragonkai 根据您的要求,附加了 dnsmasq 2.77 版的 CNAME 配置示例。
    • 这是说domain.tld 的任何子域映射到domain.tld?也可以像domain.tld映射到otherdomain.tld一样使用?
    • @CMCDragonkai 是的,该示例是说将 domain.tld 的任何子域映射到 domain.tld,并且 yes 将 catch-all *.domain.tld 映射到 host.otherdomain.tld 是也是可能的。至少对于在同一个 dnsmasq.conf 中配置host.otherdomain.tld 的情况(尚未测试第三方身份验证服务otherdomain.tld
    • 但是这个 like addr 设置不允许通配符出现在中间吗?我正在寻找类似localhost.* 的东西来映射到localhost127.0.0.1
    【解决方案2】:

    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 响应的唯一方法。

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

    【讨论】:

      猜你喜欢
      • 2013-07-05
      • 2014-04-14
      • 1970-01-01
      • 1970-01-01
      • 2011-05-03
      • 2013-01-10
      • 2011-07-30
      • 1970-01-01
      • 2016-11-09
      相关资源
      最近更新 更多