我应该如何准确地设置DNS来委派子域的权限?


15

我的服务器托管在托管服务提供商处,它们还托管我域名的DNS记录。现在,我想添加由我自己的DNS服务解析的子域。因此,例如:

  • 托管提供商的名称服务器知道IP地址 econemon.com
  • 我的一台服务器知道IP地址 ftp.econemon.com

也,

  • 未知或未定义的子域应路由到与父域相同的IP
  • 如果我的DNS服务失败,则将所有请求都发送到与关联的IP地址,那将是很好的选择econemon.com,但是我不确定这应该如何工作。

现在,我已经阅读了有关DNS的Wikipedia文章,以使我的知识蒙上阴影,但令我感到困惑的部分是:客户端如何知道要向哪个服务器请求IP地址ftp.econemon.com?它是否从托管者那里获得了该信息?如果是这样,我是否必须在该处注册子域(然后我需要我的名称服务器)?

Answers:


14

如果要为域的一部分委派权限,则需要在层次结构中添加另一个级别。

当递归DNS服务器要求ftp.econemon.com的地址时,它将经历许多步骤。首先,它将询问其中一个根服务器,该根服务器将使用.com域的名称服务器进行答复(此步骤可能会被缓存,并且很少执行)。然后,它将询问.com服务器,它们将以econemon.com域的名称服务器作为响应。最后,它将向这些服务器询问ftp.econemon.com的地址记录。

从理论上讲,您可以简单地将ftp.econemon.com添加为父区域中的NS条目。

例如:

服务NS ns1.econemon.com。
ns1 A 192.0.2.1

然后在您的名称服务器中将ftp.econemon.com创建为区域。但是,如果采用这种方式,则必须为每个服务器创建一个新区域。您可能想做的就是要求您的提供商添加一个委托子域。

例如:

服务NS ns1.services.econemon.com。
服务NS ns2.services.econemon.com。
ns1.services A 192.0.2.1
ns2.services A 192.0.2.2

然后,您可以将services.econemon.com添加为名称服务器上的区域,并在该区域中根据需要添加新条目。

如果您确实也需要短名称,那么添加CNAME记录就不会太麻烦,这样ftp.econemon.com的标准名称为ftp.services.econemon.com,这样您就可以随时更改IP地址。您想要的名称,并允许用户使用简称。

ftp.econemon.com。CNAME ftp.services.econemon.com。

因此,输入“ econemon.com。IN NS ns.provider-domain.com”是否正确?实际意思是“对于域econemon.com和所有子域,请问ns.provider-domain.com”?我认为这首先是我可能会误解的。
汉诺·菲茨

这是正确的,尽管对于真实世界的查找,绝大多数查找决定都是基于父区域(在本例中为.com区域)中的记录做出的。该域顶层的NS记录实际上基本上是修饰性的,并且在那里保持一致性(即,确保在向ns.provider-domain.com和a.gtld-servers.net询问econemon的NS记录时)。 com他们都给出相同的答案)
罗素·海林09年

我在这里有些困惑。不应该ftp NS ns1.econemon.com.在第一个示例中吗?
HolgerBöhnke

2

您需要为ftp.econemon.com添加一个指向您自己的DNS服务器的NS条目。当客户端要解析某事.ftp.econemon.com时,它将询问您的提供商DNS,这将回答可以在您自己的服务器上进行解析。一个例子是:

ftp.econemon.com。在NS myownns.econemon.com中。

myownns.econemon.com。在一个YOUR_DNS_SERVER_IP中

.econemon.com之前有任何内容。要工作,您可以使用通配符记录(*)


1

但是对于ftp.econemon.com之类的东西,您可能不需要委托任何东西。诸如ftp.econemon.com之类的东西通常是主机名而不是子域。如果是这样,只需为其添加一个A记录。

ftp.econemon.com. IN A 192.168.1.1

您也可以添加带有点的A记录,例如:

ftp.something.econemon.com. IN A 192.168.1.3

如果绑定了DNS,则可以使用通配符例如:

*.something.econemon.com. IN A 192.168.1.3

我不确定委托是否真的有用,除非您确实想允许其他人或组织来管理子域。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.