Google Cloud DNS中的CNAME

时间:2016-02-07 20:54:02

标签: dns cname google-cloud-dns

我一直在尝试将public class form_main { public static void main(String[] args) { form form_display= new form(); form_display.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); form_display.pack(); form_display.setSize(500,280); form_display.setVisible(true); } } 别名添加到www.mydomain.net。我已经拥有了MX记录,并且Google自动添加了NS和SOA记录。

我收到cnameResourceRecordSetConflict错误:

  

错误代码“cnameResourceRecordSetConflict”:资源记录集   'entity.change.additions [0]'因DNS名称无效   'mydomain.net。'可能有一个CNAME资源记录集或   其他类型的资源记录集,但不是两者。

我理解错误给我的建议,但我怎么能有其他记录呢?我的域名中都需要MX和CNAME。

2 个答案:

答案 0 :(得分:3)

您遇到的问题是rules of DNS的问题,该问题禁止存在另一条记录的CNAME记录。

  

如果节点上存在CNAME RR,则不应该有其他数据   当下;这可以确保规范名称及其别名的数据   不可能是不同的。此规则还可确保缓存的CNAME可以   使用时不使用权威服务器检查其他RR类型。

您正在尝试为@记录创建CNAME。 @记录是原点,例如example.com。原点至少有两条记录,SOA(权限开始 - 基本上是关于域的信息)记录,以及NS(名称服务器)

因此,您无法为Origin创建CNAME记录。

因此,您只能为原点创建A记录(为了完成标准A记录查询 - 当然您仍然可以创建MX等)。但是,如果您需要切换到其中一个的原始CNAME记录,则有一些DNS提供程序具有特殊类型的记录和ANAME。

答案 1 :(得分:1)

我目前在配置 GCP Cloud DNS 域时遇到了同样的问题。

这个错误很笼统,不是很清楚。但是,我在 kubernetes-sigs/external-dns 的 GitHub 上发现了一个问题,标题为“Google-CloudDNS:启用 txt 注册表时无法写入 CNAME 记录。”有点清楚可能导致问题的其他记录。

Google 的 DNS error message documentation 提到 SOANS 会与 CNAME 冲突:

<块引用>

cnameResourceRecordSetConflict

资源记录集 entity.change.additions[XX] 无效,因为 DNS 名称 example.com 可能具有一个 CNAME 资源记录集或其他类型的资源记录集,但不能同时具有。
< br/> 当您为同一个 DNS 名称创建两种类型的资源记录集(例如 A 记录和 CNAME 记录)时,会发生此错误。此错误的常见原因是尝试在区域顶点创建 CNAME 记录。这是不可能的,因为它会与所需的同名 SOA 和 NS 记录发生冲突。

推荐操作:选择其中一个。

但是,这感觉不太对,因为创建 Cloud DNS 服务时会自动添加 SOANS 记录。

回顾我的 Cloud DNS,我发现我添加了两条 TXT 记录以验证 Google 的属性,一旦我删除了 TXT 记录,我就能够添加 {{1} } 记录。

我希望它能帮助未来的开发者。