参见英文答案 >
Why does DNS work the way it does?4个
我试图在我的Linux VPS上使用bind9来“托管”我的域名的区域文件.我的困惑是我的VPS的主机名是该域名.如果客户端要查找ns1.mydomain.com并且我的VPS正在为该区域文件提供服务,则客户端将永远无法访问example.com的区域文件来解析ns1.example.com.
我试图在我的Linux VPS上使用bind9来“托管”我的域名的区域文件.我的困惑是我的VPS的主机名是该域名.如果客户端要查找ns1.mydomain.com并且我的VPS正在为该区域文件提供服务,则客户端将永远无法访问example.com的区域文件来解析ns1.example.com.
所以这是我的问题:在域名的“名称服务器”字段而不是域名中使用IP地址是否可以接受?我以前从未见过它,我想知道是否有理由这样做.
解决方法
不,您不能仅使用IP地址作为名称服务器.
要解决明显的鸡蛋与鸡蛋问题,您需要将胶水记录插入父区域.对于example.com,父区域将是.com.您的注册商必须这样做..
所以,为了说明您的VPS的IP地址是10.1.2.3,并且你有一个在192.168.168.192上运行的辅助名称服务器,我们可以说.
example.com. IN A 10.1.2.3 example.com. IN NS ns1.domain.com. example.com. IN NS ns2.domain.com. ns1.example.com. IN A 10.1.2.3 ns2.example.com. IN A 192.168.168.192
然后,除了向注册商提供ns1.example.com之外.和ns2.example.com.作为名称服务器,您需要向注册服务商提供与这些名称服务器对应的IP地址.然后,注册商将该信息传递给注册管理机构.
Verisign(他们运行.com)将在他们的区域文件中,即.com,区域文件:
example.com. IN NS ns1.example.com. example.com. IN NS ns2.example.com. ns1.example.com. IN A 10.1.2.3 ns2.example.com. IN A 192.168.168.192
没有example.com的其他条目. (除非您添加更多名称服务器,或添加DNSSEC,在这种情况下,他们将在父区域中具有DS记录)
父区域中的A记录称为“粘合记录”,它们解决了鸡与蛋的问题.