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的两种工作模式:全编全解以及转发模式的区别,以及优缺点。求知识啊