为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

RFC1034(中文)_域名-概念和设施

2013-05-24 35页 pdf 469KB 236阅读

用户头像

is_256745

暂无简介

举报
RFC1034(中文)_域名-概念和设施 本文翻译者:weicq2000 (2012-10-9,weicq2000@sina.com) Network Working Group P. Mockapetris Request for Comments: 1034 ISI Obsoletes: RFCs 882, 883, 973 ...
RFC1034(中文)_域名-概念和设施
本文翻译者:weicq2000 (2012-10-9,weicq2000@sina.com) Network Working Group P. Mockapetris Request for Comments: 1034 ISI Obsoletes: RFCs 882, 883, 973 November 1987 域名 --- 概念和设施 目录 第 1 章 本备忘录状态 第 2 章 序言 2-1 域名的历史 2-2 DNS设计目标 2-3 有关应用的假设 2-4 DNS组成部分 第3章 域名空间和资源记录 3-1 名称空间和术语 3-2 有关应用的管理准则 3-3 有关应用的技术准则 3-4 名称空间举例 3-5 优先选用的名称句法 3-6 资源记录 3-6-1 RRs的文本表示 3-6-2 别名和正则名称 3-7 查询 3-7-1 标准查询 3-7-2 反向查询(可选) 3-8 状态查询(试验中) 3-9 完整查询(放弃) 第4章 名称服务器 4-1 序言 4-2 怎样将数据库划分成区域 4-2-1 技术上的考虑 4-2-2 管理上的考虑 4-3 名称服务器内部 4-3-1 查询和响应 4-3-2 算法 4-3-3 通配符 4-3-4 否定响应缓存(可选) 4-3-5 区域维护和传送 第5章 解析器 5-1 序言 5-2 客户端-解析器接口 5-2-1 典型功能 5-2-2 别名 5-2-3 临时故障 5-3 解析器内部 5-3-1 末梢解析器 5-3-2 资源 5-3-3 算法 第6章 场景 6-1 C.ISI.EDU名称服务器 6-2 标准查询举例 6-2-1 QNAME=SRI-NIC.ARPA, QTYPE=A 6-2-2 QNAME=SRI-NIC.ARPA, QTYPE=* 6-2-3 QNAME=SRI-NIC.ARPA, QTYPE=MX 6-2-4 QNAME=SRI-NIC.ARPA, QTYPE=NS 6-2-5 QNAME=SIR-NIC.ARPA, QTYPE=A 6-2-6 QNAME=BRL.MIL, QTYPE=A 6-2-7 QNAME=USC-ISIC.ARPA, QTYPE=A 6-2-8 QNAME=USC-ISIC.ARPA, QTYPE=CNAME 6-3 解析举例 6-3-1 解析ISI.EDU.的MX 6-3-2 获得地址26.6.0.65的主机名 6-3-3 获得poneria.ISI.EDU的主机地址 第7章 参考文献和参考目 原文索引 第1章 本备忘录状态 本备忘录介绍域名系统(Domain Name System, DNS),文中忽略了许多细节,这些细节 可在姊妹篇RFC“域名---实现和规范”[RFC-1035]中找到。RFC1035假设读者熟悉本备忘录 中讨论的概念。 DNS功能和数据类型子集构成正式协议。正式协议包括标准查询和它们的响应,以及大 多数互联网类数据格式(例如,主机地址)。 然而,域系统有意构建成可扩展的。研究者正在不断提出、实施和试验新的数据类型、 查询类型、类、功能,等等。因此,尽管期盼正式协议各部分保持基本不变并作为生产业务 运行,应当始终鼓励试验工作不断扩展正式协议。在这些RFCs中对试验的或作废的特性做 了明显的标记,使用这类信息应当谨慎。 读者应特别注意,不要依赖本文(目前的和完成的)举例中出现的值,因为这些值的确定 主要源于教学演示需要。本备忘录的分发不受限制。 第2章 序言 本RFC介绍域样式名称,它们在互联网邮件和主机地址支持中的应用,以及实现域名功 能的协议和业务。 2-1 域名的历史 域系统是在互联网增长的推动下发展起来的: - 主机名称到地址的映射,由单一文件(HOSTS.TXT)中的网络信息中心(Network Information Center, NIC)维护,所有主机通过文件传输协议(File Transfer Protocol, FTP)获得该文件[RFC-952、RFC-953]。按此方法分发新版本消耗的总网络带宽 正比于该网络中主机数的平方,即使当使用多层FTP时,在NIC主机上的出境FTP 负载也是相当可观的。 主机数量的爆炸性增长预计将来也不会停止。 - 网络数量也在相应改变。构成原始ARPANET的分时主机正在被本地工作站网络 替代。本地组织正在管理他们自己的名称和地址,但是必须等待NIC改变 HOSTS.TXT,以便在互联网上普遍可以看到这些改变。组织们也希望在名称空 间上实现某种本地结构。 - 在互联网上的应用正在变得更加复杂,正在产生对通用目的名称服务的需求。 结果产生几种有关名称空间和对它们进行管理的思路[IEN-116、RFC-799、RFC-819、 RFC-830]。这些建议各不相同,但是共同的主线是等级名称空间思想,采用粗略对应组织 结构的等级,使用由“.”作为标记等级层次间边界的记号的名称。使用分布式数据库和广 义资源的设计在[RFC-882、RFC-883]中介绍。根据几方面实践的经验,系统最终演进为本 备忘录中介绍的。 术语“域(domain)”或“域名(domain name)”在许多场景中使用,使用范围超出这里介 绍的DNS。更一般情况,术语域名用于指具有由圆点表示的结构的名称,但是与DNS没有关 系。在邮件寻址[Quarterman 86]中尤其是这样。 2-2 DNS设计目标 DNS的设计目标影响它的结构。这些目标是: - 主要目标是一致性名称空间,这一名称空间用于指资源。为了避免特别是由编码 引起的问题,名称应当不要求包括网络标识符、地址、路由,或作为该名称一部 分的类似信息。 - 规模庞大和频繁更新要求数据库必须采用分布式方式维护,使用本地缓存改善性 能。企图收集整个数据库的一致性复本的方法将变得越来越昂贵和困难,并且因 此应当避免。同样的道理也适用于名称空间结构,以及尤其是生成和删除名称的 机制;这些也应当是分布式的。 - 凡是需要在获得数据成本、更新速率和缓存精度间进行折中时,数据源应当控制 此折中。 - 实现成本(诸如便利性)要求DNS通常普遍可用,不被限制在单一应用。我们应当 能够使用名称来检索主机地址、邮箱数据和其他尚未确定的信息。所有与名称关 联的数据用类型(type)标记,并且可以将查询限制在单一类型。 - 因为我们希望名称空间可用于不同的网络和应用,我们提供由不同协议族或管理 使用相同 名称空间的能力。例如,尽管所有协议都有地址概念,协议间主机地 址格式不同。DNS用类以及类型标记所有数据,因此我们可以允许并行使用不同 格式类型地址的数据。 - 我们希望名称服务器业务独立于携带这些业务的通信系统。一些系统可能希望使 用数据报进行查询和响应,并且仅为强调可靠性的业务(例如,数据库更新,长 业务)建立虚拟电路;其他系统将排他性地使用虚拟电路。 - 系统应当能够适应广泛的主机能力。个人计算机和大型分时主机都应当能够使用 此系统,尽管可能采用不同方法。 2-3 有关应用的假设 域系统的组织来源于某些假设,这些假设涉及域系统用户社区的需求和使用模式,域系 统的设计致力于避免在通用数据库系统中发现的许多复杂问题。 这些假设是: - 整个数据库的大小初期正比于使用此系统的主机数量,但是当邮箱和其他信息被 添加到此域系统时,最终将发展为正比于这些主机上的用户数量。 - 系统中大多数数据变化非常缓慢(例如,邮箱绑定,主机地址),但是系统应当能 够处理变化更为迅速的子集(在秒或分钟等级上)。 - 用于分配数据库职责的管理边界通常对应有一台或多台主机的组织。每个对特定 一组域有责任的组织将提供冗余的名称服务器,或者在组织自己的主机上提供, 或者在由该组织安排使用的其他主机上提供。 - 域系统的客户端应当能够识别值得信任的名称服务器集合,在接受转介到这个 “值得信任的”集合之外的名称服务器前,客户端优先使用这些名称服务器。 - 获取信息比即时更新或一致性担保更为关键。因此,更新处理使更新能够过滤出 域系统的用户而不是保证所有副本同时更新。当由于网络或主机故障,更新不能 进行时,通常的做法是相信旧信息同时继续努力更新它。一般模式是用刷新超时 分发副本。分发者设置超时值,分发物的接收者负责执行刷新。在特殊情况,可 能规定非常短的间隔,或者所有者可能禁止复制。 - 在任何有分布式数据库的系统中,特定名称服务器可能遇到仅可以由某个其他服 务器回答的查询。处理此问题的两个常用方法其一是“递归”,在递归中,第一 个服务器继续为客户端在另一个服务器上查询;其二是“迭代”,在迭代中,该 服务器引导客户端寻找另一个服务器,并让该客户端继续查询。两种方法各有优 缺点,但是在数据报形式的访问中优先使用迭代方法。域系统需要执行迭代方法, 但是允许将递归方法作为选项。 域系统假设,所有数据起源于使用域系统的主机散发的主文件。这些主文件被本地系统 管理员更新。主文件是文本文件,本地名称服务器读这些主文件,因此经名称服务器后,可 被该域系统的用户得到。用户程序通过称为解析器的标准程序访问名称服务器。 主文件采用标准格式因而它们能够在主机间交换(通过FTP、邮件、或某种其他机制); 当组织想要域,但是不希望支持名称服务器时,这个特点是有用的。组织能够维护本地使用 文本编辑器的主文件,将它们传送给运行名称服务器的外地主机,接着与那个名称服务器的 系统管理者协商获得加载的文件。 本地系统管理者配置每个主机的名称服务器和解析器[RFC-1033]。对于名称服务器,这 个配置数据包括本地主文件标识,和有关从外地服务器加载非本地主文件的指令。名称服务 器使用主文件或主文件副本加载它的区域。对于解析器,此配置数据指出应当是主信息源的 名称服务器。 域系统定义访问数据和转介到其他名称服务器的流程。域系统也定义由系统管理员确定 的缓存检索数据的流程和数据周期刷新的流程。 系统管理者提供: - 区域边界定义。 - 数据的主文件。 - 对主文件的更新。 - 陈述希望的刷新策略。 域系统提供: - 资源数据的标准格式。 - 查询数据库的标准方法。 - 名称服务器刷新来自外地名称服务器的本地数据的标准方法。 2-4 DNS组成部分 DNS有三个主要部分: - 域名空间和资源记录(DOMAIN NAME SPACE和RESOURCE RECORDS),它们 是树状结构名称空间和与这些名称关联的数据的规范。从概念上讲,每个节点和 域名空间树的叶子命名一组信息,查询操作是打算从特定集合提取特定类型信息。 查询命名感兴趣的域名和描述希望的资源信息类型。例如,互联网使用它的某个 域名标识主机;地址资源的查询返回互联网主机地址。 - 名称服务器(NAME SERVERS),它们是服务器程序,它们保存着有关域树的结 构的信息和设置信息。名称服务器可以缓存有关域树的任何部分的结构和设置信 息,但是一般而言,特定的名称服务器有关于该域空间的子集的完整信息,有指 向其他名称服务器的指针,这些其他服务器可用于从域树的任何部分引导信息。 名称服务器们知道域树的各个部分(它们对其有完整信息);对于名称空间的这些 部分,名称服务器被看作是权威(AUTHORITY)。权威信息被编排进称作区域 (ZONEs)的单元,这些区域可以自动分配给为区域中的数据提供冗余服务的名称 服务器。 - 解析器(RESOLVERS),是为了响应客户端请求从名称服务器提取信息的程序。 解析器必须能够访问至少一个名称服务器,并使用那个名称服务器的信息直接回 答查询,或使用到其他名称服务器的转介,继续查询。解析器一般是系统例行程 序,它可直接访问到用户程序;因此在解析器和用户程序间不需要协议。 这三个组成部分大致对应域系统的三层或三个视野: - 从用户的观点看,通过简单的流程或OS调用本地解析器,访问域系统。域空间 由单一树构成,用户可以从该树的任何部分请求信息。 - 从解析器的观点看,域系统由未知数量的名称服务器组成。每个名称服务器有整 个域树的数据中的一条或多条数据,然而解析器将这些数据库的每一个看作基本 上是静态的。 - 从名称服务器的观点看,域系统由分离的、称作区域的本地信息集合构成。名称 服务器有某些区域的本地副本。名称服务器必须根据本地文件中的主副本或外地 名称服务器,周期刷新它的区域。名称服务器必须并发处理来自多个解析器的查 询。 从性能考虑,实现可以融合这些功能。例如,在作为名称服务器的同一计算机上的解 析器或许共享由区域构成的数据库(区域由该名称服务器管理),以及可以共享由该解析器 管理的缓存器。 第3章 域名空间和资源记录 3-1 名称空间规范和术语 域名空间是树形结构。每个节点和树上的叶对应资源集合(资源集合可以为空)。域系统 对内部节点使用和树叶使用不加区别,本备忘录使用术语“节点(node)”指代两者。 每个节点有标签,标签长度从0到63个八位位组。兄弟节点不可以有相同的标签,尽管 相同标签可用于不是兄弟的节点。一个标签被保留,它是空(即零长度)标签,用于树根。 节点的域名是从节点到树根路径沿途各个标签的明细表。按照惯例,构成域名的标签从 左到右书写或读出,从最具体的(最低,离树根最远)到最不具体的(最高,离树根最近)。 在内部,操控域名的程序应当把域名表示为标签序列,这里每个标签是长度八位位组, 再加上八位位组字符串。因为所有域名在树跟结束,树根有标签的空字符串,这些内部表示 可以使用零长度字节来终止域名。 按照惯例,域名可以用任意大小写保存,但是对于所有现有的域功能,域名比较采用不 区分大小写的方式进行,假设采用ASCII字符集,高阶零位。这意味着您可以自由使用标记 “A”生成节点,或使用标记“a”生成节点,但是二者不能作为兄弟;您可以或者使用“a” 表示节点,或者使用“A”表示节点。当您收到域名或标签时,您应当保存它的大小写。这 样选择的理由是或许某一天我们需要为新的业务添加全二进制域名;现有的业务不改变。 当用户需要打印域名时,忽略每个标签的长度,标签被用圆点(“.”)隔开。因为完整的 域名用根标签结束,这产生以圆点结束的书写格式。我们使用这个性质相互间区别: - 代表完整域名的字符串(常称作“绝对”)。例如,“poneria.ISI.EDU.” - 代表不完整域名的开始标签的字符串,应当使用本地域知识,由本地软件完善该 字符串(常称作“相对”)。例如,使用在ISI.EDU域中的“poneria”。 选取相对名称,或者是相对于众所周知的起源选取,或者是相对于用作搜索列表的域的 明细表选取。相对名称大多出现在用户接口中,在那里,由于实现不同对相对名称的翻译也 各不相同,在主文件中,相对名称相对于单一起源域名。最通用的翻译使用根“.”作为或 者是单一起源,或者是搜索列表的成员之一,所以多标签相对名称常常是这样的相对名称, 在那里尾随的圆点因为要节省打印而被忽略掉。 为了简化实现,表示域名的八位位组的总数(即,所有标签八位位组和标签长度的和)被 限制到255。 域由域名标识,域由域名空间的那个部分组成,那个部分位于该域名中或在该域名以下, 该域名规定该域。域是另一个域的子域,如果该域被包含在另一个域中。通过观察是否子域 的名称用包含域的名称结束,可以检验这种相互关系。例如,A.B.C.D是B.C.D,C.D,D和 “”的子域。 3-2 有关应用的管理准则 作为一个策略,DNS技术规范没有规定具体的树状结构或选择标签的规则;这样做的目 的是尽可能通用,以便它能够用来建立任意应用。尤其是,将系统设计成名称空间不必沿着 网络边界线、名称服务器等构建。这样做的理由不是名称空间应当没有隐含语义,而是隐含 语义的选择应当保持开放,以便应用于被考虑的问题,以及树的不同部分可以有不同的隐含 语义。例如,IN-ADDR.ARPA域是根据网络和主机地址进行组织和分发的,因为它的作用 是从网络号或主机号翻译到名称;NetBIOS域[RFC-1001,RFC-1002]是扁平的,因为对于那 个应用这是适当的。 然而,存在一些准则,它们适合用于主机、邮箱等的名称空间的“一般”部分,这些准 则将使得名称空间更加统一,有利于其成长,以及尽量减少因软件是从较旧的主机表转换而 来引起的问题。关于树的顶层的策略决策在RFC-920中讨论。目前的顶层策略在[RFC-1032] 中讨论。MILNET转换问题在[RFC-1031]中讨论。 最终将被插入多个区域的较低的那些域应当在该域的顶部提供分支,以便无需重新命名 即可进行最终的分解。使用特定字符串、前置数字等的节点标签极有可能突破较旧的软件(旧 软件更多依赖于严格的选择)。 3-3 有关应用的技术准则 DNS能够用于保持某种对象的命名信息之前,必须满足两点: - 在对象名称和域名之间进行映射的约定。这描述如何访问有关对象的信息。 - 描述对象的RR类型和数据格式。 这些准则可能非常简单或十分复杂。常常,设计者必须顾及已有的格式,必须规划向上 兼容已有的应用。可能需要多映射或映射层级。 对于主机,映射取决于已有的主机名称句法(主机名称是域名的常用文本表示法的子集), 以及描述主机地址的RR格式,等等。因为我们需要可靠的逆映射(从地址到主机名称),也定 义了进入IN-ADDR.ARPA域的地址的特殊映射。 对于邮箱,映射稍微复杂一些。通过把转变为单一标签(忽略标签包含的圆 点),使用域名的常用文本格式把转变为域名(圆点表示标签中断),并串联两 部分形成单一的域名,通常的邮件地址@被映射成域名。于是, 邮箱HOSTMASTER@SRI-NIC.ARPA由HOSTMASTER.SRI-NIC.ARPA表示为域名。这 种设计背后的原因也必须考虑邮件交换的方案[RFC-974]。 普通用户不关心定义这些规则,但是应当理解这些规则通常是下述方面大量互动的结果, 即,向上兼容旧有应用愿望之间的妥协,不同的对象定义之间的相互影响,以及当定义这些 规则时不可避免的添加新特征冲动。使用DNS支持某些对象的方法常常比在DNS中固有的限 制更为关键。 3-4 名称空间举例 图1显示当前域名空间的一部分,该图在本RFC的许多举例中使用。注意,此树是实际 名称空间的非常小的子集。 MIL EDU ARPA BRL NOSC DARPA IN-ADDR SRI-NIC ACC UCI MIT YALEUDEL ISI LCS ACHILLES XX A C VAXA VENERA Mockapetris 图1 域名空间一部分举例 在这个例子中,根域有三个直接子域:MIL、EDU和ARPA。LCS.MIT.EDU域有一个名 为XX.LCS.MIT.EDU的直接子域。所有叶子也是域。 3-5 优先选用的名称句法 DNS规范力争在构建域名规则方面尽可能通用。具体思路是:任何已有对象的名称,能 够以尽可能小的改动表示为域名。然而,当为对象分配域名时,谨慎的用户将选择既满足域 名系统规则,又满足对象任何已有的规则的名称,无论这些规则已公开发表,还是隐含在已 有程序中。 例如,当命名邮件域时,用户应当既满足本备忘录的规则,又满足RFC-822中的规则。 当生成新的主机名称时,应当遵守旧的HOSTS.TXT规则。这可以避免当旧的软件转换为使 用域名时可能出现的问题。 下述句法很少出现与使用域名的许多应用(例如:邮件,TELNET)有关的问题。 ::= | " " ::=
/
本文档为【RFC1034(中文)_域名-概念和设施】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索