BIND/命名 DNS 区域文件:不使用 www 则无法访问网站

BIND/命名 DNS 区域文件:不使用 www 则无法访问网站

对于我们的小型企业网络,我们托管自己的内部 DNS(命名/绑定)服务器。但是,我们的公司网站由 GoDaddy 进行外部托管。

如果我们使用 ,我们就可以访问我们的外部网站http://www.ourcompany.com。但是如果我们尝试不使用 www http://ourcompany.com,浏览器将无法解析地址。我还注意到,在命令提示符下,我们可以成功 ping ,www.ourcompany.com但不能ourcompany.com。这些问题似乎只是我们公司网络内部的问题。

无论如何,这是我们的命名区域文件的一部分:

$ORIGIN ourcompany.com.

ourcompany.com    IN A        173.201.XXX.XXX
www               IN A        173.201.XXX.XXX
server1           IN A        192.168.0.10
server2           IN A        192.168.0.11
serverA           IN CNAME    server1.ourcompany.com.
serverB           IN CNAME    server2.ourcompany.com.

etc...

(注:173.201.XXX.XXX是我们的网站托管的 GoDaddy 地址)

那么我这里的 DNS 配置哪里错了?我需要发布我的吗named.conf

此外,有没有办法让 DNS 记录所有 DNS 请求,以便我可以查看日志并准确了解有人发出请求时正在使用哪个区域配置/区域文件?

答案1

您忘记了名称 ourcompany.com 末尾的一个点。实际上,您在此处创建了一个地址 ourcompany.com.ourcompany.com,并带有 ORIGIN 标记

答案2

尝试在以下行中在 ourcompany.com 的末尾添加一个点:

ourcompany.com    IN A        173.201.XXX.XXX

即:

ourcompany.com.    IN A        173.201.XXX.XXX

或者改变

ourcompany.com    IN A        173.201.XXX.XXX

          IN A        173.201.XXX.XXX

我认为,使用您当前的配置,ourcompany.com.ourcompany.com 就可以工作。

原因是您在 A 和 CNAME 记录中指定的名称附加了 ORIGIN 中定义的域/名称,即,它们是相对于 ORIGIN 的,除非您将它们设为完全限定的域名。

在 ourcompany.com 末尾添加 . 使其完全合格。

相关内容