这似乎很简单,但我无法弄清楚。 我使用的是xname.org,因为它是免费的,我拥有一些域名,分布在几个不同的注册商。
我期望的设置非常简单:一个logging,指示裸露的域名到我的服务器,另外还有一个通配符CNAMElogging,指向所有子域到同一台服务器。
因此,如果用户转到domain.com,它将指向285.24.435.75,如果他们去www.domain,blah.domain.com,或任何其他子域,他们将被发送到285.24.435.75。
我在互联网上阅读的有关设置Alogging的所有示例都将Alogging设置为诸如www的子域。 WWW已被弃用,所以我想注意到它。 目前我的xname.org区域如下所示:
$TTL 86400 ; Default TTL domain.com. IN SOA ns0.xname.org. nbvfour.gmail.com. ( 2010052503 ; serial 10800 ; Refresh period 3600 ; Retry interval 604800 ; Expire time 10800 ; Negative caching TTL ) $ORIGIN domain.com. IN NS ns2.xname.org. IN NS ns0.xname.org. IN NS ns1.xname.org. @ IN A 65.49.73.148 * IN CNAME domain.com
'@'符号是godaddy领域界面用来表示“这个根域”的东西,但是这可能对于这个界面来说是有特色的,在这里没有意义。
在我使用“www”login之前,我可以ping通“www.domain.com”,然后返回响应,但ping根域“domain.com”返回“找不到主机”。
第一:@是一个标准的“主文件格式”的东西。 这意味着“当前区域”。
你的问题很简单。 添加一个'。' 到最后一行。 也就是说,你想要:
* IN CNAME domain.com.
尾巴'。' 在名字的末尾意味着“不要将当前的原始名称附加到这个”
如果你离开它,你会得到(在这种情况下)“domain.com.domain.com”。
尽pipe迈克尔指出了尾随的点错误,但我个人的偏好并不是 CNAMElogging指向域本身。
原因是它(无意)暴露了所有这些可能会有意想不到的后果的新条目的任何MX , NS或SOA (等)logging。
所以,我会把你最后两行写成:
@ IN A 65.49.73.148 * IN A 65.49.73.148