DNS 解析之 HTTPDNS & Private DNS 介绍

2022-06-30 10:54:47 浏览数 (1)

0x01.DNS 解析 DNSPod

从 banner 可以看到之前的产品名叫做「云解析」,现在升级成了「DNSPod」,访问控制台需要跳转到 console.dnspod.cn 了

在 DNSPod 官网首页 DNS 分类下可以看到提供了很多功能,接下来一一介绍一下

这里自己用的是 Cloudflare 的解析服务,所以就不演示迁移到 DNSPod 之后的解析了

不过,DNSPod 仍然提供了很多能力,比如「智能解析」,可以根据不同运营商/国内国外来返回不同的 DNS 解析结果,举个例子:针对自己的 blog 可以设置国内解析至 www.yuangezhizao.cn、国外解析至 yuangezhizao.vercel.app,是非常实用的一个功能

0x02.移动解析 HTTPDNS

个人认为使用 HTTPDNS 最大的优点就是「防劫持」,假设某宽带运营商会劫持 DNS 解析,可能访问 53 端口的回包都会受影响,而 HTTPDNS 是通过 HTTP 协议发起解析请求,而不走传统的 DNS 协议,这样就避免了被宽带运营商劫持的问题

没错,因为是 HTTP/HTTPS 协议,所以直接在地址栏输入 url 就能看到结果了,图示是查询 lab.yuangezhizao.cn 的 A 记录

当然生产环境要使用 HTTPS 或加密请求参数(AES、DES),防止解析结果被中途篡改

适合于开发 APP 的时候使用 HTTPDNS,比如 iOS 或者 Android,官方文档中也提供了 SDK 文档

HTTPDNS 基于 BGP Anycast 网络部署,不同运营商的用户都能快速发起解析请求

0x03.私有域解析 Private DNS

主要适用于云上私有网络 VPC 环境,可以用来自定义任意 DNS 解析

举个例子,在同一 VPC 中有多台 VM,想通过 hostname 主机名互相访问,传统方式可能是手动登录到全部 VM 上,修改 hosts 文件,比如自己的手里的两台 CVM 和两台轻量如下

代码语言:javascript复制
cn-tx-bj1-r8 10.0.0.2
cn-tx-bj3-w2d 10.0.2.2
cn-tx-bj7-c8 10.0.24.14
cn-tx-bj6-u0 10.0.20.11

并且,如果某 VM 的内网 IP 变化了,那么有多少台 VM 就得修改多少次,比较费时

而有了 Private DNS,因为手里的 VM 都是腾讯云默认 DNS183.60.83.19183.60.82.98前提条件已满足

只需要创建私有域,然后就可以直接在 VM 上使用私有域里面自己定义的主机名了,并且如果某 VM 的内网 IP 变化了,只需要去 Private DNS 的控制面板更新就好了,无需在 VM 上做任何操作,省时省力

私有域是虚拟域名,不需要注册;解析支持 A、AAAA、CNAME、TXT、MX、PTR 记录类型

当然有人可能会问它是否会覆盖公共域名,当私有域关联上 VPC 之后,并且在对应的 VPC 内访问私有域对应的解析域名时,才会覆盖公共网络中的现有域名

还可以开启子域名递归解析功能,这样未配置解析记录将转至公共 DNS 查询

0x04.后记

关于最后一个「Public DNS」的实战,因篇幅原因会单独拆分到下一篇文章中进行介绍,在写了,在写了~

0 人点赞