题 为什么通配符不起作用?


我的绑定配置

carrie     IN A     192.253.253.4
*.carrie   IN A     192.253.253.6
*.test.carrie IN A  192.253.253.7

执行

nslookup  carrie 
Address: 192.253.253.4

nslookup a.test.carrie
Address: 192.253.253.7

但是当我执行时 nslookup test.carrie

*** Can't find test.carrie: No answer

7
2018-06-26 08:14




名称服务器日志中有什么用处吗? - Flup


答案:


通配符工作正常,这就是原因 a.test.carrie 解析。你的问题是这样的 test.carrie 不解决。

原因很简单,你没有记录 test.carrie

*.test.carrie 匹配的直接子域 test.carrie,但不匹配 test.carrie 本身,也不是子域的任何子域 test.carrie

添加另一条没有通配符的记录。


10
2018-06-26 08:23



为什么test.carrie dosen`匹配wildchard * .carrie - leo
@leo我很确定这是因为 *.test.carrie 部分定义 test.carrie。是否 test2.carrie 解决?如果是这样,请尝试添加 *.test2.carrie 看看它是否破裂请记住留出时间让您的DNS缓存过期以进行准确测试。 - Dan
nslookup test2.carrie地址:192.253.253.6后添加* .test2.carrie IN A 192.253.253.11执行nslookup test2.carrie ***找不到test2.carrie:没有答案 - leo
@leo正如我想的那样,有你的答案。添加通配符子域后,BIND将不再将该子域与通配符匹配。这几乎可以肯定是预期的行为 - Dan
@Dan你在评论中的措辞有点偏,但你是对的。通配符匹配 下面 点的范围。 - Andrew B