DNS服务的部署与配置(1)

一、DNS的定义

1、域名系统(英文:Domain Name System,缩写:DNS)是互联网的一项服务。

         它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。 DNS使用UDP端口53。 当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。

2、DNS的作用

       当我们在浏览器输入www.baidu.com时,计算机并不知道谁是baidu 计算机只能识别ip,所有我们需要将www.baidu.com这个域名解析为ip才能继续通信 dns就提供了这个解析功能

3、DNS的分类

(1)权威DNS:
       权威DNS是经过上一级授权对域名进行解析的服务器,同时它可以把解析授权转授给其他人。
如COM顶级服务器可以授权dns.com这个域名的的权威服务器为NS.ABC.COM。
同时NS.ABC.COM还可以把授权转授给NS.DDD.COM。
这样NS.DDD.COM就成了ABC.COM实际上的权威服务器了。
平时我们解析域名的结果都源自权威DNS。
比如dns.com的权威DNS服务器就是帝恩思的ns1.dns.com ns2.dns.com
权威名称服务器的类型包括:
Master : 包含原始区域数据,有时称作 “主要 ”名称服务器
Slave : 备份服务器,通过区域传送从 Master 服务器获得的区域数据的副本,有时称作 “次要 ”名称服务器

(2)递归DNS(也叫本地DNS):
     其核心功能一个是缓存、一个是递归查询。
收到域名查询请求后其首先看本地缓存是否有记录,
如果没有则一级一级的查询根、顶级域、二级域……直到获取到结果然后返回给用户。
日常上网中运营商分配的DNS即这里所说的递归DNS。
//
负责接受用户对任意域名查询,并返回结果给用户。
递归DNS可以缓存结果以避免重复向上查询。
我们平时使用最多的就是这类DNS,他对公众开放服务,一般由网络运营商提供。
递归DNS一定要有可靠的互联网连接方可使用。
比如谷歌的8.8.8.8和8.8.4.4以及114的114.114.114.114和114.114.115.115都属于这一类DNS。
本地电脑上设置的DNS就是这类DNS。

(3)转发DNS:
      转发DNS是一种特殊的递归。
如果本地的缓存记录中没有相应域名结果时,
其将查询请求转发给另外一台DNS服务器,由另外一台DNS服务器来完成查询请求。
//
负责接受用户查询,并返回结果给用户。
但这个结果不是按标准的域名解析过程得到的,而是直接把递归DNS的结果转发给用户。
它也具备缓存功能。
他主要使用在没有直接的互联网连接,但可以连接到一个递归DNS那里,这时使用转发DNS就比较合适。
其缺陷是:直接受递归DNS的影响,服务品质较差。
比如我们用的路由器里面的DNS就是这一类,查看本地电脑的DNS一般都是192.168.1.1。

4、DNS的解析过程

     比如,一个域名为:abc.com,是想看到这个现HTTP服务,如果要访问网站,就要进行解析。
首先在域名注册商那里通过专门的DNS服务器解析到一个WEB服务器的一个固定IP上:211.214.1.XXX
然后,通过WEB服务器来接收这个域名,把abc.com这个域名映射到这台服务器上。
那么,输入abc.com这个域名就可以实现访问网站内容了。

      人们习惯记忆域名,但机器间互相只认IP地址,域名与IP地址之间是对应的
它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,整个过程是自动进行的。
域名解析协议(DNS)用来把便于人们记忆的主机域名和电子邮件地址映射为计算机易于识别的IP地址。
      DNS是一种c/s的结构。
客户机就是用户用于查找一个名字对应的地址,而服务器通常用于为别人提供查询服务。

5、DNS解析方式:逐级解析

根域名 :.root 或者 . ,通常是省略的
顶级域名,如 .com,.cn 等
次级域名,如 baidu.com 里的 baidu,这个是用户可以进行注册购买的
主机域名,比如 baike.baidu.com 里的baike,这个是用户可分配的

主机名.次级域名.顶级域名.根域名baike.baidu.com.root

##根域名服务器都在美国,一共有13个

6、DNS记录类型(域名解析规则)

A:地址记录(Address),返回域名指向的IP地址。

NS:域名服务器记录(Name Server),返回保存下一级域名信息的服务器地址。
该记录只能设置为域名,不能设置为IP地址。

MX:邮件记录(Mail eXchange),返回接收电子邮件的服务器地址。

CNAME:规范名称记录(Canonical Name),返回另一个域名,即当前查询的域名是另一个域名的跳转,详见下文。

PTR:逆向查询记录(Pointer Record),只用于从IP地址查询域名,详见下文。

7、DNS解析报错信息

1.no servers could be reached    ##服务无法访问(服务开启?火墙?网络?端口?)
2.服务启动失败                     ##配置文件写错 journalctl -xe查询错误
3.dig 查询状态
NOERROR                         ##表示查询成功
REFUSED                         ##服务拒绝访问
SERVFAIL                         ##查询记录失败,(dns服务器无法到达上级,拒绝缓存)
NXDOMAIN                         ##此域名A记录在dns中不存在

SOA:授权起始主机,SOA给出如图答案意思是没有这样一台主机

8、地址解析命令

host www.baidu.com ##地址解析命令,内容简略!

dig www.baidu.com ##地址详细解析信息命令,内容详细!

dig命令

host命令

二、高速缓存DNS服务器

所谓高速缓存dns就是:
内网内的dns服务器主机(非权威dns)把缓存下来的数据共享给其他内网主机。
只有第一次访问时间较长,访问后就会保存下来,之后内网内使用该dns服务器的主机再次访问就可以直接从缓存里取,速度会非常快

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/330858.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用pygame绘制图形

参考链接:https://www.geeksforgeeks.org/pygame-tutorial/?reflbp 在窗口中绘制单个图形 import pygame from pygame.locals import * import sys pygame.init()window pygame.display.set_mode((600,600)) window.fill((255,255,255))# pygame.draw.rect(wind…

WSL调用docker

WSL(windows subsystem linux)是window系统的原生linux子系统,用于代码开发很方便。 希望在wsl里面运行docker,首先要安装docker在WSL中使用,大部分人的第一想法肯定是用以下命令行安装(个人不推荐&#x…

【C语言】指针运算

前言 前面在“走进指针世界”中我已经讲解过指针相关的很多前置知识,其实还有一个很重要的部分就是指针的运算。这篇博客,就让我们一起了解一下指针的运算吧! 指针作为变量,是可以进行算术运算的,只不过情况会和整型…

Behind the Code:Polkadot 如何重塑 Web3 未来

2024 年 5 月 17 日 Polkadot 生态 Behind the Code 第二季第一集 《创造 Web3 的未来》正式上线。第一集深入探讨了 Polkadot 和 Web3 技术在解决数字身份、数据所有权和去中心化治理方面的巨大潜力。 🔍 查看完整视频: https://youtu.be/_gP-M5nUidc?…

aws glue配置读取本地kafka数据源

创建连接时填写本地私有ip地址,选择网络配置 配置任务选择kafka作为数据源 但是执行任务时日志显示连接失败 文档提到只能用加密通信 如果您希望与 Kafka 数据源建立安全连接,请选择 Require SSL connection (需要 SSL 连接),并在 Kafka priv…

滑动谜题 leetcode的BFS题目 启发如何写一个拼图编程呢

题目链接 题目要求,要将上面的拼板拼成123450 首先,转换为字符串,为什么要转换为字符串呢,因为处理会变得很简单比如示例一,转化为字符串是12345,目标字符串为123450,只需要证明通过某种交换&a…

JDBC(Java DataBase Connectivity)Java数据库连接

JDBC(Java DataBase Connectivity) Java 语言连接数据库 再本模块中,java提供里一组用于连接数据库的类和接口Java 语言开发者,本身没有提供如何具体连接数据库的功能只是定义了一组java程序连接数据库的访问接口 连接到数据库向数据库发送增,修改,删除这一类的sql发送查询sq…

【vue echart】完成一个简单echart图表+自适应

实现效果&#xff1a; html&#xff1a; <divref"echartOne"id"echartOne"style"width: 100%; height: 100%" ></div> js: getEchartOne() {let chart this.$echarts.init(this.$refs.echartOne);chart.setOption({title: {text:…

vue 纵向滚动菜单, 点击滚动到选中菜单

1 背景 需要设计一个纵向滚动菜单&#xff0c;要求丝滑点&#xff0c;默认显示选中菜单 2 思路 给定一个容器&#xff0c;样式包含overflow:hidden&#xff0c;默认高宽足够显示一个菜单&#xff08;以下用图标代替菜单&#xff09;&#xff0c;鼠标悬浮时增大容器高度&#…

揭秘Python的魔法:装饰器的超能力大揭秘 ‍♂️✨

文章目录 Python进阶之装饰器详解1. 引言装饰器的概念与意义装饰器在Python编程中的作用 2. 背景介绍2.1 函数作为对象2.2 高阶函数 3. 装饰器基础3.1 理解装饰器3.2 装饰器的工作原理 4. 带参数的装饰器4.1 为什么需要带参数4.2 实现带参数的装饰器使用函数包裹装饰器使用类实…

通过el-tree自定义渲染网页版工作目录,实现鼠标悬浮显示完整名称、用icon区分文件和文件夹等需求

目录 一、通过el-tree自定义渲染网页版工作目录 1.1、需求介绍 1.2、使用el-tree生成文档目录 1.2.1、官方基础用法 ①效果 ②代码&#xff1a; 1.2.2、自定义文档目录&#xff08;实现鼠标悬浮显示完整名称、用icon区分文件和文件夹&#xff09; ①效果&#xff08;直接效…

语义化版本规范

Releases 是指软件或项目的正式发布版本&#xff0c;在浏览一些开源仓库时&#xff0c;可以看到当前项目最新版本和历史版本 仔细研究就会发现&#xff0c;版本号不是以固定值递增的&#xff0c;有时候第三位加 1&#xff0c;有时候加 2&#xff0c;有时候直接把第一位加 1&…

BUUCTF---web---[BJDCTF2020]ZJCTF,不过如此

1、点开连接&#xff0c;页面出现了提示 传入一个参数text&#xff0c;里面的内容要包括I have a dream。 构造&#xff1a;?/textI have a dream。发现页面没有显示。这里推测可能得使用伪协议 在文件包含那一行&#xff0c;我们看到了next.php的提示&#xff0c;我们尝试读取…

Blender导出fbx模型,导入到ue5中模型丢失纹理材质

UE5系列文章目录 文章目录 UE5系列文章目录前言一、问题原因二、最终效果 前言 Blender导出fbx模型&#xff0c;导入到ue5中&#xff0c;发现模型丢失纹理材质&#xff0c;里面的原神人物模型妮露居然是白模&#xff0c;郁闷了大半天 一、问题原因 我在Blender导出fbx文件时…

JVM类加载

文章目录 类加载1.类的生命周期加载阶段连接阶段初始化阶段 2.类加载器类加载器的分类启动类加载器(Bootstarp)扩展类加载器&应用程序加载器 3.类的双亲委派机制什么是双亲委派机制&#xff1f;打破双亲委派机制自定义类加载器线程上下文类加载器 类加载 注&#xff1a;本…

Springboot+Vue项目-基于Java+MySQL的酒店管理系统(附源码+演示视频+LW)

大家好&#xff01;我是程序猿老A&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;Java毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设计 &…

为什么选择 Flink 做实时处理

优质博文&#xff1a;IT-BLOG-CN 为什么选择 Flink 【1】流数据更真实地反映了我们的生活方式&#xff08;实时聊天&#xff09;&#xff1b; 【2】传统的数据架构是基于有限数据集的&#xff08;Spark 是基于微批次数据处理&#xff09;&#xff1b; 【3】我们的目标&#xf…

Python协程的作用

过分揣测别人的想法&#xff0c;就会失去自己的立场。大家好&#xff0c;当代软件开发领域中&#xff0c;异步编程已成为一种不可或缺的技术&#xff0c;用于处理大规模数据处理、高并发网络请求、实时通信等应用场景。而Python协程&#xff08;Coroutine&#xff09;作为一种高…

【数据结构】数据结构中的隐藏玩法——栈与队列

前言&#xff1a; 哈喽大家好&#xff0c;我是野生的编程萌新&#xff0c;首先感谢大家的观看。数据结构的学习者大多有这样的想法&#xff1a;数据结构很重要&#xff0c;一定要学好&#xff0c;但数据结构比较抽象&#xff0c;有些算法理解起来很困难&#xff0c;学的很累。我…