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

DNS详解

DNS详解

DNS 是一个域名系统,它主要用于将人类容易记忆的域名转换成ip地址。

默认情况下,设备会自动从网络供应商获取DNS服务器地址,并使用DNS服务器对域名进行解析。

此外,你也可以手动设置DNS服务器,具体操作系统的操作步骤可以进行网络查询。

分布式架构

DNS是分布式架构的,全球拥有多个根服务器。

  • 根服务器:DNS最顶层,管理顶级域(.com,.net…)。
  • 顶级域名服务器:管理特定顶级域下的域名信息。(如.com)
  • 权威DNS服务器:存储特定域名的信息。
  • 递归解析器:用于接收用户DNS查询请求,并递归的向其他DNS服务器查询ip地址。

查询过程

这里在以浏览器输入一个域名开始为例:

  1. 查询本地是否包含DNS缓存,如果不存在则向递归解析器发起请求
  2. 递归解析器查看本地是否包含缓存结果,如果没有,则向根服务器发起查询请求。
  3. 根服务器返回管理特定顶级域的顶级域名服务器
  4. 递归解析器向顶级服务器发起查询请求
  5. 顶级服务器返回管理特定域名权威DNS服务器的地址
  6. 递归解析器向权威DNS服务器发起查询请求,权威DNS服务器返回特定域名的ip地址。
  7. 递归解析器将ip地址返回给设备。

在这里插入图片描述

例子

dig +trace www.baidu.com
; <<>> DiG 9.10.6 <<>> +trace www.baidu.com
;; global options: +cmd
.                       352657  IN      NS      j.root-servers.net.
.                       352657  IN      NS      h.root-servers.net.
.                       352657  IN      NS      l.root-servers.net.
.                       352657  IN      NS      d.root-servers.net.
.                       352657  IN      NS      k.root-servers.net.
.                       352657  IN      NS      b.root-servers.net.
.                       352657  IN      NS      e.root-servers.net.
.                       352657  IN      NS      i.root-servers.net.
.                       352657  IN      NS      g.root-servers.net.
.                       352657  IN      NS      m.root-servers.net.
.                       352657  IN      NS      f.root-servers.net.
.                       352657  IN      NS      c.root-servers.net.
.                       352657  IN      NS      a.root-servers.net.
;; Received 811 bytes from 192.168.2.1#53(192.168.2.1) in 24 mswww.baidu.com.          600     IN      CNAME   www.a.shifen.com.
www.a.shifen.com.       600     IN      A       180.101.50.242
www.a.shifen.com.       600     IN      A       180.101.50.188

可以看到 www.baidu.com 是一个别名,它的真实域名是www.a.shifen.com。j.root-servers.net代表根服务器名称。

网站访问、负载均衡、内容分发系统(CDN)

在网站访问,负载均衡,CDN经常会用到DNS。

如负载均衡,将同一个域名解析为不同的ip地址,根据不同服务器的负载转给不同服务器去执行。

CDN,将域名的ip的地址解析为离用户较近的服务器,加快数据传输,减少传输延迟等。

其他

DNS缓存污染

攻击者向DNS解析器里注入恶意的DNS记录,导致用户访问恶意网站或者钓鱼网站。

DNS劫持

将用户DNS请求重定向到恶意DNS服务器,导致用户不正确的ip地址。


http://www.mrgr.cn/news/11664.html

相关文章:

  • 国际业务产品系统应用架构设计
  • 零工市场小程序应该有什么功能?
  • 没有大海也能冲浪-带你学习尾波冲浪
  • 打卡学习Python爬虫第五天|使用Xpath爬取豆瓣电影评分
  • 流媒体协议分析
  • npm install报错解决记录
  • MySQL空间管理:查询、优化与碎片清理
  • 毕 业 设 计(论 文)远程接入企业网络规划与设计
  • 【Docker】安装Docker环境遇到的坑(VirtualBox)
  • 设计模式之简单工厂模式
  • npm镜像源报错 unexpected token >
  • zotero同步之infiniteCLOUD网盘 WebDAV
  • vue3组件封装系列-表格及分页-第二弹
  • word文档合并样式问题
  • 国产游戏行不行,主要还得“盘”商业模式!
  • 【Docker】Linux系统以及威联通QNAP部署思源笔记的通用教程
  • 一文读懂 DDD领域驱动设计
  • Overleaf中插图需要的pdf图片格式制作方法(python)
  • 【RST示例】Pick and Place Using RRT for Manipulators使用 RRT(快速扩展随机树)进行机械臂的抓取与放置
  • 『功能项目』技能释放【08】