我将 DNS(bind9)配置为接受每个子域,使用通配符“A”记录:
*.mydomain.tld. IN A xx.xx.xx.xx
我配置了 Apache 来使用虚拟主机为一些特定的子域提供服务:
<VirtualHost *:80>
ServerName sub1.mydomain.tld
ServerAlias sub1.mydomain.tld
JkMount / sub1JK
JkMount /* sub1JK
</VirtualHost>
当我从子域上的远程计算机 ping 时在 apache 中配置我得到了回应。当我 ping 一个子域名时未在 apache 中配置,未找到主机。
我不明白为什么 apache 配置会这样影响 DNS 解析?
我将不胜感激任何能帮助我理解这一点的信息。
多谢。
答案1
您可以放心地排除 Apache 和 BIND 之间的任何关系,以及 ping 和两者之一之间的任何关系。您描述的问题根源在于其他地方。
您可以按照以下步骤进行故障排除:
- 从远程主机查询您的 DNS 服务器,查找两个不起作用的域名
dig @dns-srv-ip sub1.domain.com
:dig @dns-srv-ip sub2.domain.com
- 如果您的 BIND Wildcard 配置正在运行,它们都会返回 IP。如果没有,则问题出在 BIND 上:确保 BIND 读取您编辑的文件。
- (远程) ping 使用远程主机上配置的 DNS 解析器。检查远程主机上的 /etc/resolv.conf,并使用
dig sub1.domain.com
和dig sub2.domain.com
确保两者都已解析。这里没有 @dnsip! - 如果 sub1 和 sub2 在远程主机上不能得到相同的解析,那么这是一个传播问题,或者是一个解析器问题。