当前位置: 首页 > news >正文

DNS,DNS污染劫持,DNS加密

1. DNS(Domain Name System)

DNS(Domain Name System), 也叫网域名称系统,是互联网的一项服务。它实质上是一个 域名 和 IP 相互映射的分布式数据库.

DNS(Domain Name Server,域名服务器)是进行域名(domain name)和与之相对应的IP地址 (IP address)转换的服务器。

DNS 有以下特点:

  • 分布式的

  • 协议支持 TCP 和 UDP,常用端口是 53

  • 每一级域名的长度限制是 63

  • 域名总长度限制是 253

1.1 DNS 解析流程

1.2 域名注册商

一般我们要注册域名,都要需要找域名注册商,比如说我想注册 hello.com,那么我需要找com域名注册商注册hello域名。com的域名注册商不止一家, 这些域名注册商也是从ICANN 拿到的注册权, 参见如何申请成为.com域名注册商

那么,域名注册商 和 权威域名解析服务器 有什么关系呢?

域名注册商都会自建权威域名解析服务器,比如你在狗爹上申请一个.com下的二级域名,你并不需要搭建nameserver, 直接在godaddy控制中心里管理你的域名指向就可以了, 原因就是你新域名的权威域名服务器默认由域名注册商提供。当然你也可以更换,比如从godaddy申请的境外域名,把权威域名服务器改成DNSPod,一方面加快国内解析速度,另一方面还能享受DNSPod 提供的智能解析功能

2. DNS污染、DNS劫持

两者最大的区别,DNS 污染是阻断你访问网站,目的是不让你访问;DNS 劫持则是让你访问一个虚假的李鬼网站,或者在你访问的网站上擅自插入自己的广告,以及私自增加 DNS 缓存时间等。

2.1 DNS 污染

又称域名服务器缓存投毒(DNS cache poisoning),是指把域名指往不正确的 IP 地址。比如张三的手机号明明是 11 位的中国电信手机号码,通讯录却写的是 10 位数的美国人赫本的手机号,跨国长途自然是打不通或者打通了也不是张三的结果。

2.2 DNS 劫持

DNS 劫持一般是提供上网服务的运营商所为,用户查询 DNS 时,返回修改后的指定 IP 地址,网页无法打开或者打开的是一个假网站,或插入自己的广告。

比如张三是卖茶叶的,你找张三想买一些茶叶,通过通讯录打过去,结果通讯录从中使坏,将手机号写成了也是卖茶叶的李四,最终你以为买的茶叶是张三的,实际上茶叶是李四。

3. DNS 加密方式:DoH/DoT

3.1 DoH 和 DoT

传统 DNS 查询数据以明文方式传输,容易被污染和劫持,非常的不安全;使用加密 DNS 可以避免运营商的劫持,以及使用大数据分析你所有访问的网站详情。

DoH 全称 DNS Over HTTPS,使用 HTTPS 应用层协议代替传统的无连接无加密的 UDP 模式,保护 DNS 数据传输安全,可有效避免域名被运营商劫持、DNS 缓存投毒等域名安全问题。

DoT 全称 DNS over TLS,安全原理与 DoH 一样都是使用 TLS 协议来传输 DNS 协议;采用固定的 853 端口,特征明显;比 DOH 少了一层 HTTP,理论上性能略高于 DOH。

3.2 公共加密 DNS 服务

目前已有多个国内外公共 DNS 提供加密 DNS 服务,如:

  • 国内的:只能保证不劫持 国家地方联合工程研究中心的 IPv6 公共 DNS、腾讯 DNS (DNSPod)、阿里 DNS (Alidns)云、360 安全 DNS ;

  • 国外的:多数国内不可用 Google Public DNS、Cloudflare DNS、Quad9 DNS、OpenDNS 等;

Reference

https://www.ruanyifeng.com/blog/2016/06/dns.html

一文搞懂 DNS 基础知识,收藏起来有备无患

DNS解析过程详解

http://www.lryc.cn/news/17503.html

相关文章:

  • 【Python】如何度量优秀代码——静态分析工具
  • Open3D 点云高程归一化(基于2维地面点,Python版本)
  • 动态系统的建模与分析
  • QCC51XX---HCI log
  • Redis四 原理篇
  • 从0开始写Vue项目-Vue实现数据渲染和数据的增删改查
  • AI技术的发展,人工智能对我们的生活有那些影响?
  • Unity中的Mathf数学运算讲解(值得收藏)
  • ABBYY FineReader16最新PDF图片文字识别软件
  • Leetcode14. 最长公共前缀
  • JTT808jt1078
  • 数字孪生加持,水利水电工程或将实现全生命周期管理
  • RA4M2开发(3)----读取ISL29035数据,并在OLED上显示,串口打印
  • 密码复杂度
  • Python打印() 中的 SEP 参数
  • AG9300方案替代|替代AG9300设计Type-C转VGA方案|CS5260设计原理图
  • 力扣-文章浏览
  • Unity提取场景中的静态文本
  • Netty常用核心类说明
  • ingress服务
  • java 抽象类 详解
  • MySQL的安装(详解)
  • 界面控件DevExpress WinForm——轻松构建类Visual Studio UI(二)
  • BabylonJS之放烟花
  • vue3 布局样式的原理
  • Qt程序使用路径方式和注意事项
  • 和日期相关的代码和bug——一道力扣题中的小发现
  • 如何在2023年学习编程并获得开发者工作
  • Python实战之小说下载神器(三)排行榜所有小说:最全热门小说合集,总有一款适合你,好多好多好多超赞的小说...(源码分享学习)
  • 前端监控之用户行为监控实践1(数据收集)