50

我有一个已经映射到domain.tld. 我现在想为所有子域创建一个通配符,*.domain.tld以便它们也映射到 ip domain.tld。我该怎么做dnsmasq

4

2 回答 2

68

dnsmasq.conf文件中,添加行

address=/.domain.tld/192.168.0.1

但是使用你真正想要的 IP 作为结束位

于 2014-03-21T05:57:14.257 回答
61

虽然接受的答案可能已经解决了作者的问题,但它具有误导性,因为它表明前导点仅匹配子域,这是不正确的。

dnsmasq忽略任何前导点,因此

address=/domain.tld/192.168.0.1

相当于

address=/.domain.tld/192.168.0.1

甚至

address=/......domain.tld/192.168.0.1

截至目前(dnsmasq v2.76),不幸的是没有办法指定一些东西(server,,, addressipset

  • 仅单个域名,即没有子域的域名
  • 仅适用于域名的子域

您唯一能做的就是为域名及其所有子域指定一些内容,并为特定的子域覆盖它,例如

address=/domain.tld/192.168.0.1
address=/sub.domain.tld/10.10.0.1

这种单一域名的情况,可以用不同的选项来解决,例如host-record, srv-record,这在某些情况下可能就足够了,但肯定不是全部。例如,如果您真的只需要对单个域名使用serveror选项,它就不起作用。ipset

于 2016-05-26T00:09:42.270 回答