DNS服务基础(一)

一、DNS简介

DNS(Domain Name System,域名系统),它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网。DNS使用TCP和UDP(无连接协议)口53,主要使用UDP,TCP协议使用服务器之间备份。对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。

二、DNS域名结构

1、DNS数据库中的名称形成一个分层树状结构称为域命名空间。域名空间常见组织方式:根域-->顶级域-->第二层域-->子域-->主机。域名只是逻辑概念,并不代表计算机所在的物理地点。顶级域名TLD(Top Level Domain)已有265个,分为三大类:

1)、国家顶级域名nTLD:采用ISO3166的规定。如:cn代表中国,us代表美国,uk代表英国等;

2)、通用顶级域名gTLD:最常见的通用顶级域名有7个,即:com(公司企业),net(网络服务机构),org(非营利组织),int(国际组织),gov(美国的政府部门),mil(美国的军事部门);

3)、基础结构域名(infrastructure domain):这种顶级域名只有一个,即arpa,用于反向域名解析,因此称为反向域名。

结构示意图如下:

2、全球共有十三组根域名服务器,其中10个在美国,另外3个分别在日本、荷兰和瑞典。

名称                     管理单位及设置地点        IP地址

A (INTERNIC.NET)             (美国,弗吉尼亚州)          198.41.0.4

B (美国信息科学研究所)       (美国,加利弗尼亚州)        128.9.0.107

C (PSINet公司)               (美国,弗吉尼亚州)          192.33.4.12

D (马里兰大学)               (美国马里兰州)              128.8.10.90

E (美国航空航天管理局)       (美国加利弗尼亚州)          192.203.230.10

F (因特网软件联盟)           (美国加利弗尼亚州)          192.5.5.241

G (美国国防部网络信息中心)   (美国弗吉尼亚州)            192.112.36.4

H (美国陆军研究所)           (美国马里兰州)              128.63.2.53

I (Autonomica公司)           (瑞典,斯德哥尔摩)          192.36.148.17

J (VeriSign公司)             (美国,弗吉尼亚州)          192.58.128.30

K (RIPE NCC)                 (英国,伦敦)                193.0.14.129

L (IANA)                     (美国,弗吉尼亚州)          198.32.64.12

M (WIDE Project)             (日本,东京)                202.12.27.33

3、DNS服务器以下几种类型

主DNS服务器:可创建区域的DNS服务器,区域数据也称为正本区域数据。在一个DNS服务网络中,可以建立多个主DNS服务器,这样可以提供DNS服务的容错性。

辅助DNS服务器:不创建区域,它的区域数据是从主DNS服务器复制来的,因此,区域数据只能读不能修改,也称为副本区域数据。当启动辅助DNS服务器时,辅助DNS服务器会和建立联系的主DNS服务器联系,并从主DNS服务器中复制数据。辅助DNS服务器在工作时,它会定期地更新副本区域数据,以尽可能地保证副本和正本区域数据的一致性。辅助DNS服务器除了可以从主DNS服务器复制数据外,还可以从其他辅助DNS服务器复制区域数据。在一个区域中设置多个辅助DNS服务器可以提供容错,分担主DNS服务器的负担,同时可以加快DNS解析的速度。

Cache-Only服务器(缓存服务器):Cache-Only服务器上不存在任何区域数据,它只帮助DNS客户机向其他DNS服务器进行查询,然后将查询到的数据存储在一份高速缓存Cache中,响应客户机的查询请求。Cache-Only 服务器只负责查询数据,当客户机查询数据时,如果Cache中存在数据,则Cache可以将结果快速反馈给客户机。

DNS转发服务器:DNS转发服务器是一种特殊类型的DNS服务器。在一个DNS网络中,如果客户机向指定的DNS服务器解析的域名不成功,DNS服务器就可以将客户机的解析请求发送给一台DNS转发服务器,顾名思义,DNS转发服务器就是将域名请求转发给其他DNS服务器。

4、DNS解析类型

术语:FQDN(full qualified domain name)完整主机名。由主机名与域名组成。如:www.163.com,www是主机名,163.com是域名

正向解析:FQDN解析为IP。

反向解析:解析IP为FQDN。

转发:将特定网络内容或者所有内容转发给特定DNS服务器解析。

子域授权:授权一个子域。

三、DNS查询类型以及工作原理

1、DNS查询类型

递归查询:DNS服务器接收到客户机请求,必须使用一个准确的查询结果回复客户机。如果DNS服务器本地没有存储查询DNS信息,那么该服务器会询问其他服务器,并将返回的查询结果提交给客户机。

迭代查询:DNS服务器会向客户机提供其他能够解析查询请求的DNS 服务器地址,当客户机发送查询请求时,DNS服务器并不直接回复查询结果,而是告诉客户机另一台DNS服务器地址,客户机再向这台DNS 服务器提交请求,依次循环直到返回查询的结果为止。

以上2种查询类型工作过程如下图:

    

2、根据上图,简述正向解析工作流程(也有反向解析)

1)、客户端发起一个DNS查询请求,如此浏览器地址栏输入www.163.com敲回车之后,浏览器并真正发起DNS请求,而是先查询本机的DNS缓存中是否有该域名对应的地址,有的话直接访问该地址,没有的话查询本机的hosts文件,如果本机的hosts文件中有该域名对应的地址,那么此刻客户端是不会发起dns请求的,但是通常情况下本地的host文件是空的,就继续第二部操作;

2)、经历是前面两次本机内部的查询之后发现并没有该域名对应的IP地址,于是客户端正式向本地的DNS服务器发起DNS查询请求;

3)、本地的DNS服务器收到这个查询请求后,会查询自己的缓存中以及自己的资源记录中是否有该域名对应的IP地址,如果在自己的缓存中以及本机的资源记录(下面阐述)中依然找不到该对应的IP地址,此时本地DNS服务器会把请求发送给根服务器(13组服务器)中的一台;

4)、其中一台根服务器收到这个请求后,会发送一个回复说,.com的域名解析服务我已经委派给.com这台域名服务器了,给你这个.com这台域服务器的地址,你去哪里查询吧,此时本地DNS服务器就进入了迭代查询;

5)、本地DNS服务器收到这个参考答案后,就会将它收到来自客户端的DNS请求再次发往.com域名服务器;

6)、负责.com域名解析服务器收到这个请求后,会回复说163.com的主区域服务器应该会知道答案,给你163.com主区域服务器的地址,你去它那里查询吧;

7)、本地DNS服务器收到这个参考答案后,就会将它收到来自客户端的DNS请求再次发往163.com主区域服务器,当163.com这个主区域服务器收到这个DNS请求后,查询自己的缓存以及自己的资源记录,终于找到本区域内有一个www的主机。于是将www.163.com对应的ip地址回复给本地DNS服务器;

8)、此时本地DNS服务器收到这个回复后,会将这条记录回复给客户端,同时将该记录写入到自己的缓存中,以便备查。

四、区域解析库与资源记录

1、区域解析库由多个资源记录(Resource Record,简称RR)组成。

2、资源记录类型以及应用

1)、资源记录常见类型:

SOA(Start Of Authority,起始授权机构),一个区域解析库有且仅能有一个SOA记录,而必须为解析库的第一条记录。

A(internet Address,主机),FQDN解析为IPv4。

AAAA(主机),FQDN解析为IPv6。

NS(Name Server,名称服务器),标明当前区域的DNS服务器。

MX(Mail eXchanger,邮件交换器),邮件 Exchange Server DNS 名称的首选项值。

CNAME(Canonical Name,别名记录),规范名称

PTR(pointer,DNS反向),是一个指针记录,用于将一个IP地址映射到对应的主机名,也可以看成是A记录的反向,通过IP访问域名,原来是通过域名访问IP。

2)、资源记录定义的格式:

语法:name(名称)  [TTL](时间)  IN(互联网)  rr_type(类型)  value

         注意以下几点:

 (1) TTL可从全局继承;

 (2) @可用于引用当前区域的名字;

 (3) 同一个名字可以通过多条记录定义多个不同的值;此时DNS服务器会以轮询方式响应;

 (4) 同一个值也可能有多个不同的定义名字;通过多个不同的名字指向同一个值进行定义;此仅表示通过多个不同的名字可以找到同一个主机而已;

举例:

SOA:

name: 当前区域的名字,例如“baidu.com.”;

value: 有多部分组成(主名称服务器 DNS 名称、 序列号、刷新间隔、重试间隔、过期时间、最小 TTL)

(1) 当前区域的主DNS服务器的FQDN,也可以使用当前区域的名字;

(2) 录前区域管理员的邮箱地址;但地址中不能使用@符号,一般用.替换,例如ex.baidu.com;

(3) (主从服务协调属性的定义以及否定的答案的统一的TTL)

例如:

baidu.com. 86400 IN  SOA  ns.baidu.com. nsadmin.baidu.com. (

2016082601  ;序列号

1H        ;刷新时间

20M  ;重试时间

1W  ;过期时间

1D  ;否定答案的TTL值

)

A:

name: 某主机的FQDN,例如www.baidu.com.

value: 主机名对应主机的IP地址;

例如:

www.baidu.com. IN   A  3.3.3.3

www.baidu.com. IN   A   3.3.3.3

mx1.baidu.com.      IN     A   3.3.3.3

mx2.baidu.com.   IN    A   3.3.3.3

              注意:避免用户写错名称时给错误答案,可通过泛域名解析进行解析至某特定地址;

*.baidu.com.  IN   A   3.3.3.4

baidu.com. IN    A   3.3.3.4

NS:

name: 当前区域的名字

value: 当前区域的某DNS服务器的名字,例如ns.baidu.com.;

例如:

baidu.com. IN  NS   ns1.baidu.com.

baidu.com. IN  NS   ns2.baidu.com.

     注意:

     (1) 相邻的两个资源记录的name相同时,后续的可省略;

     (2) 对NS记录而言,任何一个ns记录后面的服务器名字,都应该在后续有一个A记录;

             (3)一个区域可以有多个NS记录

MX:

name: 当前区域的名字

value: 当前区域的某邮件服务器(smtp服务器)的主机名;一个区域内,MX记录可有多个;但每个记录的value之前应该有一个数字(0-99),表示此服务器的优先级;数字越小优先级越高;

例如:

baidu.com. IN   MX  10  mx1.baidu.com.

IN  MX  20  mx2.baidu.com.

注意:对MX记录而言,任何一个MX记录后面的服务器名字,都应该在后续有一个A记录;

CNAME:

name: 别名的FQDN

value: 正工名字的FQDN;

例如:

web.baidu.com.  IN   CNAME   www.baidu.com.

PTR:

name: IP,有特定格式,把IP地址反过来写,1.2.3.4,要写作4.3.2.1;而有特定后缀:in-addr.arpa.,所以完整写法为:4.3.2.1.in-addra.arpa.

value: FQDN

例如:

4.3.2.1.in-addr.arpa.  IN  PTR  www.baidu.com

简写成:4   IN  PTR  www.baidu.com.

注意:网络地址及后缀可省略;主机地址依然需要反着写;

时间: 2024-08-05 14:51:02

DNS服务基础(一)的相关文章

DNS服务基础及bind基础配置和应用

DNS服务基础及bind基础配置和应用  DNS服务基础011.DNS:Domain   Name  Service,  ( 应用层协议)2.tld:Top Level Domain 顶级域(1)顶级域中的组织域.com  (company).net    网络组织.org非盈利型组织   org:other  organizations.gov  government.edu    教育机构.mil   military军事的,军队,军人...(2)顶级域中的国家域.tw   .hk  .cn

DNS服务基础(二)之Bind

一.BIND服务器简介 Bind(Berkeley Internet Name Domain Service),它是一款实现DNS服务器的开放源码软件,够提供双向解析,转发,子域授权,view等功能,是世界上使用最为广泛的DNS服务器软件,目前Internet上半数以上的DNS服务器有都是用Bind来架设的. 二.BIND基本安装与配置 1.Bind安装(最基本的bind:主程序.bind-libs:库文件.bind-utils:客户端工具三个组件) #yum install bind 2.Bi

DNS服务基础原理介绍

FQDN 全称域名 localhost(主机名或者是别名).localdomain(域名)    FQDN=主机名.域名 根域               . 顶级域名       .com   .net    .org 二级域名 www  一般是代表一台主机的别名 DNS服务基础原理 1.小型规模  适用于企业内部网络 2.DNS解析原理 DNS解决方案 1.bind           使用最广泛 2.Unbond DNS:Domain Name Service 应用层协议 1.udp  5

DNS服务基础知识

一.DNS的基本概念 DNS:domain name server域名:www.baidu.com(主机名,FQDN,full qualified domain name,完全限定域名) 二.DNS的类型主DNS服务器:数据的修改 DNS服务器类型辅助DNS服务器:请求数据的同步serial numberrefreshretryexpirenagative answer TTL 缓存dns服务器转发器 三.资源记录 数据库中的,每一个条目称作一个资源记录(resource record RR)资

Linux的DNS服务基础概念

DNS的查询方式 1.递归 递归的意思就是 客户端只需要问一次,如果上级DNS服务器不知道,那么上级DNS服务器会自己去找自己的DNS服务器. 2.迭代 迭代的意思就是客户端需要自己一个DNS服务器 一个DNS服务器自己去问. DNS名称解析方式 正向解析  输入域名找IP 方向解析 输入IP找域名 主备DNS服务器 备DNS服务器的DNS记录需要不停的跟主DNS服务器数据库进行同步. 对DNS记录的改变只能在主DNS服务器上. "复制"操作的实施方式: 序列号:也是数据库的版本号,每

2、DNS服务基础及进阶

参考: http://www.178linux.com/67736 https://zhuanlan.zhihu.com/p/60917672 https://www.cnblogs.com/f-ck-need-u/p/7367503.html DNS服务器的类型: 主DNS服务器 它是特定域所有信息的权威性信息源.它从域管理员构造的本地磁盘文件中加载域信息,该文件(区文件)包含着该服务器具有管理权的一部分域结构的最精确信息.主服务器是一种权威性服务器,因为它以绝对的权威去回答对其管辖域的任何查

DNS服务基础

原文地址:http://blog.51cto.com/13587169/2066566

服务基础篇       dns 域名解析服务  

实验环境   :     redhat7.2       redhat 6.7      redhat    6.7 搭建主从DNS服务 :         主服务器ip  192.168.1.144     从服务器ip192.168.1.120 客户机   192.168.1.110 服务安装包 修改主配置文件named.conf 监听端口开放 允许任何主机访问 修改named.rfc1912.zone 定义正反向解析区域  ,   服务模式为master  且允许从dns服务器同步数据 修

使用bind配置基础DNS服务

1.17 BIND [[email protected]~]# yum list |grep "^bind" bind.i686                                  32:9.8.2-0.30.rc1.el6_6.1     updates bind-chroot.i686                          32:9.8.2-0.30.rc1.el6_6.1    updates bind-devel.i686