首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >浅谈DNS

浅谈DNS

作者头像
三丰SanFeng
发布2018-01-16 16:21:44
4.4K0
发布2018-01-16 16:21:44
举报
文章被收录于专栏:三丰SanFeng三丰SanFeng

什么叫域名解析

域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站一种服务。IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换过程。域名的解析工作由DNS服务器完成。

域名解析也叫域名指向、服务器设置、域名配置以及反向IP登记等等。说得简单点就是将好记的域名解析成IP,服务由DNS服务器完成,是把域名解析到一个IP地址,然后在此IP地址的主机上将一个子目录与域名绑定。

DNS的查询过程

当DNS客户机需要查询程序中使用的名称时,它会查询本地DNS 服务器来解析该名称。客户机发送的每条查询消息都包括3条信息,以指定服务器应回答的问题。

l 指定的 DNS 域名,表示为完全合格的域名 (FQDN) 。(完整网域名称由主机名称与母网域名称两部分所组成,例如有一部服务器的本地主机名为myhost,而其母域名为example.com,那指向该服务器的完整网域名称就是myhost.example.com。虽然世界上可能有很多服务器的本地主机名是myhost,但myhost.example.com是唯一的,因此完整网域名称能识别该特定服务器。)

l 指定的查询类型,它可根据类型指定资源记录,或作为查询操作的专门类型。

l DNS域名的指定类别。对于DNS 服务器,它始终应指定为 Internet 类别。例如,指定的名称可以是计算机的完全合格的域名,如im.qq.com,并且指定的查询类型用于通过该名称搜索地址资源记录。

另外,客户机自己也可尝试联系其他的 DNS 服务器来解析名称。如果客户机这么做,它会使用基于服务器应答的独立和附加的查询,该过程称作迭代,即DNS服务器之间的交互查询就是迭代查询。 DNS 查询的过程如下图所示。

clip_image001
clip_image001

举一个例子来详细说明解析域名的过程,假设我们要访问的站点时:www.163.com, 域名解析的过程如下所示:

1. 在浏览器中输入www.163.com域名,操作系统会先检查自己本地的hosts文件是否有这个网址映射关系,如果有,就先调用这个IP地址映射,完成域名解析。

2. 如果hosts里没有这个域名的映射,则查找本地DNS解析器缓存,是否有这个网址映射关系,如果有,直接返回,完成域名解析。

3. 如果hosts与本地DNS解析器缓存都没有相应的网址映射关系,首先会找TCP/ip参数中设置的首选DNS服务器,在此我们叫它本地DNS服务器,此服务器收到查询时,如果要查询的域名,包含在本地配置区域资源中,则返回解析结果给客户机,完成域名解析,此解析具有权威性。

4. 如果要查询的域名,不由本地DNS服务器区域解析,但该服务器已缓存了此网址映射关系,则调用这个IP地址映射,完成域名解析,此解析不具有权威性。

5. 如果本地DNS服务器本地区域文件与缓存解析都失效,则根据本地DNS服务器的设置(是否设置转发器)进行查询,如果未用转发模式,本地DNS就把请求发至13台根DNS,根DNS服务器收到请求后会判断这个域名(.com)是谁来授权管理,并会返回一个负责该顶级域名服务器的一个IP。本地DNS服务器收到IP信息后,将会联系负责.com域的这台服务器。这台负责.com域的服务器收到请求后,如果自己无法解析,它就会找一个管理.com域的下一级DNS服务器地址(163.com)给本地DNS服务器。当本地DNS服务器收到这个地址后,就会找163.com域服务器,重复上面的动作,进行查询,直至找到www.163.com主机。

6. 如果用的是转发模式,此DNS服务器就会把请求转发至上一级DNS服务器,由上一级服务器进行解析,上一级服务器如果不能解析,或找根DNS或把转请求转至上上级,以此循环。不管是本地DNS服务器用是是转发,还是根提示,最后都是把结果返回给本地DNS服务器,由此DNS服务器再返回给客户机。

clip_image003
clip_image003

从客户端到本地DNS服务器是属于递归查询,而DNS服务器之间就是的交互查询就是迭代查询。

DNS记录常见类型

l A记录解析

记录类型选择“A”;记录值填写空间商提供的主机IP地址;MX优先级不需要设置;TTL设置默认的3600即可。

l CNAME记录解析

CNAME类型解析设置的方法和A记录类型基本是一样的,其中将记录类型修改为“CNAME”,并且记录值填写服务器主机地址即可。

l MX记录解析

MX记录解析是做邮箱解析使用的。记录类型选择MX,线路类型选择通用或者同时添加三条线路类型为电信、网通、教育网的记录;记录值填写邮局商提供的服务器IP地址或别名地址;TTL设置默认的3600即可,MX优先级填写邮局提供商要求的数据,或是默认10,有多条MX记录的时候,优先级要设置不一样的数据。

国际根域名服务器

互联网上的域名可谓千姿百态,但从域名的结构来划分,总体上可把域名分成两类,一类称为“国际顶级域名”,一类称为“国内域名”。

一般国际域名的后缀大多诸如com,net.gov.edu”等国际通用域”,这些不同的后缀分别代表了不同的机构性质。比如.com表示的是商业机构,.net表示的是网络服务机构,.gov表示的是政府机构,.edu表示的是教育机构。

由于互联网的发展是从美国开始的,因此,美国一直保持着对互联网域名及根服务器的控制。目前,全球共有13台套根域名服务器,其中美国10个,欧洲2个(位于英国和瑞典)、亚洲1个(位于日本),并在全球部署有三百多个根镜像服务节点,在中国大陆地区有5个,覆盖了F、I、J、L 根。其中,F 根由ISC(Internet Systems Consortium)机构与CNNIC合作,在北京建设了两个F根镜像服务节点,由中国电信和CNNIC分别提供网络接入;Verisign与中国联通合作,在北京建设了J根镜像服务器,中国联通提供接入。另外两个由CNNIC提供网络机房环境分别与Netnod、ICANN合作,在北京建设了I、L根镜像服务节点。目前中国还有相关机构继续与国际合作实施更多的根镜像节点。

clip_image004
clip_image004
中国的镜像服务器

国内域名的后缀通常要包括“国际通用域”和“国家域”两部分,而且要以“国家域”作为最后一个后缀。以ISO31660为规范,各个国家都有自己固定的国家域,如:cn代表中国、us代表美国、uk代表英国等。

国内域名的后缀通常要包括“国际通用域”和“国家域”两部分,而且要以“国家域”作为最后一个后缀。以ISO31660为规范,各个国家都有自己固定的国家域,如:cn代表中国、us代表美国、uk代表英国等。

也许正是因为看到IPv4即将退出,以及中国在IPv6上的迅猛发展,美国才允许中国于2003年和2004年开通根域名服务器的中国镜像服务器,也就是引进了域名根服务器的F镜像服务器(大致的说,镜像服务器就是原根服务器的克隆服务器)和J镜像服务器及顶级域名.COM .NET的镜像服务器,国内从此有了域名根服务器的镜像服务器,当时这些镜像服务器安装在中国电信,后来随着国家将中国电信按照南北两大块拆分办法,将中国电信拆分为江南的中国电信与江北的中国网通两大公司,目前F镜像服务器安装在中国电信,J镜像服务器和.COM .NET镜像服务器则安装在中国网通。

有了域名根服务器的镜像服务器后,国内解析.CN域名和COM域名就不用到国外的域名根服务器获得顶级索引了,这将从根本上提高国内网络访问速度。这意味着,自2004年以后中国网民访问com.net网站时,域名解析将不再由设置在境外的域名服务器提供服务,而是直接由设置在中国电信的“F镜像服务器”和设置在中国网通的“J镜像服务器”来提供。

linux下使用dig命令查看根服务地址:

clip_image006
clip_image006

anycast

前面提到,全球部署有三百多个根镜像服务节点(mirror),因此可以较好的抵抗针对其所进行的分布式拒绝服务攻击(DDoS),而这种安全性是通过任播(anycast)来实现的。

任播(anycast)是一种网络地址和路由的策略,使得资料可以根据路由拓朴来决定送到“最近”或“最好”的目的地。任播是与单播、广播和多播不同的方式。

l 在单播中,在网络地址和网络节点之间存在一一对应的关系。

l 在广播和多播中,在网络地址和网络节点之间存在一对多的关系:每一个目的地址对应一群接收可以复制资讯的节点。

l 在任播中,在网络地址和网络节点之间存在一对多的关系:每一个地址对应一群接收节点,但在任何给定时间,只有其中之一可以接收到传送端来的资讯。

通俗一点来说,Anycast可以把好多台机器整成一个公网IP地址,然后通过BGP宣告给运营商,从而实现客户端就近访问,以及节点失败后,服务自动转移等功能。Anycast最佳的应用环境就是DNS,一般DNS查询走的都是UDP协议,IP Anycast 结合 BGP的为DNS全球冗余及加速提供天然的条件。

在互联网中,通常使用边界网关协议(BGP)来实现Anycast。

在网络上,任播可以用来帮助抵御DDOS并减少它们的效率。既然流量是导到最近的而非攻击者程式能控制的节点,洪水攻击流量将被分散到最近的节点。这通常意味着并非所有的节点被影响。这通常是一个布署任播位址的重要理由。

DNS是整个互联网运行的基础之一,怎么强调它的重要性都不为过。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2015-11-25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么叫域名解析
  • DNS的查询过程
  • DNS记录常见类型
  • 国际根域名服务器
    • 中国的镜像服务器
    • anycast
    相关产品与服务
    弹性公网 IP
    弹性公网 IP(Elastic IP,EIP)是可以独立购买和持有,且在某个地域下固定不变的公网 IP 地址,可以与 CVM、NAT 网关、弹性网卡和高可用虚拟 IP 等云资源绑定,提供访问公网和被公网访问能力;还可与云资源的生命周期解耦合,单独进行操作;同时提供多种计费模式,您可以根据业务特点灵活选择,以降低公网成本。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档