DNS服务器概念

2023-10-27

DNS服务概述:
DNS(Domain Name System)域名系统,在TCP/IP 网络中有非常重要的地位,能够提供域名与IP地址的解析服务。

DNS 是一个分布式数据库,命名系统采用层次的逻辑结构,如同一棵倒置的树,这个逻辑的树形结构称为域名空间,由于DNS 划分了域名空间,所以各机构可以使用自己的域名空间创建DNS信息。
注:DNS 域名空间中,树的最大深度不得超过127 层,树中每个节点最长可以存储63 个字符。
在这里插入图片描述
1、域和域名
DNS 树的每个节点代表一个域,通过这些节点,对整个域名空间进行划分,成为一个层次结构。
域名空间的每个域的名字,通过域名进行表示。

域名:通常由一个完全合格域名(FQDN)标识。FQDN能准确表示出其相对于DNS 域树根的位置,也就是节点到DNS 树根的完整表述方式,从节点到树根采用反向书写,并将每个节点用“.”分隔,对于DNS 域google 来说,其完全正式域名(FQDN)
为google.com
例如,google为com域的子域,其表示方法为google.com,而www为google域中的子域,可以使用www.google.com表示。

注意:通常,FQDN 有严格的命名限制,长度不能超过256 字节,只允许使用字符a-z,0-9,A-Z
和减号(-)。点号(.)只允许在域名标志之间(例如“google.com”)或者FQDN 的结尾使用。
域名不区分大小。
由最顶层到下层,可以分成:根域、顶级域、二级域、子域。

Internet 域名空间的最顶层是根域(root),其记录着Internet 的重要DNS 信息,由Internet域名注册授权机构管理,该机构把域名空间各部分的管理责任分配给连接到Internet 的各个组织。
“.”全球有13个根(root)服务器
DNS 根域下面是顶级域,也由Internet 域名注册授权机构管理。共有3 种类型的顶级域。
组织域:采用3 个字符的代号,表示DNS 域中所包含的组织的主要功能或活动。比如com 为商业机构组织,edu 为教育机构组织,gov 为政府机构组织,mil 为军事机构组织,net 为网络机构组
织,org 为非营利机构组织,int 为国际机构组织。

地址域:采用两个字符的国家或地区代号。如cn 为中国,kr 为韩国,us 为美国。
反向域:这是个特殊域,名字为in-addr.arpa,用于将IP 地址映射到名字(反向查询)。
对于顶级域的下级域,Internet 域名注册授权机构授权给Internet 的各种组织。当一个组织获得了对域名空间某一部分的授权后,该组织就负责命名所分配的域及其子域,包括域中的计算机和其他设备,并管理分配的域中主机名与IP 地址的映射信息。

2、区(Zone)
区是DNS 名称空间的一部分,其包含了一组存储在DNS 服务器上的资源记录。
使用区的概念,DNS 服务器回答关于自己区中主机的查询,每个区都有自己的授权服务器。

3、主域名服务器与辅助域名服务器
当区的辅助服务器启动时,它与该区的主控服务器进行连接并启动一次区传输,区辅助服务器定期与区主控服务器通信,查看区数据是否改变。如果改变了,它就启动一次数据更新传输。
每个区必须有主服务器,另外每个区至少要有一台辅助服务器,否则如果该区的主服务器崩溃了,就无法解析该区的名称。
辅助服务器的优点:
1)容错能力
配置辅助服务器后,在该区主服务器崩溃的情况下,客户机仍能解析该区的名称。一般把区的主
服务器和区的辅助服务器安装在不同子网上,这样如果到一个子网的连接中断,DNS 客户机还能
直接查询另一个子网上的名称服务器。
2)减少广域链路的通信量
如果某个区在远程有大量客户机,用户就可以在远程添加该区的辅助服务器,并把远程的客户机
配置成先查询这些服务器,这样就能防止远程客户机通过慢速链路通信来进行DNS 查询。
3)减轻主服务器的负载
辅助服务器能回答该区的查询,从而减少该区主服务器必须回答的查询数。
4、DNS 相关概念
(1)DNS 服务器
运行DNS 服务器程序的计算机,储存DNS 数据库信息。DNS 服务器会尝试解析客户机的查询请求。
在解答查询时,如果DNS 服务器能提供所请求的信息,就直接回应解析结果,如果该DNS 服务器
没有相应的域名信息,则为客户机提供另一个能帮助解析查询的服务器地址,如果以上两种方法
均失败,则回应客户机没有所请求的信息或请求的信息不存在。
(2)DNS 缓存
DNS 服务器在解析客户机请求时,如果本地没有该DNS 信息,则可以会询问其他DNS 服务器,当
其他域名服务器返回查询结果时,该DNS 服务器会将结果记录在本地的缓存中,成为DNS 缓存。
当下一次客户机提交相同请求时,DNS 服务器能够直接使用缓存中的DNS 信息进行解析。

2)DNS查询方式: 递归查询和迭代查询
看一个DNS查询过程:
通过8个步骤的解析过程就使得客户端可以顺利访问www.163.com 这个域名,但实际应用中,通常这个过程是非常迅速的
在这里插入图片描述
<1> 客户机提交域名解析请求,并将该请求发送给本地的域名服务器。
<2> 当本地的域名服务器收到请求后,就先查询本地的缓存。如果有查询的DNS 信息记录,则直
接返回查询的结果。如果没有该记录,本地域名服务器就把请求发给根域名服务器。
<3> 根域名服务器再返回给本地域名服务器一个所查询域的顶级域名服务器的地址。
<4> 本地服务器再向返回的域名服务器发送请求。
<5> 接收到该查询请求的域名服务器查询其缓存和记录,如果有相关信息则返回客户机查询结
果,否则通知客户机下级的域名服务器的地址。
<6> 本地域名服务器将查询请求发送给返回的DNS 服务器。
<7> 域名服务器返回本地服务器查询结果(如果该域名服务器不包含查询的DNS 信息,查询过程
将重复<6>、<7>步骤,直到返回解析信息或解析失败的回应)。
<8> 本地域名服务器将返回的结果保存到缓存,并且将结果返回给客户机。

5、两种查询方式:
(1)递归查询
递归查询是一种DNS 服务器的查询模式,在该模式下DNS 服务器接收到客户机请求,必须使用一
个准确的查询结果回复客户机。如果DNS 服务器本地没有存储查询DNS 信息,那么该服务器会询
问其他服务器,并将返回的查询结果提交给客户机。

(2)迭代查询
DNS 服务器另外一种查询方式为迭代查询,当客户机发送查询请求时,DNS 服务器并不直接回复查询结果,而是告诉客户机另一台DNS 服务器地址,客户机再向这台DNS 服务器提交请求,依次循环直到返回查询的结果为止。

6、正向解析与反向解析
1)正向解析
正向解析是指域名到IP 地址的解析过程。
在这里插入图片描述
2)反向解析
反向解析是从IP 地址到域名的解析过程。反向解析的作用为服务器的身份验证。
http://dns.aizhan.com/
在这里插入图片描述
7、DNS资源记录
1)SOA 资源记录
每个区在区的开始处都包含了一个起始授权记录(Start of Authority Record),简称SOA 记录。
SOA 定义了域的全局参数,进行整个域的管理设置。一个区域文件只允许存在唯一的SOA 记录。
2)NS 资源记录
NS(Name Server)记录是域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析。每个区在区根处至少包含一个NS 记录。
3)A 资源记录
地址(A)资源记录把FQDN 映射到IP 地址。 因为有此记录,所以DNS服务器能解析FQDN域名对应的IP 地址。
4)PTR 资源记录
相对于A 资源记录,指针(PTR)记录把IP地址映射到FQDN。 用于反向查询,通过IP地址,找到域名。
5)CNAME 资源记录
别名记录(CNAME)资源记录创建特定FQDN 的别名。用户可以使用CNAME 记录来隐藏用户网络的实现细节,使连接的客户机无法知道真正的域名。
例:ping百度时,解析到了百度的别名服务器。百度有个cname=www.a.shifen.com.的别名
在这里插入图片描述
6)MX 资源记录
邮件交换(MX)资源记录,为DNS 域名指定邮件交换服务器。
邮件交换服务器是为DNS 域名处理或转发邮件的主机。处理邮件指把邮件投递到目的地或转交另一不同类型的邮件传送者。转发邮件指把邮件发送到最终目的服务器,用简单邮件传输协议SMTP 把邮件发送给离最终目的地最近的邮件交换服务器,或使邮件经过一定时间的排队。
以上是相关概念。

模式: C/S 模式
2、端口
[root@xuegod64 ~]# vim /etc/services
端口:
tcp/53 udp/53 #用于客户端查询
tcp/953 udp/953 #用于DNS主从同步

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

DNS服务器概念 的相关文章

  • 对于傅里叶变换的小结

    原本写在word中 含有一些公式不容易搬移 因此输出长图发布在博客中 个人理解有限 如有错误欢迎交流指出 关于参数化谱估计可以参考我以前的几篇博客 Yule Walker方程法参数化谱估计 Python实现版 Levinson Durbin
  • Ceres与colmap安装

    已在ubuntu18 04上成功安装ceres1 14 0和colmap ceres1 14 0基本没错 找tag里的1 14 0压缩包 因为复制的git链接都指定了下载最新版本 colmap 安装cmakelist 添加set CMAKE
  • 深入了解C/C++开发就业前景如何?

    C C 编程语言 作为编程行业里出现较早的编程语言 几十年来 因为语言灵活 数据结构丰富 具有结构化 平台移植力强 程序执行效率高等特点 广受关注与应用 深入了解C C 开发就业前景如何 即使新编程语言不断涌出 智能化水平越来越高 也无法挑
  • 牧师与恶魔过河游戏——智能提示

    前言 这次实现一个含提示功能的牧师与恶魔过河小游戏 主要在上一个版本的牧师与恶魔小游戏上进行更改 通过增加一个状态计算和改版了得寻路算法 实现向玩家提示如何胜利完成游戏 游戏主体实现思路见上一篇博客 牧师与恶魔小游戏 动作分离版 游戏效果图
  • 考研英语二大作文模板/图表作文,英语图表作文这一篇就够了

    常见图表类型 表格 它表示多种事物的相互关系 曲线 它常表示事物的变化趋势 柱状 它用来表示几种事物的变化情况及相互关系 饼状 表示各事物在总体中所占的比例及相互关系 其中 柱形图和饼形图出现的频率比较高 图表作文结构 Para 1 描述图
  • 电动车结构及其工作原理

    电动车结构及其工作原理 文章目录 电动车结构及其工作原理 电动车定义 电动车结构 电源系统 电力驱动系统 整车控制器 辅助系统 电动车可能存在的结构形式 电动车定义 纯电动汽车是完全由可充电电池 如铅酸电池 镍镉电池 镍氢电池或锂电子电池
  • Ubuntu更改下载源

    Ubuntu更改下载源 今天美滋滋的打开ubuntu准备下载一个语言包 对于英语不好的我来说 看全英文版的ubuntu系统太吃力了 感觉系统极其不友好 哈哈 然后准备下在一个语言包 但是下载速度及其的慢 只有十几kb每秒 如果按照这样的速度
  • FastAPI利用装饰器实现定时任务

    因为 FastAPI 本身就是高性能异步框架 所以在不使用任何第三方定时任务模块的情况下 FastAPI 也可以很方便的实现定时任务 创建一个 tasks py 文件 复制下面的装饰器代码 import asyncio from logur
  • MyBatis详细执行流程

    目录 MyBatis详细的执行流程 1 创建加载核心配置文件的inputStream流 1 1 Recourse getResourceAsStream String resource 方法 1 2 getResourceAsStream
  • React中使用CSS样式的五种方法,主流推荐CSS Modules和Styled Components

    前言 由于 React的JSX语法 能在React中使用样式的方式有很多 本文主要介绍在React中经常使用CSS样式的五种方法 1行内样式 2声明样式 3引入样式 4 CSS Modules模块化 5 Styled component 1
  • DolphinScheduler3.0.1(数据质量)

    DolphinScheduler3 0 1 数据质量 Refer 1 data quality jar包修改 1 配置文件修改 2 依赖不明确问题 3 scope多修改问题 2 实现方式 1 Spark提交 2 结构解析 1 图1 2 图2
  • Blender一些建模技巧与应用

    平滑卡线 加线 卡结构线 加线 时 按E均匀线条会使加线与边线均匀对齐 投影切割 投影切割 使用调形后的曲线 放到模型表面上方进行投影切割 投影形状是 曲线范围内所能看到的模型 就是切割后的形状 使用流程 1 调整好曲线与屏幕的角度 想完全
  • 并行计算之OpenMP简介

    OpenMP环境安装 基于ubuntu20 04 sudo apt get update sudo apt get install libomp dev OpenMP概述 面向多线程并行编码的编译指导语句 如 pragma omp para
  • ssh连接远程主机执行脚本的环境变量问题

    近日在使用ssh命令ssh user remote myscript sh登陆到远程机器remote上执行脚本时 遇到一个奇怪的问题 myscript sh line n app command not found app是一个新安装的程序
  • ElasticSearch7之function_socre使用心得

    介绍 1 function score是可以修改查询检索文档的分数 使用function score必须定义 一个查询和一个或多个函数 为查询返回的每个文档计算一个新的分数 function score提供的评分函数 1 weight 设置
  • UReport2 报表设计器 在线表格

    UReport2官网 一 UReport2报表设计器 UReport2是一个开源的可视化报表设计器 功能强大 操作简单 可以实现复杂的报表统计 有各种各样的导出和打印功能 支持导入Excel表格 1 报表设计器 2 设计一个简单的用户列表展
  • ifstream之seekg/tellg

    声明 我个人特别讨厌 收费专栏 关注博主才可阅读等行为 推崇知识自由分享 推崇开源精神 呼吁你一起加入 大家共同成长进步 在文件读写的时候 一般需要借助fstream来进行文件操作 常见的操作有seekg 和tellg 但是这两个函数有一些
  • 机器学习之——单变量线性回归

    线性回归 线性回归 Linear Regression 作为Machine Learning 整个课程的切入例子确实有独到的地方 以简单的例子为出发点 将学习任务的主干串起来 问题的建模可以简单如下图所示 线性回归可以分为单变量线性回归 L
  • media sdk 性能优化

    https software intel com sites default files m 2 0 a 7 9 28439 Intel Media SDK E4 B9 8B E4 BC 98 E5 8C 96 E6 8A 80 E6 9C
  • SQLServer开启远程连接

    一 在需要被远程连接的电脑客户端中打开命令提示符输入 ipconfig 找到IPV4地址 二 在SQLServer配置管理器中找到端口 三 1 打开 控制面板 2 打开 系统和安全 3 打开 WindowDefender防火墙 4 打开 高

随机推荐

  • C#中 Console方法介绍

    一般情况下 我们用来输入信息的方法主要是用到如下四个 1 console log 用于输出普通信息 2 console info 用于输出提示性信息 3 console error 用于输出错误信息 4 console warn 用于输出警
  • 20世纪最好的十大算法、算法笔记(2008-11-15 22:16:57、2011-04-21 19:29:05)

    Algorithm 算法 一词与9世纪的阿拉伯学者al Khwarizmi有关 他写的书 al jabr w al muqabalah 代数学 演变成为现在中学的代数教科书 Ad Khwarizmi强调求解问题的有条理的步骤 20世纪最好的
  • 启动虚拟机异常(完整版)——如果已在 BIOS/固件设置中禁用 Intel VT-x,或主机自更改此设置后从未重新启动,则Intel VT-x处于禁用状态

    创建了Linux虚拟机 点击 开机 之后 报了这个错误 笔记本电脑 我的 联想天逸 笔记本电脑 许多键与其他的 比如 华硕笔记本电脑 不同 想在操作系统中按F2 要Fn加 减音量 才有F2的功能 我将这个思想带到 启动BIOS 中 害惨了我
  • vue 使用 wangeditor 富文本编辑器

    wangeditor 是一个轻量级 web 富文本编辑器 配置方便 使用简单 1 安装 wangeditor 终端安装 wangeditor 库 yarn add wangeditor editor 或者 npm install wange
  • 腾讯云数据库CDB技术演进之路

    IT168 专稿 本文根据 2016 第八届系统架构师大会 微信搜索SACC2013 关注系统架构师大会公众号 现场演讲嘉宾程彬老师分享内容整理而成 录音整理及文字编辑IT168 田晓旭 老鱼 嘉宾简介 程彬 腾讯基础架构部数据库研发负责人
  • SQLSERVR 转换为数字类型numeric时出现算数溢出错误

    SQLSERVR 转换为数字类型numeric时出现算数溢出错误 情况一 在SQLSERVER中 关于数据的计算可能会导致出现如下的错误 遇到这类问题 一般都是由于结果超过了这个字段的长度 个字段的属性的概念 create table T1
  • 教你怎么用Vulnhub来搭建环境

    0x01 前言 Vulnhub它是一个提供各种漏洞环境的平台 里面大部分的环境是要用VMware或者VirtualBox打开运行的 如果只是练习一些常见的漏洞可以看我另外两篇用Docker来搭建各种漏洞靶场 妈妈再也不用担心我没有靶场练习了
  • 递归实现全排列

    设 R r1 r2 rn 是需要排列的 N 个元素 Ri R ri 设集合 中的元素 全排列记 为 Perm X ri Perm X 表示在 全排列 Perm X 的每一个排列前加上前缀 ri 得到的全排列 例如在 Perm X 的排列为
  • [java]java使用AES加密解密 ,AES-128/192/256-ECB加密模式

    直接上代码 是在springboot下直接test的 import org apache commons codec binary Base64 import org junit Test import org junit runner R
  • 【Linux 驱动篇(四)】设备树

    文章目录 一 什么是设备树 二 DTS DTB 和 DTC 三 DTS 语法 1 dtsi 头文件 2 设备节点 3 标准属性 3 1 compatible 属性 3 2 model 属性 3 3 status 属性 3 4 address
  • 4种线程池详解

    要配置一个线程池是比较复杂的 尤其是对于线程池的原理不是很清楚的情况下 很有可能配置的线程池不是较优的 因此在Executors类里面提供了一些静态工厂 生成一些常用的线程池 文章目录 ExecutorService概述 newSingle
  • HttpComponents(Apache HttpComponents Client 4.1.3)通过代理访问网页的设置方法

    HttpClient httpclient new DefaultHttpClient 这里是设置代理服务器的地方 HttpHost proxy new HttpHost 10 10 228 43 808 http httpclient g
  • win7 升级到 win10

    摘要 项目上遇到一个问题 客户提供一个软件在设备上点击运行后 转圈加载下就没有下文了 但是其他的软件又能正常运行 尝试了漏洞修护 系统修护 兼容性运行 管理员运行 32位兼容性进程检测等方式都不行 只能采取将win7升级到win10一试 在
  • vue学习,v-for不渲染

    最近在学习vue 使用axios v for做个搜索天气的小练习 发现只有第一次搜索有数据 改变数组后vue for不渲染 但使用console log可以看到数据确实更新了 使用this forceUpdate 这个不起作用 没办法了 只
  • Python实现桶排序

    Python实现桶排序 一 桶排序简介 桶排序 Bucket sort 是一种通过分桶和合并实现的排序算法 又被称为箱排序 桶排序先将数据分到有限数量的桶里 然后对每一个桶内的数据进行排序 桶内排序可以使用任何一种排序算法 如快速排序 最后
  • JVM系列(九) 垃圾收集器之 Serial / Serial Old

    回收期演变及概览 前面我们讲了很多 垃圾收集的原理和知识点 下面我们针对各种垃圾收集器进行JVM调优 JVM调优其实都是根据对应的垃圾收集器特性而去做调整和优化 不同垃圾收集器的产生总体可以划分为几个阶段 第一阶段 单线程收集时代 Seri
  • 【Unity粒子系统】

    转自 https blog csdn net m0 37679113 article details 75893700 接下来的图片就是Unity2017 1 0f3 编辑器中的粒子系统模块 了解粒子系统 必须先了解每一个属性都代表了什么
  • 程序员为什么被叫做“码农”,我来和大家聊一聊

    在现代社会 计算机技术和互联网行业的迅速发展 使得程序员这个职业在人们心中越来越受到重视 然而 与此同时 也出现了一些对于程序员职业的误解和偏见 今天我就想和小伙伴们一起聊聊这个有趣的话题 程序员被叫做 码农 名字的由来 让大家更加了解程序
  • rt-thead-studio 中实现 MPU6050基于DMP中断读取数据

    rt thead studio 中实现 MPU6050基于DMP中断读取数据 目录 文章目录 rt thead studio 中实现 MPU6050基于DMP中断读取数据 目录 toc 前言 mpl高级特性库问题 一 基于开发板创建闪灯工程
  • DNS服务器概念

    DNS服务概述 DNS Domain Name System 域名系统 在TCP IP 网络中有非常重要的地位 能够提供域名与IP地址的解析服务 DNS 是一个分布式数据库 命名系统采用层次的逻辑结构 如同一棵倒置的树 这个逻辑的树形结构称