zoukankan      html  css  js  c++  java
  • DNS(一)简介

    最近学习相关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查询

  • 相关阅读:
    如何在android 系统 C/C++ 层中添加 log 信息
    吴裕雄--天生自然轻量级JAVA EE企业应用开发Struts2Sping4Hibernate整合开发学习笔记:struts2拦截器的执行顺序
    吴裕雄--天生自然轻量级JAVA EE企业应用开发Struts2Sping4Hibernate整合开发学习笔记:struts2拦截方法的拦截器
    吴裕雄--天生自然轻量级JAVA EE企业应用开发Struts2Sping4Hibernate整合开发学习笔记:struts2实现拦截器类
    吴裕雄--天生自然轻量级JAVA EE企业应用开发Struts2Sping4Hibernate整合开发学习笔记:struts2实现文件下载的Action
    吴裕雄--天生自然轻量级JAVA EE企业应用开发Struts2Sping4Hibernate整合开发学习笔记:struts2拦截器实现文件过滤
    吴裕雄--天生自然轻量级JAVA EE企业应用开发Struts2Sping4Hibernate整合开发学习笔记:struts2手动实现文件过滤
    吴裕雄--天生自然轻量级JAVA EE企业应用开发Struts2Sping4Hibernate整合开发学习笔记:struts2实现文件上传的Action
    吴裕雄--天生自然轻量级JAVA EE企业应用开发Struts2Sping4Hibernate整合开发学习笔记:struts2手动完成输入校验(2)
    吴裕雄--天生自然轻量级JAVA EE企业应用开发Struts2Sping4Hibernate整合开发学习笔记:struts2手动完成输入校验
  • 原文地址:https://www.cnblogs.com/ibyte/p/5737892.html
Copyright © 2011-2022 走看看