Linux网络服务教程——DNS域名系统服务

1.DNS介绍

域名系统(英语:Domain Name System,缩写:DNS)是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS使用TCP和UDP端口53。

2.域名解析过程

举一个例子,www.cnblogs.com 作为一个域名就和IP地址 118.31.180.41 相对应。DNS就像是一个自动的电话号码簿,我们可以直接拨打 118.31.180.41 的名字 www.cnblogs.com  来代替电话号码(IP地址)。DNS在我们直接调用网站的名字以后就会将像 www.cnblogs.com  一样便于人类使用的名字转化成像 118.31.180.41  一样便于机器识别的IP地址。

DNS查询有两种方式:递归和迭代。DNS客户端设置使用的DNS服务器一般都是递归服务器,它负责全权处理客户端的DNS查询请求,直到返回最终结果。而DNS服务器之间一般采用迭代查询方式。

以查询 www.cnblogs.com 为例:

  • 客户端首先查找本地 hosts 文件,如果有则返回,否则进行下一步
  • 客户端查看本地缓存,是否存在本条目的缓存,如果有则直接返回,否则进行下一步。
  • 客户端发送查询报文"query www.cnblogs.com"至DNS服务器,DNS服务器查看域名是否本地解析,是则本地解析返回,否则进行下一步。

  • 本地 DNS 服务器首先检查自身缓存,如果存在记录则直接返回结果。
  • 如果记录老化或不存在,则:

    • DNS服务器向根域名服务器发送查询报文"query www.cnblogs.com",根域名服务器返回顶级域 .com 的权威域名服务器地址。 
    • DNS服务器向 .com 域的权威域名服务器发送查询报文"query www.cnblogs.com",得到二级域 .cnblogs.com 的权威域名服务器地址。
    • DNS服务器向 .cnblogs.com 域的权威域名服务器发送查询报文"query www.cnblogs.com",得到 www.cnblogs.com 主机的A记录,存入自身缓存并返回给客户端。

3.DNS软件信息

软件名称:bind

服务名称:named

软件端口:UDP 53(域名解析)

     TCP 53(主从同步)

配置文件:

  主配置文件:/etc/named.conf(服务器运行参数)

  

  区域配置文件:/etc/named.rfc1912.zones(服务器解析的区域配置,正反向区域定义信息)

  数据配置文件:/var/named/xxx.xxx(主机名和IP地址的对应解析关系及主从同步信息)

  

 

DNS系统中,常见的资源记录类型有:

  • 主机记录(A记录):A记录是用于名称解析的重要记录,它将特定的主机名映射到对应主机的IP地址上。
  • 别名记录(CNAME记录): CNAME记录用于将某个别名指向到某个A记录上,这样就不需要再为某个新名字另外创建一条新的A记录。
  • IPv6主机记录(AAAA记录): 与A记录对应,用于将特定的主机名映射到一个主机的IPv6地址。
  • 服务位置记录(SRV记录): 用于定义提供特定服务的服务器的位置,如主机(hostname),端口(port number)等。
  • 名称服务器记录(NS记录):委托DNS区域(DNS zone)使用已提供的权威域名服务器。
  • 电邮交互记录(MX记录):引导域名到该域名的邮件传输代理(MTA, Message Transfer Agents)列表。
  • 文本记录(TXT记录):可填写任何东西,长度限制 255。绝大多数的 TXT 记录是用来做 SPF 的(反垃圾邮件)。

 

posted @ 2020-02-13 15:00  hkxxf  阅读(276)  评论(1编辑  收藏  举报