CNAME无法parsing

我有一个域( example.com )注册了godaddy,并指向由linode主持的域名服务器。 我已经在linode( blogs.com )上安装了一个多站点的WordPress安装,并且我想把这个域指向wordpress安装的一个子域( example.com -> example.blogs.com )。

WordPress的安装的子域名工作正常 – DNS可以find它,我可以浏览到它。 在linode的DNSpipe理器中,我设置了一个CNAME来使上面引用的指针成为可能。

Whois显示为域设置了linode名称服务器,但DNS无法findexample.com的任何名称服务器。

我错过了一个步骤,还是我有一些错误的configuration?

编辑1

使用linode的名称服务器的挖掘请求的答案部分是

 ;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 44359 ;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0 

从我的主机的名称服务器挖的答案部分是

 ;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 16379 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0 

如果我指定CNAME或只接受标准A查询,则状态字段中的相同响应。

我没有关于linode名称服务器上example.com的Alogging; 我需要设置吗?

这是一个相当近期的变化 – 几个小时前,所以也许我只是不耐烦? 同时进行的名称服务器更改非常快速。 我认为CNAME条目将与此同时进行; 那个期望我错了吗?

从技术上讲,你所要求的是无效的。 CNAME 与所有其他logging冲突 ( 对于DNSSEClogging有一个特殊例外 ),因此CNAME xxxxx与该域的SOAMXNS等logging冲突。 我的猜测是,当您使用A时,域名parsing的原因,当您使用CNAME时,域名parsing失败是因为DNS服务器强制执行这些限制,无法处理您的区域文件。

而且,根据你对@ xwincftwx的问题的回应,CNAME的工作原理并不清楚。 指向Alogging的CNAME与第一个Alogging完全相同 。 CNAME完全由DNS系统内部处理,Web浏览器只能看到IP地址。 在用Alogging(比如1.2.3.4)进行的testing中,浏览器连接到1.2.3.4并询问其网站example.com 。 如果该服务器没有被configuration为为example.com网站提供服务,它通常会提供一个默认网站(在这里是blogs.com )。

如果您的域名是CNAME ,浏览器将会询问example.com的IP地址。 DNS会看到它是一个CNAME ,查找example.blogs.com并返回1.2.3.4 。 浏览器将连接到1.2.3.4并要求它为example.com就像它是Alogging时一样。

如果您希望将访问example.com用户redirect到example.blogs.com则需要设置一个基本Web服务器,该服务器可以连接到example.com ,并向浏览器发送301永久redirect到example.blogs.com

您不能在区域文件中使用CNAME作为根logging(这是根据RFC 1034禁止的,请参阅第3.6.2节)。 您需要inputAlogging,而是指向与您的CNAME规则的目标相同的IP。

dig example.com的输出是什么? 如果你知道你的域名服务器的IP,你可以强制使用你的域名服务器( dig @nameserver-ip example.com )。 如果这个工作,你的域名服务器不用于example.com。 你什么时候分配了linode名字服务器? 这些变化可能需要时间。 特别是如果您的ISP的DNS服务器caching结果…

只是看起来你的名字服务器没有运行。

你可以检查你的名字服务器是否正在运行。

ps -aux | grep命名

如果你的域名服务器没有运行..启动它,并再次检查。

如果启动后没有启动,请发布/ var / log / daemon和/ var / log / messages的命名信息

grep命名为/ var / log / messages grep,命名为/ var / log / daemon

也许这是你的区域文件的configuration错误。

如果您的域名服务器正在运行,请检查您的named.conf,如果您的域名接受所有传入的stream量。

不要求在您的区域文件中包含example.com的Alogging,但build议您使用DNS检查和whois检查。