域名系统DNS
一、域名系统是什么
域名系统其实就是一个把主机名解析为IP地址的名字系统。
因特网使用层次树状结构的命名方法,并使用分布式的域名系统DNS。因特网的域名系统DNS被设计成一个联机分布式数据库系统,并采用客户-服务器方式。
二、域名结构
因特网使用层次树状结构的命名方法,级别最低的域名写在最左边,级别最高的顶级域名写在最右边。DNS既不规定一个域名需要包含多少个下级域名,也不规定每一级的域名代表什么意思。域名中的“点”和点分十进制IP地址中的“点”并无一一对应关系。
因特网树状域名空间的根是没有对应的名字的,根下面一级的节点就是最高一级的顶级域名。一旦一个单位拥有了一个域名,它就可以自己决定是否要进一步划分其下属的子域,而且不必由其上级机构批准。
因特网的名字空间是按照机构的组织来划分的,与物理的网络无关,与IP地址中的“子网”也没有关系。
三、域名服务器
域名系统的具体实现是使用分布在各地的域名服务器。
DNS并不是让每一级的域名都有一个相对应的域名服务器(这样会使域名服务器的数量太多,使域名系统的运行效率降低),而是使用划分区的办法,即DNS的服务器的管辖范围不是以“域”为单位,而是以“区”为单位。区可能等于或者小于域,但一定不可能大于域。每一个区设置相应的权限域名服务器。
域名服务器的分类:
- 根域名服务器:最高层次、最重要的域名服务器。所有的根域名服务器都知道所有的顶
级域名服务器的域名和IP地址。在因特网上共有13个不同IP地址的根
域名服务器,他们的名字是一个英文字母,从a到m,如:a.rootservers
.net。这些根域名服务器并不是简单地由13个机器组成,而是13套装置。
本地域名服务器无法解析一个域名时首先要求助于根域名服务器。
2. 顶级域名服务器
3. 权限域名服务器:负责一个区
4. 本地域名服务器
为了提高域名服务器的可靠性,DNS域名服务器都把数据复制到几个域名服务器来保护,其中的一个是主域名服务器,其他的就是辅助域名服务器。当主域名服务器出故障时,辅助域名服务器可以保证DNS的查询工作不会中断。主域名服务器定期把数据复制到辅助域名服务器中而更改数据只能在主域名服务器中进行,保证了数据的一致性。
四、域名解析
当某一个应用进程需要把主机名解析为IP地址时,该应用进程就调用解析进程,并成为DNS的一个客户,把待解析的域名放在DNS请求报文中,以UDP用户数据报方式发送给本地域名服务器(使用UDP是为了减少开销)。本地域名服务器在查找域名后,把对应的IP地址放在回答报文中返回。
主机向本地域名服务器的查询一般都是采用递归查询,而本地域名服务器向根域名服务器的查询通常是采用迭代查询。当然,本地服务器也可以使用递归查询,这取决于最初的查询请求报文的相关设置。
为了提高DNS查询效率,并减轻根域名服务器的负荷和减少因特网上的DNS查询报文的数量,在域名服务器中广泛使用了高速缓存,存放最近查询过的域名以及从何处获得域名映射信息的记录(设置了过期时间)。在主机中也使用了高速缓存。
域名系统DNS的更多相关文章
- 关于域名系统DNS解析IP地址的一些总结
关于域名系统DNS(Domain Name System) 从域名中解析出IP地址. DNS主要由3部分组成: ① 名称解析器(resolver) ② 域名空间(domain name space) ...
- 套接字和域名系统DNS
套接字产生的原因: 当应用进程通过传输层进行通信时 ,TCP和 UDP将面临同时为多个应用进程提供并行通信的问题.多个TCP连接或多个应用程序进程可能需要通过同一个TCP协议端口传输数据. 为了区别每 ...
- 域名系统DNS和FTP
域名系统概述 域名系统DNS(Domain Name System)是英特网使用的命名系统,用于把便于人们使用机器名字转化为IP地址. 为什么机器在处理IP数据报时要使用IP地址而不使用域名呢?IP地 ...
- 计算机网络之域名系统DNS
域名系统DNS 域名系统DNS(Domai NameSystem)是因特网使用的命名系统,用于把便于人们使用的机器名字转换为IP地址. 许多应用层软件经常直接使用域名系统,但计算机的用户只是间接而不是 ...
- 第9章 应用层(1)_域名系统DNS
1. 域名系统DNS 1.1 主机名和域名的关系 (1)完全限定域名(Fully Qualified Domain Name, FQDN) = 主机名 + 域名 ①一个域名下可以有多个服务器/主机(如 ...
- 带你简单了解域名系统DNS
带你简单了解域名系统DNS 一.域名简介 1.1.DNS服务的作用 负责解析域名,将域名解析成IP地址. 1.2.域名系统概述 由于32位的IP地址并不容易记忆,人们往往喜欢记忆网站的域名.所以当我们 ...
- 域名系统-DNS
域名系统DNS 域名系统DNS(Domain Name System)是互联网使用的命名系统,用来把便于人们使用的机器名转化为IP地址,域名系统就是名字系统. 很多应用层的软件经常直接使用DNS.DN ...
- 域名系统DNS简介
域名系统(Domain Name System, DNS)是互联网的核心应用层协议之一, 它用于查询域名对应的IP地址.在使用域名访问任何网络资源时都需要先进行域名解析. www.cnblogs.co ...
- 域名系统DNS以及跨域问题
域名到Ip地址解析是由分布在因特网上的许多域名服务器程序共同完成的.运行域名服务器程序的机器是域名服务器 域名到ip地址的解析过程: 当一个应用进程需要把主机名解析为ip地址时,该应用就调用解析程 ...
随机推荐
- 控制结构(4) 局部化(localization)
// 上一篇:状态机(state machine) // 下一篇:必经之地(using) 基于语言提供的基本控制结构,更好地组织和表达程序,需要良好的控制结构. 前情回顾 上一次,我们说到状态机结构( ...
- 如何定制 Calico 网络 Policy - 每天5分钟玩转 Docker 容器技术(70)
Calico 默认的 policy 规则是:容器只能与同一个 calico 网络中的容器通信.本节讨论如何定制 policy. calico 能够让用户定义灵活的 policy 规则,精细化控制进出容 ...
- jmeter JDBC请求连接测试mysql数据库
所有jmeter基本组件功能本文不做介绍.jmeter要链接mysql数据库,首先得下载mysql jdbc驱动包(注:驱动包的版本一定要与你数据库的版本匹配,驱动版本低于mysql版本有可能会导致连 ...
- Spring 级联属性
Spring 级联属性是当两个bean 关联时 从一个bean 给 另一个bean 赋值 Application xml 配置如下 <bean id="ZhangSan" ...
- js学习要点
js 一.词法结构 1.区分大小写 2.注意 // 单行 /* 多行注释 */ 3.字面量(直接量 literal) 12 //数字 5.8 // 小数 "hello" 'hell ...
- 西邮linux兴趣小组2014纳新免试题(四)
[第四关] 题目 http://findakey.sinaapp.com/ Example: String1:FFFF8 5080D D0807 9CBFC E4A04 24BC6 6C840 49B ...
- XCode消除警告、错误
1.集成支付宝SDK后,报一堆warning: (arm64) /Users/scmbuild/workspace/standard-pay/.....警告 解决方法: 1) Go to Build ...
- 3.bootstrap-组件
1.图标 <button type="button" class="btn btn-default"> <span class="g ...
- E2195 cannot evaluate function call
E2195 cannot evaluate function call :e2195无法评估函数的调用 :问题的根源在于,对组件创建了不合理的触发事件导致的. :OK
- UI自动化测试(二)浏览器操作及对元素的定位方法(xpath定位和css定位详解)
Selenium下的Webdriver工具支持FireFox(geckodriver). IE(InternetExplorerDriver).Chrome(ChromeDriver). Opera( ...