DNS转发的两种模式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DNS转发的两种模式相关的知识,希望对你有一定的参考价值。

DNS转发

dns转发分为2种,全局转发和特定区域转发
全局转发是对非本机所负责解析区域的请求,全部转发给指定的服务器
特定区域转发是仅转发对特定的区域的请求,比全局转发优先级高
而转发又分为2种模式:first和only


一、测试:全局转发的only模式

准备客户机一台,dns服务器两台,将dns1服务器的转发地址者设置为dns2,dns1有两个网卡一个是内网,一个是外网,dns2只有一个连接内网的网卡

主机 ip
client 192.168.73.120
dns1 192.168.73.10 172.22.145.220
dns2 192.168.73.30

分别在dns1、dns2上配置dns服务
在dns2上部署配置dns

[[email protected] ~]# yum install bind -y
[[email protected] ~]# vim /etc/named.conf 
options {
//      listen-on port 53 { 127.0.0.1; };       #此行注释
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
//      allow-query     { localhost; };         #此行注释

dns2启动服务

[[email protected] ~]# systemctl start named

dns1主机上部署dns服务并设置dns转发,转发模式为only

options {
//      listen-on port 53 { 127.0.0.1; };           #注释
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
//      allow-query     { localhost; };             #注释
        forward         only;                       #转发模式设置为only
        forwarders      {192.168.73.30;};           #转发地址设置为dns2主机

        dnssec-enable no;                           #设置转发时需要关闭dnssec相关

        dnssec-validation no;                       #设置转发时需要关闭dnssec相关

在client主机上去解析www.baidu.com

[[email protected] ~]# dig www.baidu.com @192.168.192.10

; <<>> DiG 9.9.4-RedHat-9.9.4-72.el7 <<>> www.baidu.com @192.168.192.10
;; global options: +cmd
;; connection timed out; no servers could be reached

转发模式为only的情况下,无法解析到www.baidu.com的地址。


二、测试:全局转发的first模式

将dns1设置为first模式下的转发

[[email protected] ~]# vim /etc/named.conf 
options {
//      listen-on port 53 { 127.0.0.1; };
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
//      allow-query     { localhost; };
        forward         first;                  #修改为first
        forwarders      {192.168.73.30;};

重读配置文件

[[email protected] ~]# rndc reload
server reload successful

在client上进行测试

[[email protected] ~]# dig www.baidu.com @192.168.73.10

; <<>> DiG 9.9.4-RedHat-9.9.4-72.el7 <<>> www.baidu.com @192.168.73.10
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 44783
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 5, ADDITIONAL: 6

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.baidu.com.         IN  A

;; ANSWER SECTION:
www.baidu.com.      1200    IN  CNAME   www.a.shifen.com.
www.a.shifen.com.   300 IN  A   61.135.169.121
www.a.shifen.com.   300 IN  A   61.135.169.125

;; AUTHORITY SECTION:
a.shifen.com.       1199    IN  NS  ns2.a.shifen.com.
a.shifen.com.       1199    IN  NS  ns5.a.shifen.com.
a.shifen.com.       1199    IN  NS  ns4.a.shifen.com.
a.shifen.com.       1199    IN  NS  ns3.a.shifen.com.
a.shifen.com.       1199    IN  NS  ns1.a.shifen.com.

;; ADDITIONAL SECTION:
ns1.a.shifen.com.   1199    IN  A   61.135.165.224
ns2.a.shifen.com.   1199    IN  A   220.181.57.142
ns3.a.shifen.com.   1199    IN  A   112.80.255.253
ns4.a.shifen.com.   1199    IN  A   14.215.177.229
ns5.a.shifen.com.   1199    IN  A   180.76.76.95

;; Query time: 2835 msec
;; SERVER: 192.168.73.10#53(192.168.73.10)
;; WHEN: Tue Apr 23 23:30:16 CST 2019
;; MSG SIZE  rcvd: 271

此时服务器返回的为dns1从网络上其他dns所解析到的地址


结论:

first模式:先到本地DNS查找,若本地dns查找不到记录,去其他的dns服务器查找,若其他dns服务器也没有,直接去根服务器查找
only模式:先到本地DNS查找,若本地dns查找不到记录,去其他的dns服务器查找,若其他dns服务器也没有,直接放弃。

以上是关于DNS转发的两种模式的主要内容,如果未能解决你的问题,请参考以下文章

视频会议系统MCU的两种工作模式:全编全解以及转发模式的区别,以及优缺点。求知识啊

学习笔记:ubuntu永久修改DNS的两种方法

eureka集群的两种配置方式:配置文件方式与DNS方式

eureka集群的两种配置方式:配置文件方式与DNS方式

Windows server 2008 r2 DC 与DNS的分离与安装的两种方法

创建后台任务的两种代码模式