1.简述DNS服务器原理,并搭建主-辅服务器

简述DNS服务器原理,并搭建主-辅服务器

 

DNS:(Domain Name System,域名系统),应用层协议,是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网,基于C/S架构,服务器端:53/udp, 53/tcp

 

根域: 全球根服务器节点只有13个,10个在美国,1个荷兰,1个瑞典,1个日本

一级域名:Top Level Domain: tld

三类:组织域、国家域(.cn, .ca, .hk, .tw)、反向域arpa

通用顶级域名:org, edu, mil, gov, net, org, int

二级域名:magedu.org

三级域名:study.magedu.org

最多可达到127级域名

 

如:www.mage.org. 这个域名,分解后含义如下:

.           #表示根域

.org        #表示顶级域

mage.org   #表示二级域

www         #表示主机名

 

DNS服务器规则

1) 每一个主机都知道根域在哪里;

2) 上级必须知道下级;

3) 下级不知道上级;

4) 查询两段式递归查询和迭代查询;

5) 根域不迭代(根全球有13台a-m.root-servers.net);

6) 顶级域不迭代;

7)  二级域服务器可以只提供权威查询不提供迭代或转发;

 

DNS的工作模式:

DNS查询以各种不同的方式进行解析,客户机可通过使用从以前查询获得的缓存信息就地应答查询,DNS服务器也可以使用其自身的资源记录缓存来应答查询。但更多是使用递归查询和迭代查询两种方式。

 

递归查询:DNS服务器收到一个域名解析请求时,如果所要检索的资源记录不在本地,DNS服务器将和自己的上一层服务器交互,获得最终的答案,并将其返回给客户

 

迭代查询:DNS服务器收到解析请求,首先在本地的数据库中查找是否有相应的资源记录,如果没有,则向客户提供另外一个DNS服务器的地址,客户负责把解析请求发送给新的DNS服务器地址

 

 

 

 

完整的DNS查询请求经过的流程

如:访问 www.mage.org

1)/etc/hosts:client查看本地hosts文件有没有记录获取IP地址,如果没有,进行下一步

2)/etc/resolv.conf:client向本地DNS服务器发出域名查询请求,如10.0.0.1。若此DNS服务器本地有记录(如A记录)或缓存记录,则直接从本地中获取对应的IP,如果没有,进行下一步

3)根DNS:本地的DNS服务器10.0.0.1向DNS服务器(.)发出域名查询请求,根域名服务器返回org.主机的DNS服务器IP地址;

4)org.:本地的DNS服务器10.0.0.1继续向org.的DNS服务器发出域名查询请求,org. DNS服务器返回mage.org主机的DNS服务器IP地址;

5)mage.org. :本地的DNS服务器通过mage.org.的DNS服务器去查询,返回www.mage.org主机的IP地址;

6)本地的DNS服务器将域名查询结果返回给client,并将的这一记录在缓存中保留下来。 client用得到的IP访问 www.mage.org。

在这个查询过程中,从客户端到本地DNS服务器是属于递归查询,而DNS服务器之间就是迭代查询。

 

DNS工作原理:

1、当在浏览器中输入URL时,浏览器会先检查自己的缓存是否有域名IP的映射关系,有则直接使用IP进行通信

2、如浏览器没有缓存,则操作系统检查本地hosts文件是否有域名IP的映射关系,有则使用IP进行通信

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

4、如果还未找到映射关系,首先会找TCP/IP参数中设置的首选DNS服务器,也就是本地DNS服务器,如果服务器已缓存了映射关系,则使用这个IP地址映射返回完成域名解析,此时解析不具有权威性

5、如果本地DNS服务器缓存已经失效,进行递归查询。

完整的查询请求经过的流程:

Client -->hosts文件 --> Client DNS Service Local Cache --> DNS Server (recursion递

) --> DNS Server Cache -->DNS iteration(迭代) --> 根--> 顶级域名DNS-->二级域名DNS…

 

 

搭建DNS主-辅服务器

 

 

 

环境要求:

 

需要四台主机

 

DNS主服务器:10.0.0.8

 

DNS从服务器:10.0.0.18

 

web服务器:10.0.0.7

 

DNS客户端:10.0.0.6

 

 

 

 

 

前提准备:

 

关闭SElinux

 

关闭防火墙

 

时间同步:chrony

 

 

 

实现步骤

 

 

 

1、主DNS服务端配置

 

 

 

yum install bind -y

 

 

 

vim /etc/named.conf

 

#注释掉下面两行

 

// listen-on port 53 { 127.0.0.1; };

 

// allow-query { localhost; };

 

 

 

#只允许从服务器进行区域传输

 

allow-transfer { 从服务器IP;};

 

 

 

vim /etc/named.rfc1912.zones

 

#加上这段

 

zone "magedu.org" {

 

type master;

 

file "magedu.org.zone";

 

};

 

 

 

cp -p /var/named/named.localhost /var/named/magedu.org.zone

 

#如果没有-p,需要改权限。chgrp named magedu.org.zone

 

 

 

vim /var/named/magedu.org.zone

 

$TTL 1D

 

@   IN SOA  @ rname.invalid. (

 

                    0   ; serial

 

                    1D  ; refresh

 

                    1H  ; retry

 

                    1W  ; expire

 

                    3H )    ; minimum

 

        NS  master

 

        NS  slave

 

master  A   10.0.0.8

 

slave   A   10.0.0.18

 

 

 

websrv  A   10.0.0.7

 

www     CNAME   websrv            

 

 

 

systemctl start named #第一次启动服务

 

rndc reload #不是第一次启动服务

 

 

 

 

 

2、从DNS服务器配置

 

 

 

yum install bind -y

 

vim /etc/named.conf

 

注释掉下面这两行:

 

// listen-on port 53 { 127.0.0.1; };

 

#//allow-query { localhost; };

 

 

 

#不允许其它主机进行区域传输

 

allow-transfer { none;};

 

 

 

vim /etc/named.rfc1912.zones

 

zone "magedu.org" {

 

type slave;

 

masters { 10.0.0.8; };

 

file "slaves/magedu.org.slave";

 

};

 

 

 

systemctl start named #第一次启动服务

 

rndc reload #不是第一次启动服务

 

ls /var/named/slaves/magedu.org.slave #查看区域数据库文件是否生成

 

 

3、配置web服务器

web服务器上安装http服务

yum install httpd -y                      

#配置主页面

echo www..mage.org > /var/www/html/index.html

#启动服务

systemctl start httpd

 

4、客户端测试主从DNS服务架构

ifconfig eth0 |awk -F' +|:' 'NR==2{print $4}'

vim /etc/sysconfig/network-scripts/ifcfg-eth0

DNS1=10.0.0.8

DNS2=10.0.0.18

 

#验证主DNS服务器是否可以查询

nslookup www.magedu.org

dig www.magedu.org

curl www.magedu.org

 

 

 

 

 

#在主服务器上停止DNS服务,验证从DNS服务器是否可以查询

systemctl stop named

nslookup www.magedu.org

dig www.magedu.org

curl www.magedu.org

 

 

 

 

 

 

 

 

posted @ 2022-07-24 19:03  惊起千层浪  阅读(359)  评论(0编辑  收藏  举报