Ben Mills Asked: 2009-07-24 06:05:47 +0800 CST2009-07-24 06:05:47 +0800 CST 2009-07-24 06:05:47 +0800 CST 通配符 CNAME DNS 记录是否有效? 772 我知道拥有作为通配符的 DNS A 记录是有效的(例如 *.mysite.com)。是否有可能/有效/建议使用通配符 CNAME 记录? domain-name-system cname-record wildcard 8 个回答 Voted Best Answer Adam Brand 2009-07-24T06:33:09+08:002009-07-24T06:33:09+08:00 有可能做到这一点。在4592澄清应该支持它之前,它一度悬而未决。 仅仅因为它是可能的并不意味着它受到所有 DNS 提供商的支持。例如,GoDaddy 不允许您在 CNAME 记录中设置通配符。 至于是否建议这样做,这取决于您的使用情况。当您指向一个您无法控制 DNS 的“外部”域名时,通常使用 CNAMES 是为了方便。 例如,假设您设置了一个 CMS 系统,允许您将 *.mycms.com 作为站点名称(它使用主机标头)。您希望客户能够轻松设置 *.cms.customer.com,而不必担心您可能会在某个时候更改您的 IP 地址。在这种情况下,您可以建议他们为 www.mycms.com 设置一个名为 *.cms.customer.com 的通配符 CNAME。 因为并非所有提供商(例如 GoDaddy)都支持通配符 CNAME,所以我不建议在您向各种客户(您不知道他们的提供商的能力)建议它的情况下使用它。 Ztyx 2010-09-18T02:10:44+08:002010-09-18T02:10:44+08:00 我添加了行 *.www IN CNAME my_webserver 到我的绑定配置中的区域文件,并且效果很好(即。whatever.www.domain.com并且whatever2.www.domain.com都指向my_webserver. 也可以通过添加行来添加例外 exception.www IN CNAME another_server 所以exception.www.domain.com指向another_server。 balexandre 2011-08-07T00:46:23+08:002011-08-07T00:46:23+08:00 只是补充一点,Amazon Route 53支持任何记录类型中的通配符。 因此,您可以安全地使用 Route 53 作为您的 DNS 提供商。 MattB 2009-07-24T06:20:33+08:002009-07-24T06:20:33+08:00 据我记得你可以(ish)这样做,但是 CNAME 不能被任何其他记录类型使用,例如 NS 或 MX。 不太确定你想用“通配符”实现什么,所以我必须给出一个通用的答案:) 澄清一下,CNAME aserver.domain 意味着你不能拥有 anothername.aserver.domain 有例外,但我不知道它们是什么,你也不确定你想做什么,所以我不会浪费时间。 Colt Blake 2013-02-11T13:30:23+08:002013-02-11T13:30:23+08:00 我们一直使用通配符 dns,我们没有遇到任何问题。如果将其指向一个 ipaddres,请使用: *.mysite.com Host (A) Default xxx.xxx.xxx.xxx 如果要使用别名,请执行以下操作: *.mysite.com. IN CNAME mysite.com. Jesus Mogollon 2012-03-02T13:38:08+08:002012-03-02T13:38:08+08:00 当您创建 CNAME 记录时,以点结束指向的服务器,例如:*.mydomain.com。注意最后一个点 Ben Mills 2009-07-24T11:18:05+08:002009-07-24T11:18:05+08:00 这是我的测试结果。我删除了 mysite.com 和 www.mysite.com 的 A 记录,并为 *.mysite.com 添加了 CNAME 记录。测试没有成功。mysite.com 无法解决。为了清楚起见,我将 OpenDNS 用于我的 DNS 服务器。也许它可以与其他 DNS 服务器一起正常工作,但我显然希望它能够普遍工作。基于这些结果,我将坚持使用标准 A 记录。 Martijn van Halen 2013-08-31T08:28:18+08:002013-08-31T08:28:18+08:00 它现在确实有效。 只需在 Godaddy 的区域文件编辑器或 DNS 管理器的 cname 部分中使用“*”指向 IP 或 DNS 名称。 就我而言,我将它与指向 Microsoft Azure 云服务的 DNS 名称一起使用,并且效果很好。这适用于 bla.domain.ext,但也适用于 bla.bla.domain.ext。对于其他提供商可能会有所不同。
有可能做到这一点。在4592澄清应该支持它之前,它一度悬而未决。
仅仅因为它是可能的并不意味着它受到所有 DNS 提供商的支持。例如,GoDaddy 不允许您在 CNAME 记录中设置通配符。
至于是否建议这样做,这取决于您的使用情况。当您指向一个您无法控制 DNS 的“外部”域名时,通常使用 CNAMES 是为了方便。
例如,假设您设置了一个 CMS 系统,允许您将 *.mycms.com 作为站点名称(它使用主机标头)。您希望客户能够轻松设置 *.cms.customer.com,而不必担心您可能会在某个时候更改您的 IP 地址。在这种情况下,您可以建议他们为 www.mycms.com 设置一个名为 *.cms.customer.com 的通配符 CNAME。
因为并非所有提供商(例如 GoDaddy)都支持通配符 CNAME,所以我不建议在您向各种客户(您不知道他们的提供商的能力)建议它的情况下使用它。
我添加了行
到我的绑定配置中的区域文件,并且效果很好(即。
whatever.www.domain.com
并且whatever2.www.domain.com
都指向my_webserver
.也可以通过添加行来添加例外
所以
exception.www.domain.com
指向another_server
。只是补充一点,Amazon Route 53支持任何记录类型中的通配符。
因此,您可以安全地使用 Route 53 作为您的 DNS 提供商。
据我记得你可以(ish)这样做,但是 CNAME 不能被任何其他记录类型使用,例如 NS 或 MX。
不太确定你想用“通配符”实现什么,所以我必须给出一个通用的答案:)
澄清一下,CNAME aserver.domain 意味着你不能拥有 anothername.aserver.domain
有例外,但我不知道它们是什么,你也不确定你想做什么,所以我不会浪费时间。
我们一直使用通配符 dns,我们没有遇到任何问题。如果将其指向一个 ipaddres,请使用:
如果要使用别名,请执行以下操作:
当您创建 CNAME 记录时,以点结束指向的服务器,例如:*.mydomain.com。注意最后一个点
这是我的测试结果。我删除了 mysite.com 和 www.mysite.com 的 A 记录,并为 *.mysite.com 添加了 CNAME 记录。测试没有成功。mysite.com 无法解决。为了清楚起见,我将 OpenDNS 用于我的 DNS 服务器。也许它可以与其他 DNS 服务器一起正常工作,但我显然希望它能够普遍工作。基于这些结果,我将坚持使用标准 A 记录。
它现在确实有效。
只需在 Godaddy 的区域文件编辑器或 DNS 管理器的 cname 部分中使用“*”指向 IP 或 DNS 名称。
就我而言,我将它与指向 Microsoft Azure 云服务的 DNS 名称一起使用,并且效果很好。这适用于 bla.domain.ext,但也适用于 bla.bla.domain.ext。对于其他提供商可能会有所不同。