最近学习相关DNS知识,顺便总结下相关内容。

1.什么是DNS

DNS(Domain Name System)服务,可以使用域名代替复杂的IP地址来访问网络服务器,使得网络服务的访问更加简单,而且可以完美地实现与Internet的融合,对于一个网站的推广发布起到极其重要的作用。

而且许多重要网络服务(如E-mail服务)的实现,也需要借助于DNS服务。因此,DNS服务可视为网络服务的基础。

DNS是一种采用客户/服务器机制,实现名称与IP地址转换的系统,是由名字分布数据库组成的,它建立了叫做域名空间的逻辑树结构,是负责分配、改写、查询域名的综合性服务系统,该空间中的每个结点或域都有唯一的名字。

2.域名的发展历史

最早的网络名称与IP地址的映射关系是由NIC(Network Information Center) 统一进行管理的,NIC将这些对应关系保存在一个HOSTS.TXT的文件中,通过改写这个文件来实现域名与IP对应关系的更新。所有的主机可以通过FTP方式访问到这个文件。

新的域名系统需要多个新的目标。例如:需要一种分布式的系统;能够用于不同的网络和服务;不依赖于具体的通信系统;系统可以处理多变的网络。

新的域名系统可以实现多种服务,并有新的特点。例如:数据库的大小取决于主机数和用户数;数据库中大多数数据变化较慢,少数变化迅速。

3.DNS的组成部分

DNS主要包括一下三个部分:

域名空间和资源记录

域名空间是树状结构的,结构中的每一个节点包括叶子节点都保存了一些信息集,一个查询就是为了获取节点下信息集中的某些需要的信息。

域名服务器

就是拥有着域名树结构以及节点数据集的服务程序。域名服务器会缓存一部分数据,并且它拥有并保存了域名树的某个子集的所有信息。

解析器

是指从服务器中提取信息并回应给客户端请求的特定程序。解析器至少要能够访问一台服务器,它或者直接回答查询,或者通过推荐的服务器来获得查询的结果。

4.DNS专有名词解释

Primary(Master)DNS

在域名系统中负责名称解析的主要名称服务器,每个客户端至少要指定一台此类型的服务器地址。

Secondary(Slave)DNS

为了避免主要名称服务器发生故障时严重影响网络上的名称解析工作,可以安装其他DNS服务器,并且定期复制Primary DNS服务器中的数据库,而这些服务器就称为Secondary DNS或Slave DNS。

Cache-only服务器

此类服务器会从其他名称服务器得到所有查询过的信息,再将这些答案放入自己的缓存区中,以备下次可以自行响应相同的查询(但自己并不具有名称解析功能)。

区域(Zone)

基本上,“区域”是DNS中实际的管理单位,在每个区域中包含独立的数据库。因此DNS服务器可以读取区域中的数据库内容,以便提供客户端的名称解析服务。

正向解析(Forwarding)

将主机名称解析为对应IP地址的过程。

反向解析(Reversing)

将IP地址解析为对应主机名称的过程。

委托(Delegation)

在每个域中都有负责名称解析的DNS服务器,如果因为实际需求,将原本的域细分成许多的子域。此时,上层域可以指派某台DNS服务器来负责子域的名称解析工作。这一指派的过程就称为“委托”。

个人理解如根域、顶级域、二级域等是在水平划分域名空间,区域是在垂直上划分域名空间,如.com属于顶级域,单独的 baidu.com则可以作为一个区域的概念。

5."域"的概念

"域"表示因特网中的一种逻辑单位,而因特网主机根据注册时的类型可以分为多种域。每个域下可以包含其他子域(Sub-Domain),而子域下也允许其他的次级域,然后以这个方式一直循环下去。

6.DNS域名空间(DNS Name Space)

因特网上指定了组织名称的域结构层次,而在DNS域名空间中,每个层级都有不同的名称,大多数的DNS都将它分为5种识别名称,下表列出了这5种识别名称及范例。

7.DNS服务器

DNS服务器分为一下三种

本地域名服务器。

也称默认域名服务器,当一个主机发出DNS查询报文时,这个报文就首先被送往该主机的本地域名服务器。在用户的计算机中设置网卡的“Internet协议(TCP/IP)属性”对话框中设置的首选DNS服务器即为本地域名服务器。

根域名服务器。

目前因特网上有十几个根域名服务器(root name server),大部分都在北美。当一个本地域名服务器不能立即回答某个主机的查询时,该本地域名服务器就以DNS客户的身份向某一根域名服务器查询。

授权域名服务器。

每一个主机都必须在授权域名服务器处注册登记。通常,一个主机的授权域名服务器就是它的本地ISP的一个域名服务器。实际上,为了更加可靠地工作,一个主机最好有至少两个授权域名服务器。许多域名服务器同时充当本地域名服务器和授权域名服务器。授权域名服务器总是能够将其管辖

8.DNS查询

DNS(一)简介的更多相关文章

  1. Linux DNS原理简介及配置

    Linux DNS原理简介及配置 DNS简介 DNS原理 域名解析的过程 资源记录 DNS BIND安装配置 一.简介 一般来讲域名比IP地址更加的有含义.也更容易记住,所以通常用户更习惯输入域名来访 ...

  2. DNS服务简介

    一.域名系统 1.域名系统概述 域名系统DNS(Domain Name System)是因特网使用的命名系统,用来把便于人们使用的机器名字转换成为IP地址.域名系统其实就是名字系统.为什么不叫“名字” ...

  3. DNS 域名系统的简介

    一.DNS域名系统简介 1.网络中为了区别各个主机,必须为每台主机分配一个唯一的地址, 这个地址即称为“IP 地址.但这些数字难以记忆, 所以采用“域名” 的方式来取代这些数字. 2.当某台主机要与其 ...

  4. linux杂谈(十八):DNS服务器的配置(一)

    原文地址: http://blog.chinaunix.net/uid-29622064-id-4242123.html 1.DNS服务器简介 域名系统(英文:Domain Name System,縮 ...

  5. DNS(三)DNS SEC(域名系统安全扩展)

    工作需要今天了解了下DNS SEC,现把相关内容整理如下: 一.DNS SEC 简介 域名系统安全扩展(英语:Domain Name System Security Extensions,缩写为DNS ...

  6. 简单谈谈DNS的工作原理及实践

    DNS协议简介 dns(Domain Name System)是一个全球化的分布式数据库系统,用于存储域名和互联网IP地址的映射关系.dns协议是计算机协议栈应用层中,应用最广泛的协议之一.用户每一次 ...

  7. DNS Tunnel隧道隐蔽通信实验 && 尝试复现特征向量化思维方式检测

    1. DNS隧道简介 DNS隧道技术是指利用 DNS协议建立隐蔽信 道,实现隐蔽数据传输.最早是在2004年 DanKaminsky 在 Defcon大会上发布的基于 NSTX 的 DNS隐蔽 隧道工 ...

  8. DNS 协议

    DNS 入门 域名系统(英文:Domain Name System,缩写:DNS)是互联网的一项服务.它作为将域名和 IP 地址相互映射的一个分布式数据库,能够使人更方便地访问互联网.DNS 使用 T ...

  9. Ettercap之ARP+DNS欺骗

    1.网络攻击拓扑环境 网关:192.168.133.2 攻击者:192.168.133.128 受害者:192.168.133.137 2.原理讲解 ARP欺骗 简介:ARP(Address Reso ...

随机推荐

  1. 获取不变的UDID-b

    iOS唯一标识的历史历程 iOS 6.0 在iOS6.0以前,是使用uniqueIdentifier来获取手机的唯一标识,后来苹果感觉这样会泄露用户隐藏,就封掉了这个方法: iOS 6.0系统新增了两 ...

  2. C#线程同步总结

    对于整数数据类型的简单操作,可以用Interlocked类的成员来实现线程同步.对于复杂的线程同步,有以下几个方法: 1.lock关键字: 2.Monitor: 3.同步事件和等待句柄: 4.Mute ...

  3. Microsoft.Web.Administration in IIS

    http://blogs.msdn.com/b/carlosag/archive/2006/04/17/microsoftwebadministration.aspx 最好使用在IIS8中,因为为每一 ...

  4. hdu 1018

    数学题  用的这个方法比较烂 g++超时  c++ 406ms /******************************************************************* ...

  5. Spark 1.60的executor schedule

    第一次看源码还是Spark 1.02.这次看新源码发现调度方式有了一些新的特征,在这里随便写一下. 不变的是,master还是接收Appclient和worker的消息,并且在接收RegisterAp ...

  6. mysql语句中把string类型字段转datetime类型

    mysql语句中把string类型字段转datetime类型   在mysql里面利用str_to_date()把字符串转换为日期   此处以表h_hotelcontext的Start_time和En ...

  7. 如何提高多线程程序的cpu利用率

    正如大家所知道的那样,多核多cpu越来越普遍了,而且编写多线程程序也是件很简单的事情.在Windows下面,调用CreateThread函数一次就能够以你想要的函数地址新建一个子线程运行.然后,事情确 ...

  8. POJ 2200 A Card Trick(模拟)

    题目链接 题意 : 一共52张牌(A, 2, 3, 4, 5, 6, 7, 8, 9, 10, J, Q, K)花色分别是C,D,H,S ...给助理5张牌,然后助理需要重新排一下次序,把第一张牌给观 ...

  9. linux 修改命令行编码 乱码解决方案

    修改/etc/default/locale命令:sudo vim /etc/default/locale1将下面这两行 LANG=zh_CN.UTF-8 LANGUAGE=zh_CN:zh 修改为: ...

  10. like 大数据字段 查询慢

    对于ntext的字段,作为查询条件的时候速度会很慢,比如以下语句: select * from T_KNOWLEDGE where CONTENTS like '%Oracle TimesTen In ...