阿里云公共DNS安全传输服务介绍(DoH/DoT)

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
简介: 传统的DNS查询和应答采用大都采用UDP明文传输,存在网络监听、DNS劫持、中间设备干扰的风险。为了应对以上挑战,阿里公共DNS对外提供支持DoH/DoT的云服务,为广大的互联网用户提供快速、稳定和安全的DNS解析,欢迎大家使用!

概述

阿里公共DNS致力于为广大的互联网用户提供快速、稳定和安全的DNS解析。然而传统的DNS查询和应答采用UDP和TCP明文传输,存在网络监听、DNS劫持、中间设备干扰的风险:

  • 网络监听风险:即便用户采用HTTPs加密的方式访问站点,DNS查询应答并没有采用加密传输
  • DNS劫持:传统DNS应答数据会被篡改,用户的访问会被路由到钓鱼网站和恶意站点
  • 中间设备干扰:主要是一些防火墙对DNS查询的干扰,基于域名的过滤,还有大包MTU分片的影响等

为了应对以上挑战,阿里公共DNS遵守DoH(RFC8484)和DoT(RFC7858) 标准对外提供DNS的安全传输服务, 支持 DNS over HTTP(s), DNS Json API, 和DNS over TLS三种安全传输模式。DNS的安全传输服务可以适用于移动应用程序、浏览器、操作系统、物联网设备和网关路由器等多个场景。通过传输加密的方式发送DNS查询,加强了用户访问互联网的安全性、解析稳定和隐私保护。

除了隐私加密以外,DNS安全传输服务采用TCP和HTTP连接用户端和DNS服务器,一方面可以服务精准的基于位置的DNS解析和流量调度,另一方面基于DNS端到端的连接特性,DNS的动态变更可以实现秒级端到端生效。

注意:在DoH和DoT传输服务中,阿里公共DNS支持 TLS 1.2 和TLS 1.3.

1. DNS over HTTPs(DoH)

阿里公共DNS通过RFC 8484指定的经过TLS加密的HTTP连接提供DNS解析

注意:其中alidns_ip是dns.alidns.com 的A和AAAA记录,可以是以下四个地址之一 :223.5.5.5,223.6.6.6,2400:3200::1, 2400:3200:baba::1. 

请求方式: GET
请求参数 :

参数 类型 描述 示例 默认值
dns string base64url编码的DNS请求内容 dig alibaba.comd A, dns=uGkBAAABAAAAAAAAB2FsaWJhYmEDY29tAAABAAE 必须包含
b869 8180 0001 0004 0000 0001 0761 6c69
6261 6261 0363 6f6d 0000 0100 0107 616c
6962 6162 6103 636f 6d00 0001 0001 0000
012c 0004 6a0b d097 0761 6c69 6261 6261
0363 6f6d 0000 0100 0100 0001 2c00 04cb
77d7 5207 616c 6962 6162 6103 636f 6d00
0001 0001 0000 012c 0004 6a0b df65 0761
6c69 6261 6261 0363 6f6d 0000 0100 0100
0001 2c00 04cb 7781 6d00 0029 1000 0000
0000 000c 0008 0008 0001 2018 6a0b 22e6

 
注:根据RFC8484的定义,DoH服务适用于两类场景:一种是DNS HTTPS隧道,一种是应用层访问DNS数据。DNS wireformat二进制格式对应用不够友好,比如要处理DNS名字压缩机制等。DNS Json的API是为了提供给应用更友好的接入方式。

2. DNS JSON API

注意:其中alidns_ip是dns.alidns.com 的A和AAAA记录,可以是以下四个地址之一 :223.5.5.5,223.6.6.6,2400:3200::1, 2400:3200:baba::1. 

请求方式  : GET
请求参数  :

参数 类型 描述 示例 使用方法和默认值
name string 请求域名 name=www.taobao.com. 必选,无默认值
type number 请求类型 type=1 可选,1
edns_client_subnet IP ECS IP edns_client_subnet=1.2.3.4/24 DNS代理使用,普通客户端不适用

**
关于edns_client_subnet参数 :

edns_client_subnet是为了支持DNS ECS功能(RFC7871),将用户的子网信息传递给权威DNS,做更精确的DNS解析和流量调度。其中掩码越长地址信息越精确,掩码越短用户隐私效果越好。建议使用"/24" 掩码长度

注:该参数是特地为DNS代理(proxy)使用DNS JSON API场景设计,即用户发送DNS查询给DNS代理,DNS代理通过该参数携带用户的子网信息传递给阿里公共DNS,最后传递到权威DNS服务器。

例如edns_client_subnet=1.2.3.4/24,权威服务器会收到基于1.2.3.0/24地址前缀信息来帮助用户选择DNS链路。

关于type参数支持类型

记录类型 ID 意义 示例(以 taobao.com , www.taobao.com 为例)
A 1 IPv4 地址 101.37.183.171
NS 2 NS 记录 ns1.taobao.com.
CNAME 5 域名 CNAME 记录 www.taobao.com.danuoyi.tbcache.com.
SOA 6 ZONE 的 SOA 记录 ns4.taobao.com. hostmaster.alibabadns.com. 2018011109 3600 1200 3600 360
TXT 16 TXT 记录 "v=spf1 include:spf1.staff.mail.aliyun.com -all"
AAAA 28 IPv6 地址 240e:e1:f300:1:3::3fa

返回示例:

{
    "Status":0,  
    "TC":false,
    "RD":true,
    "RA":true,
    "AD":false,
    "CD":false,
    "Question":{       // 请求段
        "name":"www.taobao.com.",
        "type":1
    },
    "Answer":[         // 应答段
        {
            "name":"www.taobao.com.",
            "TTL":45,
            "type":5,
            "data":"www.taobao.com.danuoyi.tbcache.com."
        },
        {
            "name":"www.taobao.com.danuoyi.tbcache.com.",
            "TTL":45,
            "type":1,
            "data":"47.246.24.234"
        },
        {
            "name":"www.taobao.com.danuoyi.tbcache.com.",
            "TTL":45,
            "type":1,
            "data":"47.246.24.233"
        }
    ]
    //"Authority" 权威段, 如果有数据与Answer字段一致 
    //"Additional" 附加段, 如果有数据与Answer字段一致
    // 可选 "edns_client_subnet":"1.2.3.4/24"  
}

注:用户可以在客户端应用或APP中调用DoH和DNS JSON API解析DNS 。

3. DNS over TLS (DoT)

阿里公共DNS通过RFC 7858指定的经过TLS加密的TCP连接提供DNS解析。提供两种模式接入:域名方式和IP方式。基本流程是:

  1. 终端设备配置DoT的解析服务器dns.alidns.com 或alidns_ip
  2. 如果配置的是alidns.com,客户端先解析alidns.com获得地址alidns_ip
  3. 获得DoT解析服务器IP地址之后,终端设备再建立与DoT解析服务器在端口853 的TCP连接
  4. 经过TLS握手协商,终端设备与DoT解析服务器建立TLS连接
  5. 通过该TLS连接,终端设备可以发送DNS查询到远端DoT解析服务器

对使用安卓手机的用户来说,可以设置在手机设置界面设置阿里公共DNS的域名和地址来获取DNS的DoT安全传输服务。

image
image

华为手机的DoT网络设置

相关文章
|
11天前
|
机器学习/深度学习 安全 大数据
揭秘!企业级大模型如何安全高效私有化部署?全面解析最佳实践,助你打造智能业务新引擎!
【10月更文挑战第24天】本文详细探讨了企业级大模型私有化部署的最佳实践,涵盖数据隐私与安全、定制化配置、部署流程、性能优化及安全措施。通过私有化部署,企业能够完全控制数据,确保敏感信息的安全,同时根据自身需求进行优化,提升计算性能和处理效率。示例代码展示了如何利用Python和TensorFlow进行文本分类任务的模型训练。
43 6
|
26天前
|
存储 缓存 算法
分布式锁服务深度解析:以Apache Flink的Checkpointing机制为例
【10月更文挑战第7天】在分布式系统中,多个进程或节点可能需要同时访问和操作共享资源。为了确保数据的一致性和系统的稳定性,我们需要一种机制来协调这些进程或节点的访问,避免并发冲突和竞态条件。分布式锁服务正是为此而生的一种解决方案。它通过在网络环境中实现锁机制,确保同一时间只有一个进程或节点能够访问和操作共享资源。
60 3
|
7天前
|
机器学习/深度学习 人工智能 安全
TPAMI:安全强化学习方法、理论与应用综述,慕工大、同济、伯克利等深度解析
【10月更文挑战第27天】强化学习(RL)在实际应用中展现出巨大潜力,但其安全性问题日益凸显。为此,安全强化学习(SRL)应运而生。近日,来自慕尼黑工业大学、同济大学和加州大学伯克利分校的研究人员在《IEEE模式分析与机器智能汇刊》上发表了一篇综述论文,系统介绍了SRL的方法、理论和应用。SRL主要面临安全性定义模糊、探索与利用平衡以及鲁棒性与可靠性等挑战。研究人员提出了基于约束、基于风险和基于监督学习等多种方法来应对这些挑战。
20 2
|
9天前
|
域名解析 缓存 网络协议
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
|
10天前
|
安全 测试技术 数据安全/隐私保护
原生鸿蒙应用市场开发者服务的技术解析:从集成到应用发布的完整体验
原生鸿蒙应用市场开发者服务的技术解析:从集成到应用发布的完整体验
|
12天前
|
存储 弹性计算 NoSQL
"从入门到实践,全方位解析云服务器ECS的秘密——手把手教你轻松驾驭阿里云的强大计算力!"
【10月更文挑战第23天】云服务器ECS(Elastic Compute Service)是阿里云提供的基础云计算服务,允许用户在云端租用和管理虚拟服务器。ECS具有弹性伸缩、按需付费、简单易用等特点,适用于网站托管、数据库部署、大数据分析等多种场景。本文介绍ECS的基本概念、使用场景及快速上手指南。
49 3
|
23天前
|
域名解析 网络协议
非阿里云注册域名如何在云解析DNS设置解析?
非阿里云注册域名如何在云解析DNS设置解析?
|
16天前
|
运维 Cloud Native 持续交付
云原生技术解析:从IO出发,以阿里云原生为例
【10月更文挑战第24天】随着互联网技术的不断发展,传统的单体应用架构逐渐暴露出扩展性差、迭代速度慢等问题。为了应对这些挑战,云原生技术应运而生。云原生是一种利用云计算的优势,以更灵活、可扩展和可靠的方式构建和部署应用程序的方法。它强调以容器、微服务、自动化和持续交付为核心,旨在提高开发效率、增强系统的灵活性和可维护性。阿里云作为国内领先的云服务商,在云原生领域有着深厚的积累和实践。
47 0
|
23天前
|
监控 网络协议 数据挖掘
阿里云国际云解析DNS如何开启/关闭流量分析?
阿里云国际云解析DNS如何开启/关闭流量分析?
|
24天前
|
人工智能 分布式计算 数据处理
阿里云与传智教育联合直播:深度解析MaxFrame,探索量化交易新纪元
2024年10月15日,阿里云与传智教育联合举办了一场主题为“解密新一代AI+Python分布式计算框架MaxFrame”的直播,对阿里云最新推出的分布式计算框架MaxFrame进行了详细的介绍。
194 0

相关产品

  • 云解析DNS
  • 推荐镜像

    更多