DNS 전달 모드 2개

3828 단어

DNS 전달


nns 전송은 2가지로 나뉘는데 전역 전송과 특정 구역 전송은 본 컴퓨터가 책임지지 않는 해석 구역에 대한 요청이다. 모두 지정된 서버에 전송하고 특정 구역에 대한 요청은 전역 전송보다 우선순위가 높고 전송은 2가지 모델로 나뉜다. 퍼스트와 온리.

1. 테스트: 전역 전송 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 설정
[root@dns2 ~]# yum install bind -y
[root@dns2 ~]# 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; };         # 

nns2 시작 서비스
[root@dns2 ~]# 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
[root@centos7 ~]# 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 주소.

2. 테스트: 전역 전송의first 모드


dns1을first 모드로 설정하여 전송
[root@dns1 ~]# 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;};

구성 파일 다시 읽기
[root@dns1 ~]# rndc reload
server reload successful

client에서 테스트
[root@centos7 ~]# 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<

이 때 서버는 dns1이 네트워크에서 다른 dns에서 분석한 주소로 되돌아옵니다

결론:


first 모드: 로컬 DNS에서 먼저 찾습니다. 로컬 dns에서 기록을 찾지 못하면 다른 dns 서버에서 찾습니다. 다른 dns 서버도 없으면 루트 서버에서 only 모드를 찾습니다. 로컬 DNS에서 먼저 찾습니다. 로컬 dns에서 기록을 찾지 못하면 다른 dns 서비스에서 찾습니다. 다른 dns 서버도 없으면 바로 포기합니다.
전재 대상:https://blog.51cto.com/11886307/2384896

좋은 웹페이지 즐겨찾기