域名系统(D N S)是一种用于T C P / I P应用程序的分布式数据库,它提供主机名字和 I P地
址之间的转换及有关电子邮件的选路信息。这里提到的分布式是指在 I n t e r n e t上的单个站点不
能拥有所有的信息。每个站点(如大学中的系、校园、公司或公司中的部门)保留它自己的
信息数据库,并运行一个服务器程序供 I n t e r n e t上的其他系统(客户程序)查询。 D N S提供了
允许服务器和客户程序相互通信的协议。
从应用的角度上看,对 D N S的访问是通过一个地址解析器( r e s o l v e r)来完成的。在U n i x
主机中,该解析器主要是通过两个库函数 g e t h o s t b y n a m e(3) 和g e t h o s t b y a d d r( 3 )来访问
的,它们在编译应用程序时与应用程序连接在一起。前者接收主机名字返回 I P地址,而后者
接收I P地址来寻找主机名字。解析器通过一个或多个名字服务器来完成这种相互转换。
图4 - 2中指出了解析器通常是应用程序的一部分。解析器并不像 T C P / I P协议那样是操作系
统的内核。该图指出的另一个基本概念就是:在一个应用程序请求 T C P打开一个连接或使用
U D P发送一个数据报之前。心须将一个主机名转换为一个 I P地址。操作系统内核中的 T C P / I P
协议族对于D N S一点都不知道。
RFC 1034 [Mockapetris 1987a] 说明了D N S的概念和功能,RFC 1035 [Mockapetris 1987b]
详细说明了DNS 的规范和实现。D N S最常用的版本(包括解析器和名字服务器)是 B I N D —
伯克利I n t e r n e t域名服务器。该服务器称作 n a m e d。[ D a n z i g、O b r a c z k a和Kumar 1992]分析了
DNS 在广域网中产生的通信量。
14.2 DNS 基础
D N S的名字空间和U n i x的文件系统相似,也具有层次结构。这种层次的组织形式

每个结点(图1 4 - 1中的圆圈)有一个至多 6 3个字符长的标识。这颗树的树根是没有任何
标识的特殊结点。命名标识中一律不区分大写和小写。命名树上任何一个结点的域名就是将
从该结点到最高层的域名串连起来,中间使用一个点“.”分隔这些域名(注意这和 U n i x文件
系统路径的形成不同,文件路径是由树根依次向下的形成的)。域名树中的每个结点必须有一
个唯一的域名,但域名树中的不同结点可使用相同的标识。
以点“.”结尾的域名称为绝对域名或完全合格的域名 F Q D N(Full Qualified Domain
N a m e),例如s u n . t u c . n o a o . e d u .。如果一个域名不以点结尾,则认为该域名是不完全的。
如何使域名完整依赖于使用的 D N S软件。如果不完整的域名由两个或两个以上的标号组成

则认为它是完整的;或者在该域名的右边加入一个局部后缀。例如域名 s u n通过加上局部后
缀. t u c . n o a o . e d u .成为完整的。

顶级域名被分为三个部分:
1) a r p a是一个用作地址到名字转换的特殊域(我们将在 1 4 . 5节介绍)。
2) 7个3字符长的普通域。有些书也将这些域称为组织域。
3) 所有2字符长的域均是基于I S O 3 1 6 6中定义的国家代码,这些域被称为国家域,或地理
域。

DNS域名解析系统介绍的更多相关文章

  1. C++实现DNS域名解析

    一.概述 现在来搞定DNS域名解析,其实这是前面一篇文章C++实现Ping里面的遗留问题,要干的活是ping的过程中画红线的部分: cmd下域名解析的命令是nslookup,比如“nslookup w ...

  2. DNS域名解析过程

    图1-10是DNS域名解析的主要请求过程实例图. 如图1-10所示,当一个用户在浏览器中输入www.abc.com时,DNS解析将会有将近10个步骤,这个过程大体描述如下.当用户在浏览器中输入域名并按 ...

  3. 配置DNS域名解析服务器

    bind这个DNS域名解析服务器解析好后,执行下面的语句实现开启服务 named -c named.conf & -c指配置脚本named.conf的文件地址 named.conf主要有下面几 ...

  4. 域名下Web项目重定向出现DNS域名解析错误问题

    问题: 项目使用的是阿里云的ESC,前几天为IP地址添加了域名 发现发送正常请求时跳转没问题,但发送重定向请求时,页面就会出现DNS域名解析错误的情况 1.我在Tomcat的server.xml中配置 ...

  5. 每天进步一点点——负载均衡之DNS域名解析

    转载请说明出处:http://blog.csdn.net/cywosp/article/details/38017027     在上一篇文章(http://blog.csdn.net/cywosp/ ...

  6. 一张图看懂DNS域名解析全过程

    DNS域名解析是互联网上非常重要的一项服务,上网冲浪(还有人在用这个词吗?)伴随着大量DNS服务来支撑,而对于网站运营来说,DNS域名解析的稳定可靠,意味着更多用户的喜欢,更好的SEO效果和更大的访问 ...

  7. DNS域名解析过程,域名的认识

    DNS域名解析过程 参考知乎:https://www.zhihu.com/question/23042131 当你通过浏览器输入url访问资源时,会请求DNS解析域名成对应的IP地址,由IP地址在去与 ...

  8. 《linux就该这么学》第十四节课:第13章,部署DNS域名解析服务(bind服务)

    (借鉴请改动)  第十二章收尾  12.2.nfs网络文件系统 RHEL7默认安装了nfs,配置文件在  /etc/export  写入格式:共享目录    允许的客户端(参数)  ro        ...

  9. DNS域名解析之搭建公司内部域--技术流ken

    什么是DNS DNS( Domain Name System)是“域名系统”的英文缩写,是一种组织成域层次结构的计算机和网络服务命名系统,它用于TCP/IP网络,它所提供的服务是用来将主机名和域名转换 ...

随机推荐

  1. ant design pro v2 关于用户登录有多个权限的解决方法

    ant design pro V2菜单栏显示流程, 用户输入用户名,密码,登录调用登录接口,校验后返回该用户的权限字段currentAuthority,然后通过调用setAuthority(curre ...

  2. Python 图形库

    1. 总体介绍 http://www.cnblogs.com/Vito2008/p/5264291.html 2.pygal http://rfyiamcool.blog.51cto.com/1030 ...

  3. 安装jar包到本地仓库

    1.控制台安装 安装指定文件到本地仓库命令:mvn install:install-file-DgroupId=<groupId>       : 设置项目代码的包名(一般用组织名)-Da ...

  4. uncompyle6安装使用方法

    uncompyle6是一个原生python的跨版本反编译器和fragment反编译器,是decompyle.uncompyle.uncompyle2等的接替者. uncompyle6可将python字 ...

  5. MongoDB操作-备份和恢复

    Mongodb数据库操作-备份 恢复 导出 导入 mongodb数据备份和恢复主要分为二种:一种是针对库的mongodump和mongorestore,一种是针对库中表的mongoexport和mon ...

  6. java.lang.ClassCastException: com.sun.proxy.$Proxy4 cannot be cast

    解决方案 在配置文件中配置proxy-target-class="true" <aop:aspectj-autoproxy proxy-target-class=" ...

  7. vscode安装

    vscode是一个很好用而且开源的编辑器,支持多种编程语言,这里稍微总结一下使用,省的以后再安装时候再百度查 下载地址:https://code.visualstudio.com/,打开以后点击dow ...

  8. 体验三大JavaScript文件上传库(Uppy.js/Filepond/Dropzone)

    最近发现了一个高颜值的前端上传组件Uppy.js,立即上手体验了一波,感觉还不错.然后又看到同类型的Filepond以及Dropzone.js,对比体验了一下,感觉都很优秀,但是在体验过程中,都遇到了 ...

  9. Kong命令(二)service

    service介绍: service 是声明了一组name.host.port.protocol等配置的函数.可以绑定route.upstream上下游服务.并且对于route.upstream可以绑 ...

  10. javaweb常识

    Tomcat下载地址www.apache.org 在电脑中查看java版本:cmd中输入java -version tomcat解压后目录 bin:放可执行文件(如startup.bat   shut ...