我使用由其他人设置和注册的虚拟服务器(类似情况有好几次)。其 IP10.0.0.1
和名称均为a.example.com
(均由上面的“其他人”处理)。
我管理该域名sub.example.com
并且还想将该服务器注册为b.sub.example.com
。
在我的 DNS 中有两种方法可以做到这一点:
b IN CNAME a.example.com.
或者
b IN A 10.0.0.1
由于 IP 不是由 DHCP 分配的(因此它在服务器配置中是硬编码的),如果在我不知情的情况下更改,则在任何一种情况下都会出现问题,并且上述任何解决方案都无济于事。将PTR
指向a.example.com
(我不控制 IP 反向映射)
那么,在我这边进行注册的正确方法(=规范/最佳实践)是什么?
编辑:由于b
在中也引用了,因此NS
我必须采用第二种解决方案。请参阅以下是我的回答了解详情。
我接受疯了的回答,因为即使它没有解决上述情况的最佳实践/标准(在NS
强制解决方案的更新之前),它也提供了有趣的见解。谢谢!
答案1
DNS 的设计并不完善,无法在不进行人工干预的情况下处理静态 IP 地址的更改。有一些技术可以自动传播记录,例如特立尼达和多巴哥共和国但是它们需要相当多的合作设置,而且即使这样也不能很好地处理 PTR 记录的更改。
在现实世界中,手动 IP 更改时有发生。必须提前安排好并妥善处理。这包括适时且深思熟虑地更改 DNS,接受 DNS 传播的不完善以及更改将对业务产生影响的事实,以及随之而来的对此类更改的厌恶。
TomTom 的上述评论是正确的;如果每个人都做好自己的工作,那么只需付出最少的努力,变革就会成功——但需要付出一些努力将要被需要。
答案2
我最终会有使用
b IN A 10.0.0.1
因为记录b
中也提到了这一点NS
(我最初没有注意到)
IN NS b
这是违法的,b
所以CNAME
别无选择,只能遵循明确的A
记录。
答案3
CNAME 选项仍然有效,因为您说他们的基础设施知道 VPS 的 IP,并且他们正确地更新了他们的名称服务器。
编辑:关于 PTR 记录;您唯一能做的就是询问他们。我自己有几个托管虚拟机,除了一个之外,我所有的提供商都同意这一点。如果他们的政策允许,那就没问题。