HttpDNS方案
时间:2020-12-07一、HttpDNS 原理
常规域名解析是通过 DNS 协议进行解析的,其最终结果就是获取域名对应的真实服务器地址,无法绕开 DNS 拦截和故障问题。而 HttpDNS 则是以 HTTP 的方式代替传统 DNS 协议传递解析结果,能够有效避开 DNS 层面的拦截和故障。客户端通过接口向蔚可云提供的HttpDNS集群发起“DNS 查询”请求,蔚可云提供的HttpDNS集群根据请求携带的域名和 IP 信息,查询 CDN 内部调度策略,通过响应请求的方式,返回给客户端最优节点 IP。客户端得到最优节点 IP,通过在 header 中指定 host 字段,进行正常的业务访问。
二、访拓扑图流程
1.拓扑图
客户端已根据《HTTPDNS.接入指南》完成客户端改造,客户端与 HTTPDNS 系统的业务流程
如下:
① 客户端向HttpDNS中心集群发起查询请求,携带用户域名和终端 IP(可选)。
② 服务集群查询 CDN 内部调度系统(若内部调度系统查询不到数据,目前返回为空,后续
考虑在中心集群进行递归查询),将域名最佳访问节点 IP 以 HTTP 响应的方式传递给客户端。 ③ 客户端,收到响应结果,向节点发起请求。
④ 若客户端向HttpDNS集群请求失败,则启用备选,走正常 DNS 解析过程,向 LocalDNS 发起请求。
⑤ LocalDNS 进行递归查询。
⑥ 最终返回 DNS 结果
⑦ 客户端拿到最优 IP 后,建立连接,发起正常访问操作
三、调用方式
1.蔚可云提供的HttpDNS 集群HttpDNS 集群中心在海外地区接入了 BGP Anycast 网络,遍布全球各大洲 20+节点,用户可以实现就近快速接入服务。
国内HttpDNS 集群中心,调度服务器节点数量在 100+,支持海量 HttpDNS 访问,轻松支撑上千万并发访问。
安全上,网 HttpDNS 建设有多个异地灾备点,当任意一个节点发生故障时均能无缝切换到备份节点,保证用户解析正常。为了保证 HTTPDNS 业务稳定及正常,在保证 HttpDNS 中心集群稳定性同时建立分布于全国各地的边缘服务网络。
2.调用方式
可采用如下方式进行请求:
(1)国内:
① 主-备-备方式
客户端访问的时候支持主备备的方式。当前访问主集群,如果收到的响应为空或者集群连接超时,则切换备份集群,如果备份集群访问也为空或者连接不上,则可选择尝试下一个备集群或者直接走正常的 dns 解析。
② 域名 https方式
(2)海外地区:
采用 Anycast ip 的方式调用,并实现了多地跨机房容灾。可以保证 HTTPDNS 服务的高可用性。
四、查询方式
直接 HTTP 查询 DNS 接口访问方式自定义两种http 查询dns接口的方式:http和https
1.http方式:请求内容包括用户加速域名,客户端 IP;响应内容则包括 DNS 记录和 TTL 时间。
2.https方式:对要查询的域名和返回结果进行加密传输,可以防止明文 HTTP 请求在传输过程中被篡改,进一步保障传输安全性
本页目录