dns(域名系统)详细资料大全

我请分析下,dns(域名系统)详细资料大全
最新回答
不堪烟染

2024-09-26 10:42:01

域名系统 (英文: D omain N ame S ystem,缩写: DNS )是网际网路的一项服务。它作为将域名和IP位址相互映射的一个分散式资料库,能够使人更方便地访问网际网路。DNS使用TCP和UDP连线埠53[1]。当前,对于每一级域名长度的限制是63个字元,域名总长度则不能超过253个字元。

开始时,域名的字元仅限于ASCII字元的一个子集。2008年,ICANN通过一项决议,允许使用其它语言作为网际网路顶级域名的字元。使用基于Punycode码的IDNA系统,可以将Unicode字元串映射为有效的DNS字元集。因此,诸如“XXX.中国”、“XXX.美国”的域名可以在地址栏直接输入并访问,而不需要安装外挂程式。但是,由于英语的广泛使用,使用其他语言字元作为域名会产生多种问题,例如难以输入,难以在国际推广等。

基本介绍

  • 中文名 :域名系统
  • 外文名 :Domain Name System
  • 使用协定 :UDP,TCP(当请求大于512位元组时)
  • 使用连线埠 :53
简介,历史,记录类型,技术实现,概述,软体,国际化域名,域名解析,WHOIS(域名资料库查询),其他,相关条目,

简介

域名系统 (英文: D omain N ame S ystem,缩写: DNS )是网际网路的一项服务。它作为将域名和IP位址相互映射的一个分散式资料库,能够使人更方便地访问网际网路。DNS使用TCP和UDP连线埠53。当前,对于每一级域名长度的限制是63个字元,域名总长度则不能超过253个字元。 开始时,域名的字元仅限于ASCII字元的一个子集。2008年,ICANN通过一项决议,允许使用其它语言作为网际网路顶级域名的字元。使用基于Punycode码的IDNA系统,可以将Unicode字元串映射为有效的DNS字元集。因此,诸如“XXX.中国”、“XXX.台湾”的域名可以在地址栏直接输入并访问,而不需要安装外挂程式。但是,由于英语的广泛使用,使用其他语言字元作为域名会产生多种问题,例如难以输入,难以在国际推广等。

历史

DNS最早于1983年由保罗·莫卡派乔斯(Paul Mockapetris)发明;原始的技术规范在882号网际网路标准草案(RFC 882)中发布。1987年发布的第1034和1035号草案修正了DNS技术规范,并废除了之前的第882和883号草案。在此之后对网际网路标准草案的修改基本上没有涉及到DNS技术规范部分的改动。 早期的域名必须以英文句号“.”结尾,例如,当用户访问 pedia 的HTTP服务时必须在地址栏中输入::pedia.,这样DNS才能够进行域名解析。如今DNS伺服器已经可以自动补上结尾的句号。

记录类型

主条目:域名伺服器记录类型列表 DNS系统中,常见的资源记录类型有:
  • 主机记录(A记录):RFC 1035定义,A记录是用于名称解析的重要记录,它将特定的主机名映射到对应主机的IP位址上。
  • 别名记录(CNAME记录): RFC 1035定义,CNAME记录用于将某个别名指向到某个A记录上,这样就不需要再为某个新名字另外创建一条新的A记录。
  • IPv6主机记录(AAAA记录): RFC 3596定义,与A记录对应,用于将特定的主机名映射到一个主机的IPv6地址。
  • 服务位置记录(SRV记录): RFC 2782定义,用于定义提供特定服务的伺服器的位置,如主机(hostname),连线埠(port number)等。
  • NAPTR记录:RFC 3403定义,它提供了正则表达式方式去映射一个域名。NAPTR记录非常著名的一个套用是用于ENUM查询。

技术实现

概述

DNS通过允许一个名称伺服器把他的一部分名称服务(众所周知的zone)“委托”给子伺服器而实现了一种层次结构的名称空间。此外,DNS还提供了一些额外的信息,例如系统别名、联系信息以及哪一个主机正在充当系统组或域的邮件枢纽。 任何一个使用IP的计算机网路可以使用DNS来实现他自己的私有名称系统。尽管如此,当提到在公共的InterDNS系统上实现的域名时,术语“域名”是最常使用的。 这是基于504个全球范围的“根域名伺服器”(分成13组,分别编号为A至M)。从这504个根伺服器开始,余下的Inter DNS名字空间被委托给其他的DNS伺服器,这些伺服器提供DNS名称空间中的特定部分。

软体

DNS系统是由各式各样的DNS软体所驱动的,例如:
  • BIND(Berkeley Inter Name Domain),使用最广的DNS软体
  • DJBDNS(Dan J Bernstein's DNS implementation)
  • MaraDNS
  • Name Server Daemon(Name Server Daemon)
  • PowerDNS
  • Dn *** asq

国际化域名

主条目:Punycode Punycode 是一个根据RFC 3492标准而制定的编码系统,主要用于把域名从地方语言所采用的Unicode编码转换成为可用于DNS系统的编码。而该编码是根据域名相异字表(由IANA制定),Punycode可以防止所谓的IDN欺骗。

域名解析

举一个例子, zh.pedia 作为一个域名就和IP位址 198.35.26.96 相对应。DNS就像是一个自动的电话号码簿,我们可以直接拨打 198.35.26.96 的名字 zh.pedia 来代替电话号码(IP位址)。DNS在我们直接调用网站的名字以后就会将像 zh.pedia 一样便于人类使用的名字转化成像 198.35.26.96 一样便于机器识别的IP位址。 DNS查询有两种方式: 递归 叠代 。DNS客户端设定使用的DNS伺服器一般都是递归伺服器,它负责全权处理客户端的DNS查询请求,直到返回最终结果。而DNS伺服器之间一般采用叠代查询方式。 以查询 zh.pedia 为例:
  • 客户端传送查询报文"query zh.pedia"至DNS伺服器,DNS伺服器首先检查自身快取,如果存在记录则直接返回结果。
  • 如果记录老化或不存在,则:
  • DNS伺服器向根域名伺服器传送查询报文"query zh.pedia",根域名伺服器返回顶级域 的权威域名伺服器地址。
  • DNS伺服器向 域的权威域名伺服器传送查询报文"query zh.pedia",得到二级域.pedia 的权威域名伺服器地址。
  • DNS伺服器向 .pedia 域的权威域名伺服器传送查询报文"query zh.pedia",得到主机 zh 的A记录,存入自身快取并返回给客户端。

WHOIS(域名资料库查询)

一个域名的 所有者 可以通过查询WHOIS资料库而被找到;对于大多数根域名伺服器,基本的WHOIS由ICANN维护,而WHOIS的细节则由控制那个域的域注册机构维护。 对于240多个国家代码顶级域名(TLDs),通常由该域名权威注册机构负责维护WHOIS。例如中国网际网路信息中心(China Inter Neork Information Center)负责.CN域名的WHOIS维护,香港网际网路注册管理有限公司(Hong Kong Inter Registration Corporation Limited)负责.HK域名的WHOIS维护,台湾网上信息中心(Taiwan Neork Information Center)负责.TW域名的WHOIS维护。

其他

此外,一些黑客通过伪造DNS伺服器将用户引向错误网站,以达到窃取用户隐私信息的目的。这种DNS伺服器大约有68000台。

相关条目

  • 网际网路主题
  • IP位址
  • 域名
  • 中文域名
  • 域名抢注
  • 动态DNS
  • ICANN
  • DNSSEC
  • Google Public DNS
  • OpenDNS
  • 域名劫持/域名伺服器快取污染
  • 域名伺服器记录类型列表
  • 根域名伺服器