我注册了一个.website
域名,我想将其直接指向我的 VPS(不使用 CDN)。我以前在其他注册商那里做过这件事。但是当我尝试将名称服务器设置为我的专用 IP 时,注册商的控制面板给了我一个错误,说:
DNS(XX.XX.XX.XX)格式不正确
我能做些什么吗?还是我应该屈服并使用 CDN?
附言:这是我的注册员
答案1
您应该输入完全限定主机名用于名称服务器。
这是因为委托是通过NS
DNS RR 进行的,它接受的是名称,而不是 IP。您正在填写的表格是作为此记录的数据字段提供的。
注册器实际上将类似以下的记录添加到父区域(com
在此示例中):
example.com. NS alpha.example.com.
example.com. NS beta.example.com.
example.com. NS gamma.example.org.
alpha.example.com. A 192.0.2.66
alpha.example.com. AAAA 2001:db8::6a:7bc:8def
beta.example.com. A 203.0.113.77
您的区域中也应该存在完全相同的记录(并且所有服务器上的区域必须相同,即所有服务器都应对相同的查询给出相同的答复)。
DNS 标准要求每个NS
RR 应准确包含权威服务器的名称。我使用了 names alpha.example.com
,beta.example.com
而gamma.example.org
对于示例,有人可能只使用ns1.example.org
等等,这是任意的。Registrar 不知道您为名称服务器选择了哪些名称,因此你必须告诉他们这些名字。
仅当授权区域本身内的权威服务器的名称需要附加的粘合记录时,例如示例中的前两个服务器。当您需要指定名称服务器的 IP 和 IPv6 地址时,就会出现这种情况除了,但不是代替主机名。如果您要委派区域的部分(或全部)服务器的名称不在区域本身内,您无需为它们指定任何 IP 或 IPv6 地址,仅有的名称,因为这些地址是在其他地方(在它们自己的区域中)指定的。这就是 的情况gamma.example.org
。
仅指定 IP 地址是远远不够的,因为没有名称,注册商就无法在父区域中为委派创建所需的 DNS 记录。老实说,正如 Patrick 在评论中提到的那样,我怀疑您是否能够仅指定 IP 地址而从未输入任何名称。
理论上,如果名称服务器已经配置为服务于这个待委派区域并在填写表单时正确回复,则可以“推断”名称服务器的名称,这样注册商就可以向指定的 IP 发送查询以检索 NS 记录列表,但没有人要求注册商实施此类启发式方法。这不是您应该期望总是有效的。我从未见过注册商这样做。