全面理解 DNS 及 HTTPDNS
码农突围
共 9125字,需浏览 19分钟
·
2021-10-25 22:45
点击上方“码农突围”,马上关注
这里是码农充电第一站,回复“666”,获取一份专属大礼包 真爱,请设置“星标”或点个“在看
1. DNS
1.1 认识DNS
1.2 DNS解析相关概念
1.2.1 DNS域名层次结构
1.2.2 权威DNS
权威DNS是经过上一级授权对域名进行解析的服务器,同时它可以把解析授权转授给其他人,如COM顶级服务器可以授权xxorg.com这个域名的的权威服务器为NS.ABC.COM,同时NS.ABC.COM还可以把授权转授给NS.DDD.COM,这样NS.DDD.COM就成了ABC.COM实际上的权威服务器了。平时我们解析域名的结果都源自权威DNS。eg: 阿里云云解析 [https://wanwang.aliyun.com/domain/dns](https://wanwang.aliyun.com/domain/dns)
1.2.3 递归DNS
1.2.4 公共DNS
1.2.5 转发DNS
1.3 域名解析记录方式
A记录:A代表Address,用来指定域名对应的ip,例如将www.hello.com指定到 113.112.3.xxx, A记录可以将多个域名解析到一个ip地址,但是不能讲一个域名解析到多个ip地址 MIX记录:Mail Exchange,就是可以将某个域名下的邮件服务器直线给自己的Mail Server CNAME记录:Canonical Name,即别名解析。所谓别名解析就是可以为一个域名设置一个或者多个别名,如将aaa.com解析到bbb.net、将ccc.com也解析到bbb.net,其中bbb.net分别是aaa.com和ccc.com的别名 NS记录:为某个域名指定DNS解析服务器,也就是这个域名由指定的IP地址的DNS服务器解析 TXT记录:为某个主机名或域名设置说明,如可以为ucloud.cn是指TXT记录为“中立安全科信赖”这样的说明
1.4 域名解析过程
macdeiMac:~ ethan$ dig +trace www.baidu.com
; <<>> DiG 9.10.6 <<>> +trace www.baidu.com
;; global options: +cmd
. 1615 IN NS a.root-servers.net.
. 1615 IN NS g.root-servers.net.
. 1615 IN NS f.root-servers.net.
. 1615 IN NS l.root-servers.net.
. 1615 IN NS m.root-servers.net.
. 1615 IN NS j.root-servers.net.
. 1615 IN NS k.root-servers.net.
. 1615 IN NS c.root-servers.net.
. 1615 IN NS b.root-servers.net.
. 1615 IN NS d.root-servers.net.
. 1615 IN NS i.root-servers.net.
. 1615 IN NS e.root-servers.net.
. 1615 IN NS h.root-servers.net.
;; Received 239 bytes from 114.114.114.114#53(114.114.114.114) in 10 ms
com. 172800 IN NS a.gtld-servers.net.
com. 172800 IN NS b.gtld-servers.net.
com. 172800 IN NS c.gtld-servers.net.
com. 172800 IN NS d.gtld-servers.net.
com. 172800 IN NS e.gtld-servers.net.
com. 172800 IN NS f.gtld-servers.net.
com. 172800 IN NS g.gtld-servers.net.
com. 172800 IN NS h.gtld-servers.net.
com. 172800 IN NS i.gtld-servers.net.
com. 172800 IN NS j.gtld-servers.net.
com. 172800 IN NS k.gtld-servers.net.
com. 172800 IN NS l.gtld-servers.net.
com. 172800 IN NS m.gtld-servers.net.
com. 86400 IN DS 30909 8 2 E2D3C916F6DEEAC73294E8268FB5885044A833FC5459588F4A9184CF C41A5766
com. 86400 IN RRSIG DS 8 1 86400 20191112050000 20191030040000 22545 . Sr1g7h+DSqi+ekBQQS2ZBc/jt0zL+IR+Od/R9TnMjcy8Mw9RxLrMY2pm 1VYNqL5cAME1stSAfRUKwjD/vixnCeVLoJ6idCFOZeB+t/tTFQF/jfk1 td66pW9V/WgLIvslAwEZjidVeUFYERc7hZXr10BgzryZthizHISimuiQ qBjoIQN/uYULTnmePkIW07mnJXc9/AVZrjeI1AmvYC7wE0uR7DWNg1Ig dL4DaLDOM30qN7FBAD7K091uEgctpdxd/8G5XoYclSqroN4G6RibvkWT /vPCFRUzoaxembT5tR7gIz7gxdhN1r8NBD468JTG180MNUvb16Z/87U6 7UkMrg==
;; Received 1173 bytes from 192.58.128.30#53(j.root-servers.net) in 77 ms
baidu.com. 172800 IN NS ns2.baidu.com.
baidu.com. 172800 IN NS ns3.baidu.com.
baidu.com. 172800 IN NS ns4.baidu.com.
baidu.com. 172800 IN NS ns1.baidu.com.
baidu.com. 172800 IN NS ns7.baidu.com.
CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN NSEC3 1 1 0 - CK0Q1GIN43N1ARRC9OSM6QPQR81H5M9A NS SOA RRSIG DNSKEY NSEC3PARAM
CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN RRSIG NSEC3 8 2 86400 20191103044815 20191027033815 12163 com. U/FwNWeuKzR/uT2X/8Cf9TQmnaMdWf6XwBrFIIOCQ/kfKaOExEiT8LSQ 13OaEjtvFOOlIPK0XIbsL+dgGPYb/UV6sipBeQ1n8KuK18m3bYk47Ely oe+3VVp0zaiXt9DZrmRRenBB13o0DPqCbRHAHq1pj5zG5VkMufu9L/TT g80XlNukAMcu4GrV4VP8OimOQxz7HJbadci2oYn3beiHqQ==
HPVV2B5N85O7HJJRB7690IB5UVF9O9UA.com. 86400 IN NSEC3 1 1 0 - HPVVN3Q5E5GOQP2QFE2LEM4SVB9C0SJ6 NS DS RRSIG
HPVV2B5N85O7HJJRB7690IB5UVF9O9UA.com. 86400 IN RRSIG NSEC3 8 2 86400 20191105055359 20191029034359 12163 com. J5Dq0lGkcejjg1vPqWDBvNYaAhqFF3Ck8trKj4tgW5Z1bmoXsHGU6/Cl y3GlLfzb49xjiXzxVLCuAQJ9uLuKSX5cn+kesc8rwYqcVXU4nXbD5jzo u3CK2yHD3FqPDCOKlMSNy3KKkL03bB3DfmvAae/qQs7xSe6VTpCkR6v/ lo3UA/pMfTYBjSIOvR2KmpM9yFLmN5LXAQW3rNH8sW91BA==
;; Received 761 bytes from 192.26.92.30#53(c.gtld-servers.net) in 241 ms
www.baidu.com. 1200 IN CNAME www.a.shifen.com.
a.shifen.com. 1200 IN NS ns2.a.shifen.com.
a.shifen.com. 1200 IN NS ns3.a.shifen.com.
a.shifen.com. 1200 IN NS ns4.a.shifen.com.
a.shifen.com. 1200 IN NS ns5.a.shifen.com.
a.shifen.com. 1200 IN NS ns1.a.shifen.com.
;; Received 215 bytes from 220.181.33.31#53(ns2.baidu.com) in 28 ms
www.a.shifen.com. 300 IN A 180.101.49.12
www.a.shifen.com. 300 IN A 180.101.49.11
a.shifen.com. 1200 IN NS ns4.a.shifen.com.
a.shifen.com. 1200 IN NS ns5.a.shifen.com.
a.shifen.com. 1200 IN NS ns1.a.shifen.com.
a.shifen.com. 1200 IN NS ns2.a.shifen.com.
a.shifen.com. 1200 IN NS ns3.a.shifen.com.
;; Received 236 bytes from 180.76.76.95#53(ns5.a.shifen.com) in 9 ms
macdeiMac:~ ethan$ nslookup www.baidu.com
Server: 114.114.114.114
Address: 114.114.114.114#53
Non-authoritative answer:
www.baidu.com canonical name = www.a.shifen.com.
Name: www.a.shifen.com
Address: 180.101.49.11
Name: www.a.shifen.com
Address: 180.101.49.12
终端向 Local DNS发起域名解析请求 Local DNS在获取到域名请求后,首先从Root hins获取根域名服务器的地址(Root hints包含了互联网DNS根服务器的地址信息) 获取到了根域名服务器地址后,Local DNS向根域名服务器发起DNS解析请求,根域名服务器返回顶级域名服务器地址(com或者cn或者其它) 随后Local DNS向com域名服务器发起解析请求,并得到baidu.com二级域名服务器地址 Local DNS向baidu.com二级域名服务器发起解析请求,并最终货到了www.baidu.com 的ip地址信息 Local DNS将递归查询获得的IP地址信息缓存并返回给客户端
3. 全局负载均衡GSLB
3.1 智能DNS
2. DNS解析存在的问题
2.1 运营商劫持
2.2 DNS解析域名时缓存解析结果
2.3 转发解析
3. HTTPDNS
3.1 什么是HTTPDNS
3.2 HTTPDNS的特性
3.2.1 防止域名劫持
3.2.2 精准调度
3.2.3 用户连接失败率下降
3.2 HTTPS IP Content
客户端发起握手请求,携带随机数、支持算法列表等参数。 服务端收到请求,选择合适的算法,下发公钥证书和随机数。 客户端对服务端证书进行校验,并发送随机数信息,该信息使用公钥加密。 服务端通过私钥获取随机数信息。 双方根据以上交互的信息生成session ticket,用作该连接后续数据传输的加密密钥。
客户端用本地保存的根证书解开证书链,确认服务端下发的证书是由可信任的机构颁发的。 客户端需要检查证书的domain域和扩展域,看是否包含本次请求的host。
4.问题
4.1 主机是如何知道DNS服务器地的IP地址的?
4.1 为什么DNS采用UDP协议 ?
- END - 最近热文
• 「老司机」盖茨再上热搜!被曝婚外情史将近20年,公然给女下属发邮件调情 • 奖金100万!北大“韦神”,获奖了! • 26岁应届博士被聘985博导!入职半年实现学院顶会论文零的突破 • 最新版!泛955、不加班、双休的公司名单
评论