您好,我有一个关于管理 DNS 记录的问题。假设我有一台包含 IIS 服务器和 SQL 服务器的服务器。我的一个朋友建议我设置一个指向该服务器 IP 地址的 A 记录,并设置 2 个 CNAME 记录,sql.XXXX.XXX 和 www.XXXX.XXX。
我想知道重点是什么?有人不能使用 www.XXXX.XXX 访问 SQL 实例,并反过来使用 SQL.XXXX.XXX 访问 IIS 实例,因为它们指向同一个服务器和 IP?
如果是这样的话,让每个人都通过 XXXX.XXX(无子域)访问并就这样保留它不是更容易吗?
答案1
这里的假设是,在某些时候,这两种类型的服务器可能位于不同的物理或虚拟服务器上,并且(必然)具有两个不同的 IP 地址。将 Web 服务器和数据库服务器分开是一种非常常见的设置。使用 CNAME 或单独的 A 记录可让您轻松移动其中一个,而无需添加新的 DNS 记录。
答案2
Ben Doom 给出的答案是完整且准确的,但我想稍微扩展一下我使用的方法:
我将对物理服务器本身使用 A 记录,它具有唯一的名称:
wellington A 1.2.3.4
然后我将为该服务器上的所有服务设置 cname:
sql CNAME wellington
www CNAME wellington
然后如果您需要在不同的盒子上拆分 sql 和 www (或将它们都移动到不同的盒子),您只需更改 cnames。
答案3
使用服务器中的服务名称的目的是让最终用户专注于访问服务,而不是主机。
当您有技术人员(测试人员、管理员、编码员)时,您希望他们知道他们具体访问的是哪个系统。
在生产过程中,您希望用户拥有简单、易于记忆的路径。
当ftp服务器被命名为“hawk”而http服务器被命名为“dove”时,这很可爱,但很难记住。