第17章 域名服务

一、基本概念

1.专业术语1

(1)hosts 

/etc/hosts文件:     

作用: 实现名字解析,主要为本地主机名、集群节点提供快速解析

(2)DNS域名系统   

作用: 实现名字解析(例如将主机名解析为IP)

(3)FQDN:(Fully Qualified Domain Name)完全合格域名/全称域名

例如:www.  baidu.  com  .

          主机名.二级域.顶级域.(根域)

(4)DNS区域文件

    DNS服务器,存储某个命名空间的域名记录文件。

    域名记录:IP 和  域名的对应关系。

2.专业术语2

(1)权威名称服务器

权威名称服务器: 存储并提供某个区域的实际数据

flags:qr  aa   rd

权威名称服务器类型包括:
         Master: 主DNS服务器,包含原始区域的数据

         Slave: 备份DNS服务器,通过(区域传输)从Master服务器获得区域数据的副本

(2)非权威名称服务器:

flags:qr rd ra

   非权威名称服务器: 不存储某个区域的实际数据,仅缓存DNS服务器,虽然可以提供查询,但查询的内容不具有权威性

(3)DNS解析流程  (面试题)

例如客户端解析 www.126.com
1. 客户端查询自己的缓存(包含hosts中的记录),如果没有,将查询发送/etc/resolv.conf中的DNS服务器

2. 如果本地DNS服务器对于请求的信息具有权威性,会将(权威答案)发送到客户端。

3. 否则(不具有权威性),如果DNS服务器在其缓存中有请求信息,则将(非权威答案)发送到客户端

4. 如果缓存中没有该查询信息,DNS服务器将搜索权威DNS服务器以查找信息:
a. 从根区域开始,按照DNS层次结构向下搜索,直至对于信息具有权威的名称服务器,为客户端获答案
DNS服务器将信息传递给客户端 ,并在自己的缓存中保留一个副本,以备以后查找。
b. 转发到其它DNS服务器



(4)服务器类型

    缓存服务器
    主服务器(正向/反向)
    从服务器(不维护区域文件)
    转发服务器

二、DNS服务器基本配置

1.缓存DNS服务器/转发器

(1)环境

    DNS服务器1:10.18.41.22

    DNS客户机:10.18.41.85

(2)部署DNS服务器

第一步:安装域名服务

#yum  -y   install   bind   bind-chroot

第二步:观察域名服务设置,启动查询功能

#vim  /etc/named.conf

options {
listen-on port 53 { any; };              
listen-on-v6 port 53 { any; };  
allow-query { any; };       

第三步:启动DNS服务器

#systemctl  start  named

#systemctl enable  named

第四步:查看DNS53号端口是否开启成功

#ss -tnl   | grep  :53

第五步:关防火墙

#setenfoce  0

#systemctl  stop  firewalld

(3)客户端测试DNS解析

#vim  /etc/resolv.conf

nameserver   10.18.41.22 ---上一台DNS服务器的地址

DNS服务器正常提供服务后
# dig www.baidu.com
;; ANSWER SECTION:
www.baidu.com.        1055    IN    CNAME    www.a.shifen.com.
www.a.shifen.com.    155    IN    A    111.13.100.92        //目标主机的IP地址

;; SERVER: 10.18.41.22 #53(上一台服务器的IP)

flags:qr rd ra 非权威答案

flags:qr aa rd 权威答案

(4)解析原理(根提示)

查看DNS服务主配置文件

#vim  /etc/named.conf


根配置文件:/var/named/named.ca--------包含了Internet的根服务器名字和地址


(5)扩展:DNS转发器

DNS转发Forward [通常转发到上一级的DNS服务器]

options {

...

forward  first;

forwarders{114.114.144.114;202.106.0.20;};

};


2.主DNS服务器配置/正向区解析配置

案例1:bijz.com


(1)搭建环境:

DNS服务器--10.18.41.22

DNS客户机--10.18.41.119

安装域名服务程序:#yum -y install  bind  bind-chroot


(2)主配置文件

(1)#vim  /etc/named.conf        //创建域bijz.com,相当于在域名服务商申请域名

zone "bijz.com" {
type master;
file "bijz.com.zone";
};

(2)数据库文件(区域文件) 在域名服务提供的页面上做解析

#vim  /var/named/bijz.com.zone

$TTL 600

@ IN SOA @ root ( 2017033100 1H 15M 1W 1D )   

解释://SOA授权    root.bijz.com管理员邮箱      (版本号时间戳 1小时同步 15分钟重试  1周过期 1天的缓存)

@ IN NS dns                             //bijz.com是DNS服务器的域名
dns IN A 10.18.41.22               //DNS服务器本机IP,声明本机是DNS服务器地址是10.18.41.22
ttt   IN  CNAME  www            //设置www的小名,访问ttt.bijz.com也是访问10.18.41.119
www IN A 10.18.41.119       //网站服务器IP,随便一个网站服务器

(3)重启DNS,使配置生效

#systemctl  restart   named

(4)客户端查询

第一步:指定本地DNS ----

#vim   /etc/resolv.conf

nameserver   10.18.41.22           

第二步:客户端解析域名

          第一种方法:

#dig  www.bijz.com

flags:qr rd ra 非权威答案
flags:qr aa rd 权威答案

          第二种方法:

#nslookup  www.bijz.com

猜你喜欢

转载自blog.csdn.net/bijingzhao123/article/details/80005073