使用 BIND9 设置自定义名称服务器
Posted
技术标签:
【中文标题】使用 BIND9 设置自定义名称服务器【英文标题】:Setting up a custom nameserver with BIND9 【发布时间】:2011-05-17 13:50:57 【问题描述】:假设我从域注册商处购买了一个新域 (somedomain.com),我想在具有两个 IP 地址的服务器上设置我自己的域名服务器。
-
首先我购买了域名。
我得到了服务器。
安装 BIND9。
我登录服务器并为 NS1.SOMEDOMAIN.COM 和 NS2.SOMEDOMAIN.COM 准备 DNS 记录。
我在 BIND 的什么地方设置这些,我应该怎么做?
下一步: 返回域注册器并将 DNS 设置为指向 NS1.SOMEDOMAIN.COM 和 NS2.SOMEDOMAIN.COM。
如果我要转发的域指向其 OWN 域名服务器域,这是一件坏事吗?我应该改变这个吗?当两个子域都在转发给它们的域之外时,它如何知道 NS1 和 NS2 去了哪里?
我是否应该只使用我的注册商提供的 DNS 并为 NS1 和 NS2 创建两个 CNAME 记录条目以指向新创建的 DNS 服务器的服务器 ips?这行得通吗?
谁能给我解释一下这个过程?谢谢。
【问题讨论】:
【参考方案1】:请添加以下步骤,这对于在 WHOIS 记录中使用您的域名服务器至关重要:
第 5 步:返回您的注册商(无论您在第 1 步中购买域名的地方)并在其管理控制面板中创建特殊的 NameServer 记录;例如,在 godaddy.com 上,您需要转到高级 > 主机,在那里您可以设置 ns1 以指向您服务器的 IP 地址(第 2 步)。
您需要对 ns2 执行相同操作。
这因注册商而异,请查阅他们的文档或联系客户支持。
第 6 步:更新 WHOIS 记录以反映您的新域名服务器。
我在 BIND 中的什么位置设置这些,我应该怎么做?您可以在域的区域记录中设置这些,与此类似:
yourdomain.com. IN SOA ns1.yourdomain.com. you.yourdomain.com. (
1032789388
10800
3600
604800
300 )
yourdomain.com. IN NS ns1.yourdomain.com.
yourdomain.com. IN NS ns2.yourdomain.com.
ns1.yourdomain.com. IN A xxx.xxx.xxx.xxx
ns2.yourdomain.com. IN A yyy.yyy.yyy.yyy
如果我转发的域指向它的 OWN 域名服务器域,这是一件坏事吗?我应该改变这个吗?
从同一个域运行 DNS 很好。
当两个子域都在转发给它们的域之外时,它如何知道 NS1 和 NS2 的去向?请参阅上面的第 5 步 - 您的注册商会处理这一点,注册您的名称服务器并允许它们参与“网络”。
我是否应该只使用我的注册商提供的 DNS 并为 NS1 和 NS2 创建两个 CNAME 记录条目以指向新创建的 DNS 服务器的服务器 ips?这行得通吗?这行不通,因为您仍需要执行第 5 步;老实说,如果您不在同一主机上为 ns1 提供 DNS,我不确定会发生什么。
补充说明:
虽然您可以为 ns1 和 ns2 运行一个 DNS 服务器,但不建议这样做。
通常您希望您的辅助(从)DNS 服务器离您的主(主)DNS 服务器尽可能远...最好位于不同的国家/地区。
但是,技术上没有什么可以阻止您在同一物理硬件上使用两个不同的 IP。
【讨论】:
以上是关于使用 BIND9 设置自定义名称服务器的主要内容,如果未能解决你的问题,请参考以下文章
如何为 System.Serializable 类设置自定义 json 字段名称?
我可以使用 IP 地址作为名称服务器而不是创建自定义名称服务器 [关闭]
自定义SpringBoot+Swagger中@ApiModel默认名称