网络协议

DNS 和 HttpDNS

DNS

简单举例了 DNS 的一些关键词。

  • 域名解析系统 Domain Name System
  • 域名和 IP 地址映射
  • 分布式数据库系统
  • 基于 UDP 协议,也可以基于 TCP 协议
  • 默认 53 端口
  • 13 个根服务器,一个主根服务器,其他为辅根服务器

DNS 查询

DNS 是一个分布式的系统,有 13 个根服务器,一个是主根服务器,其他的是辅根服务器。不管是哪个服务器,都不会存储所有域名和 IP 地址的映射的。于是 DNS 查询是采用分级,递归的查询方式的。每一次查询,都是先向本地的服务器查询,本地服务器没有,再向本地服务器的上一级服务器查询。这和现实世界有很多一样的地方。

DNS 污染 DNS 劫持

DNS 是基于 TCP 或者 UDP 协议,本身并不是一个安全的协议。DNS 污染,DNS 劫持是时常会发生的,而且一般影响的范围都不小。除了用户不能正常访问网络外,更大的风险是用户信息安全的问题。Https 协议的主要作用,就是保护用户的信息安全,避免在域名被劫持后,敏感的数据被发送到黑客的服务器上。

HttpDNS

HttpDns 是另外一种思路,如果我们解析域名的时候,不向 DNS 服务器查询,而是直接向某个 HTTP 服务器查询,这样,只要保证客户端到 HTTP 服务器之间是安全的,那么就不会存在被劫持的风险了。

HttpDNS 的优缺点:

  • 降低了 DNS 劫持的风险
  • 减少了 DNS 解析时间,单次 Http 请求时间和传统的 DNS 解析相比起来可能并不占优势,同时也依赖域名 Http 服务器的稳定性和访问速度
  • 及时的 DNS 切换时间,传统的 DNS 是分布式的数据系统,虽然有约定的 DNS 缓存时间规则,但是实际上各个子 DNS 服务器的缓存并不完全遵循规则,以致于我们切换了 IP 地址,还有很多用户没有及时切换。

EOF

本文作者:Binkery
本文地址:https://binkery.com/archives/601.html
版权声明:欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果