忆秋年博客 http://blog.xj.cn

最拽博客
最拽博客
  • 微信公众号
  • 然后我是鱼

    80后 | 从业集装箱物流 | 上海

    喜爱上网,喜爱喝酒,最近在学习wordpress,AI-Ima,Flowus。

    熬夜惯犯 也是独一无二的普通人

    创业的设想较多 多浅尝辄止

    如果你是通过某域名来到此处 可点击左一图看看我的念想

    40岁的中年中年搞物流的男人

    QQ:46369606

    TEL:15000200068

    右键下载背景图

    如何打造个性化的 DNS 服务器地址(用自己的域名作为 DNS 服务器地址)

    jianpi·2024-09-12·16 次阅读

    分类写成教程了,其实就是闲谈,平时我们如果注意观察的话就会发现挺多大厂域名的 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 了,既然这样就只写流程吧。

    找解析服务商

    按照上面的条件找一家解析服务商:

    1. 支持设置 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 命令来获取,举个例子:

    BASH

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    rttw@Kincaid:~$ nslookup ns-cloud-c1.googledomains.com
    Server:         192.168.160.1
    Address:        192.168.160.1#53
    
    Non-authoritative answer:
    Name:   ns-cloud-c1.googledomains.com
    Address: 216.239.32.108
    Name:   ns-cloud-c1.googledomains.com
    Address: 2001:4860:4802:32::6c
    
    rttw@Kincaid:~$ nslookup ns-cloud-c2.googledomains.com
    Server:         192.168.160.1
    Address:        192.168.160.1#53
    
    Non-authoritative answer:
    Name:   ns-cloud-c2.googledomains.com
    Address: 216.239.34.108
    Name:   ns-cloud-c2.googledomains.com
    Address: 2001:4860:4802:34::6c

    前往域名注册商添加 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 服务器地址(用自己的域名作为 DNS 服务器地址)

    注意:最少要有两组 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 服务器和邮箱地址,其他的可以不用管,比如笔者的是:

    BASH

    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,修改示例:
    如何打造个性化的 DNS 服务器地址(用自己的域名作为 DNS 服务器地址)

    这是Google Cloud DNS,修改示例:
    如何打造个性化的 DNS 服务器地址(用自己的域名作为 DNS 服务器地址)

    PS:在 DNS 记录中,邮箱地址中的 @ 符号需要用 . 代替。是不是有同学还想问主名称服务器是啥,假如你想自定义的 NS 是 ns1.vanitydns.com 和 ns2.vanitydns.com,那么 ns1.vanitydns.com 就是主名称服务器,ns2.vanitydns.com 就是备用名称服务器。(懂得自然懂,不懂照做就行)

    修改域名 DNS 服务器

    完成上面的所有步骤后你就可以修改域名的 DNS 服务器地址为你自己的了,具体如何修改请参考你的域名服务商的帮助文档。
    修改完成后就可以看效果了:

    BASH

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    rttw@Kincaid:~$ whois vanitydns.com
       Domain Name: VANITYDNS.COM
       Registry Domain ID: 2754575975_DOMAIN_COM-VRSN
       Registrar WHOIS Server: whois.google.com
       Registrar URL: http://domains.google.com
       Updated Date: 2023-01-29T07:52:29Z
       Creation Date: 2023-01-29T00:16:12Z
       Registry Expiry Date: 2024-01-29T00:16:12Z
       Registrar: Google LLC
       Registrar IANA ID: 895
       Registrar Abuse Contact Email: registrar-abuse@google.com
       Registrar Abuse Contact Phone: +1.8772376466
       Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited
       Name Server: NS1.VANITYDNS.COM
       Name Server: NS2.VANITYDNS.COM
       DNSSEC: signedDelegation
       DNSSEC DS Data: 49548 13 2 D6D5E60B35B2F10CA1052FAA6045E0BC0B201D46547AC3ED1DF5FC9A797BAD0A
       URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf/
    >>> Last update of whois database: 2023-02-08T12:31:14Z <<<

    常见问题

    1. 看完之后感觉有点懵?
      确实,这文章写的有点不适合小白,遇到任何问题发邮件或者前往 GitHub 仓库提 issue 都可以。
    2. 更改 DNS 服务器失败?
      看起来大概是下面这样,如果你是腾讯云注册的域名,可在腾讯云域名控制台找到“技术交流群”点击扫码加群寻求帮助,其他域名服务商可以给笔者发邮件或者前往 Github 仓库提 issue。
      如何打造个性化的 DNS 服务器地址(用自己的域名作为 DNS 服务器地址)
    文章作者: 小泽
    文章链接: https://r2wind.cn/articles/20230208.html

    80后 | 从业集装箱物流 | 上海 喜爱上网,喜爱喝酒,最近在学习wordpress,AI-Ima,Flowus。 熬夜惯犯 也是独一无二的普通人 创业的设想较多 多浅尝辄止 如果你是通过某域名来到此处 可点击左一图看看我的念想 40岁的中年中年搞物流的男人 QQ:46369606 TEL:15000200068

    查看评论

    评论 |

    暂无评论
    欢迎回来 , [ 修改 ]