DNS,logging通配符优先于更具体的CNAME吗?

我们设置了一个通配符来处理“example.com”的所有子域

logging:* .example.com指向10.10.10.10

我们有一个更具体的logging来处理一个特殊的子域(这工作正常):

logging:staging.example.com点数10.10.10.9

我们遇到的问题是我们正在迁移到一个新的托pipe环境,我们已经被指示使用CNAME:

CNAME:new-staging.example.com指向proxy.heroku.com

我们认为这将工作。 但是,new-staging.example.comparsing为顶级通配符10.10.10.10,并不指向proxy.heroku.com。

我错过了什么? 这不可能吗? 或者这是不好的做法? 谢谢,

答案一般是“不” – 更具体的logging应该赢,所以这应该如你所描述的/预期的那样工作。 我的猜测是你有通配符loggingcaching在某处,需要等待caching过期。

使用BIND 9.6.2-P2 / FreeBSD 8.1进行快速testing:
包含logging的区域:

 example.net. IN A 127.0.0.2 *.test.example.net. IN A 127.0.0.1 specific.test.example.net. IN CNAME example.net. 

解决如下:

 % dig specific.test.example.net ; <<>> DiG 9.6.2-P2 <<>> specific.test.example.net ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 17222 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 2 ;; QUESTION SECTION: ;specific.test.example.net. IN A ;; ANSWER SECTION: specific.test.example.net. 3600 IN CNAME example.net. example.net. 3600 IN A 127.0.0.2 ;; AUTHORITY SECTION: example.net. 3600 IN NS ns1.example.net. ;; ADDITIONAL SECTION: ns1.example.net. 3600 IN A 127.0.0.1 

(返回CNAME)

 % dig nonspecific.test.example.net ; <<>> DiG 9.6.2-P2 <<>> nonspecific.test.example.net ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26980 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2 ;; QUESTION SECTION: ;nonspecific.test.example.net. IN A ;; ANSWER SECTION: nonspecific.test.example.net. 3600 IN A 127.0.0.1 ;; AUTHORITY SECTION: example.net. 3600 IN NS ns1.example.net. ;; ADDITIONAL SECTION: ns1.example.net. 3600 IN A 127.0.0.1 

(返回通配符Alogging)

根据你对这个问题的评论:

当运行dig -t ANY new-staging.example.com时,我们得到:new-staging.example.com。 82880在CNAME代理proxy.heroku.com.example.com。 proxy.heroku.com.example.com。 86400在10.10.10.10

…你错误地configuration了DNS。 您需要将CNAME的目标设置为proxy.heroku.com. – 最后一段很重要! 没有它,你的DNS服务器假设你指的是你的example.com区域内的一个主机 – proxy.heroku.com.example.com – 并且被通配符logging捕获。

我遇到这个post,研究如何完成一个共享的Plesk Linux服务器。 在他们的例子中,他们指的是组合DNS / vhost.conf解决scheme,您必须添加到vhost.conf和更新DNS。

Quote:“它必须是子域列表中的最后一个,这是按字母顺序排列,所以从”zz“开始它的名字。http: //kb.parallels.com/2239

我的猜测是这与“正常的”DNS理论有所不同,从而更具体的logging将被返回。