點樣創建個性化嘅DNS服務器地址(用自己嘅域名做DNS服務器地址)
分类写成教程了,其实就是闲谈,平时我们如果注意观察嘅话就会发现成日唔少大厂域名嘅DNS都比较有个性,比如qq.com呢个域名嘅DNS服务器系NS1.QQ.COM——NS4.QQ.COM,而我们自己嘅DNS服务器基本上就系千篇一律嘅f1g1ns1.dnspod.net/xxx.dnspod.net/dns(1-32).hichina.com/ns(1-8).alidns.com等等,噉点样用自己嘅域名做域名DNS服务器地址令我们嘅域名服务器看起上嚟更加个性化呢?答案就系贴牌(当然有能力你都可以自建)。
所谓贴牌DNS就系使用解析厂商提供嘅解析服务,但系DNS服务器嘅域名,换成你自己嘅,呢个东西叫法比较多,包括似系:贴牌DNS/Vanity Nameservers/DNS Branding/Custom Nameservers/white-label name servers等等,我比较喜欢Vanity Nameservers呢个名称,直译过嚟就系“虚荣嘅域名服务器”,满足自己嘅虚荣心哈哈哈(开个玩笑),呢个东西对一般人来讲其实冇咩用,不过如果你系域名代理商、云厂商呢种唔想自建DNS服务又想给用户提供解析搞个还系可以嘅,当然如果你有能力自建DNS服务嘅话,噉就更加好了。
前提条件
- 域名:呢个域名咩后缀都得,但注册商必须支持加DNS host(Glue record),国内我试过嘅有腾讯云同阿里,其他厂商唔太清楚(厂商基本上都有呢个能力,但系能唔能自助注册就系另一个问题喇),国外嘅话大多数都支持。
- 解析服务商:唔需要睇厂商本身系唔系支持贴牌DNS,但解析厂商需要满足以下条件:第一点,支持设置SOA同NS记录(首先可以排除DNSPod、Azure dns 同阿里云,甚至国内大部分嘅域名解析服务商喇),第二点,唔指向呢个厂商嘅DNS服务器厂商唔会把你解析停咗嘅。满足上面嗰两个条件嘅国内似乎太少喇(之前有华为云),国外嘅话还系挺多嘅,比如CloudNS、Route53、NS1、GCP DNS等等,当然除咗呢啲之外还有好多其他嘅厂商都支持,呢度就唔过多赘述喇。
操作步骤
本来想以华为云为例写个详细教程嘅,写教程嘅时候发现华为云唔支持设置SOA喇,既然噉就只写流程啦。
找解析服务商
按照上面嘅条件找一家解析服务商:
- 支持设置SOA同NS记录
满足呢两个条件嘅国内厂商基本冇喇,似系阿里云、腾讯云DNSPod、华为云都仅支持设置NS记录,唔支持设置SOA(唔支持设置SOA好似也冇咩大问题),其中腾讯云设置NS记录还要通过API,唔能够直接操作,建议大家去国外搵搵,大多数都支持,我个人用嘅系cloudNS。
2.唔指向呢个厂商嘅DNS服务器厂商唔会把你解析停咗嘅
比如腾讯云DNSPod免费版,长时间唔指向佢哋嘅DNS服务器就会暂停解析,我们打造自己品牌嘅名称服务器肯定唔会指向佢哋嘅,噉呢种就唔得喇。
在解析服务商加域名
把域名加入到你选择嘅解析服务商平台,并记录下解析服务商比你分配嘅DNS服务器地址,比如谷歌比我嘅系ns-cloud-c1.googledomains.com,ns-cloud-c2.googledomains.com,ns-cloud-c3.googledomains.com,ns-cloud-c4.googledomains.com。
获取服务商提供嘅DNS服务器对应嘅IP地址
喺呢度我们需要获取服务商提供嘅DNS服务器对应嘅IP地址,刚刚已经叫大家记住咗原本嘅NS记录,现在我们需要获取服务商提供嘅DNS服务器对应嘅IP地址,比如上面Google Cloud DNS比我嘅系ns-cloud-c1.googledomains.com,ns-cloud-c2.googledomains.com,ns-cloud-c3.googledomains.com,ns-cloud-c4.googledomains.com,噉我们就需要获取呢四个DNS服务器对应嘅IP地址,喺呢度我们可以用nslookup命令嚟获取,举个例子:
1 | rttw@Kincaid:~$ nslookup ns-cloud-c1.googledomains.com |
去域名注册商添 DNS host(Glue Record)
我哋刚刚已经攞到咗服务商提供嘅 DNS 服务器对应嘅 IP 地址,而家我们用呢啲 IP 地址来添 DNS host(Glue Record):
添加 DNS host(Glue Record)嘅方法喺度唔会介绍,大家自己去睇吓啱啱嘅域名注册商嘅文档吧,下面系腾讯云和阿里云嘅添文档:
腾讯云: https://cloud.tencent.com/document/product/242/54158
阿里云: https://help.aliyun.com/document_detail/59949.html
示例图:
留意:最少要有两组 DNS 服务器,比如作者想用嘅系 ns1.vanitydns.com同ns2.vanitydns.com,把上头攞到嘅 IP 地址平分到呢两组 DNS host 就得咯。
图文入面嘅域名同 IP 唔配套,大家唔使理,只系举个例子
去解析服务商度为名称服务器添 A 同 AAAA 记录
喺呢度我哋要去解析服务商度为名称服务器添 A 同 AAAA 记录,比如作者嘅系 ns1.vanitydns.com同ns2.vanitydns.com,噉我哋就要去解析服务商度为呢两个名称服务器添 A 同 AAAA 记录指向 DNS 服务器 IP 地址,留意喺度指向 DNS 服务器 IP 地址设置嘅要同之前添 DNS host(Glue Record)嘅 IP 地址一致,比如作者设置 DNS host 时:
ns1.vanitydns.com 指向 1.12.34.55,1.12.34.56,2402:4e00::1
ns2.vanitydns.com 指向 1.23.34.57,1.12.34.58,2402:4e00::2
噉喺去解析服务商度为呢两个名称服务器添 A 同 AAAA 记录,同上头 host 保持一致:
ns1.vanitydns.com. 3600 IN A 1.12.34.55
ns1.vanitydns.com. 3600 IN A 1.12.34.56
ns1.vanitydns.com. 3600 IN AAAA 2402:4e00::1
ns2.vanitydns.com. 3600 IN A 1.23.34.57
ns2.vanitydns.com. 3600 IN A 1.23.34.58
ns2.vanitydns.com. 3600 IN AAAA 2402:4e00::2
修改 NS 同 SOA 记录
添咗解析之后喺解析服务商度修改 NS 同 SOA 记录,NS 记录指嘅系你自定义名称服务器,好似笔者嘅系NS1.VANITYDNS.COM同NS2.VANITYDNS.COM,噉就把 NS 记录嘅值改做呢两个,留意 TTL 尽量设嘅长啲,好似 3600-86400,SOA 记录主要留意修改主 NS 服务器同电邮地址,其他嘅可以唔使理,好似笔者嘅系:
1 | vanitydns.com. 300 IN SOA ns1.vanitydns.com. admin.vanitydns.com. 2023020601 3600 180 1209600 300 |
当中 300 係 TTL,ns1.vanitydns.com 係主 NS 服务器,admin.vanitydns.com 係电子邮件地址,2023020601 係序列号,3600 係刷新时间,180 係重试时间,1209600 係过期时间,300 係最小 TTL。需要改嘅就只有主 NS 服务器同电子邮件地址,其他嘅可以唔使理。
听落可能有啲难明,放个修改示例嘅截图啦:
呢个系笔者用嘅 cloudNS,修改示例:
呢个系Google Cloud DNS,修改示例:
PS:喺 DNS 记录当中,电子邮件地址中嘅 @ 符号需要用 . 来代替。系唔系有同学仲想问主名称服务器系咩嘢,假如你想自定义嘅 NS 系 ns1.vanitydns.com 同 ns2.vanitydns.com,噉 ns1.vanitydns.com 就系主名称服务器,ns2.vanitydns.com 就系备用名称服务器。(明白嘅自然明白,唔明白跟住做就得)
修改域名 DNS 服务器
完成上述所有步骤之后,你就可以改域名嘅 DNS 服务器地址做自己个嘅,点改就要参考下你域名服务商提供嘅帮助文件。
改好之后就可以睇效果啦:
1 | rttw@Kincaid:~$ whois vanitydns.com |