DNS-05 - 전달

7187 단어 dns

DNS-05 - 전달


실험 환경
ns1.magedu.com 172.18.71.101/24 CentOS-6.7-x86_64           
ns1.dev.magedu.com 172.18.71.102/24 CentOS-7.2-x86_64       
localhost.localdomain 172.18.71.103/24 CentOS-7.2-x86_64  
iptablesSELinux는 모두 폐쇄 상태에 있다.
설치bind
[root@ns1 ~]# yum install -y bind bind-libs bind-utils

우선 두 노드 호스트의 메인 프로필/etc/named.conf을 각각 수정하고 본 기기의 조회 요청과dnssec만 허용하고 감청 주소 목록에 각각 외부에 서비스를 제공하는 주소IP를 추가한다.
options {
    listen-on port 53 { 127.0.0.1; 172.18.71.101; };
    ...
    //allow-query     { localhost; };
    ...

    //dnssec-enable yes;
    //dnssec-validation yes;
    //dnssec-lookaside auto;
    ...
};

시간 동기화


일반적으로 다중 노드의 협동 작업은 우선 시간을 교정하여 시간을 동기화시키는 것이다.네트워킹 상태에서는 ntpdate 명령을 사용하여 일괄적으로 시간센터 교정을 찾을 수 있고, 네트워킹에서는 사용할 수 없음date 명령을 수동으로 교정할 수 없다.

전달 구성


먼저 DNS-04 - 하위 도메인 라이센스를 참조하여 상위 및 하위 도메인 서버를 구성합니다.
현재의 수요는 하위 도메인 서버를 사용하여 하위 도메인 이름을 해석할 때 하위 도메인 서버를 층층이 조회하지 않고 직접 하위 도메인 서버에 맡겨 해석을 완성하는 것이다.실현 방법은 전송이지만 두 가지 다른 방식이 있는데 하나는 지역 전송이고 하나는 전역 전송이다.

1. 영역 전달


하위 도메인 서버에 추가된 영역 정의magedu.com입니다.여기forward 방식도 두 가지 유형이 있는데 first 또는only이다.first는 먼저 전송을 시도하고 부역 서버가 응답하지 않으면 스스로 교체 조회를 하고 only는 전송만 한다.실제 상황에 따라 선택할 수 있다. 일반적으로first의 유연성은 비교적 크지만, 만약 당신의 서버가 인터넷에 접속할 수 없다면 사용할 필요가 없다first.
[root@ns1 ~]# vim /etc/named.rfc1912.zones
...
zone "magedu.com" IN {
    type forward;
    forward first;
    forwarders { 172.18.171.101; };
};

주 프로파일의 구문 확인
[root@ns1 named]# named-checkconf

서비스 시작
[root@ns2 ~]# systemctl start named

테스트 기기에서 dig 테스트를 사용하면 지역 전송 방식을 통해 하위 도메인 서버가 부 도메인 이름을 해석하면 결과를 얻을 수 있다.
[root@localhost ~]# dig -t A www.magedu.com @172.18.71.102

; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7 <<>> -t A www.magedu.com @172.18.71.102
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24093
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 1

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

;; ANSWER SECTION:
www.magedu.com.        85317    IN    A    172.18.71.101
www.magedu.com.        85317    IN    A    172.18.71.102

;; AUTHORITY SECTION:
magedu.com.        86343    IN    NS    ns1.magedu.com.

;; Query time: 1 msec
;; SERVER: 172.18.71.102#53(172.18.71.102)
;; WHEN:   4  08 23:04:56 CST 2016
;; MSG SIZE  rcvd: 93

이 전송 영역이 아닌 도메인 이름 해석은 전송되지 않고 하위 서버가 반복해서 조회합니다.그러나 하위 서버가 네트워크에 연결되지 않아 결과를 조회할 수 없습니다.
[root@localhost ~]# dig -t A www.baidu.com @172.18.71.102

; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7 <<>> -t A www.baidu.com @172.18.71.102
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 38245
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

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

;; Query time: 8 msec
;; SERVER: 172.18.71.102#53(172.18.71.102)
;; WHEN:   4  08 23:51:02 CST 2016
;; MSG SIZE  rcvd: 42

2. 전역 전달


전역적으로 전송할 때 전송 영역을 정의하는 것이 아니라 주 설정 파일/etc/named.conf에서 직접 정의한다.
options {
    ...
    forward only;
    forwarders { 172.18.71.101; };
    ...
};

주 프로파일의 구문 확인
[root@ns1 named]# named-checkconf

서비스 시작
[root@ns2 ~]# systemctl start named

테스트 기기에서 dig 테스트를 사용하면 전역적으로 전송하는 방식으로 서브필드 서버를 통해 부역 도메인 이름을 해석해도 결과를 얻을 수 있다.
[root@localhost ~]# dig -t A www.magedu.com @172.18.71.102

; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7 <<>> -t A www.magedu.com @172.18.71.102
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43069
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 1

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

;; ANSWER SECTION:
www.magedu.com.        83773    IN    A    172.18.71.101
www.magedu.com.        83773    IN    A    172.18.71.102

;; AUTHORITY SECTION:
magedu.com.        84799    IN    NS    ns1.magedu.com.

;; Query time: 1 msec
;; SERVER: 172.18.71.102#53(172.18.71.102)
;; WHEN:   4  08 23:30:41 CST 2016
;; MSG SIZE  rcvd: 93

이 전달 영역이 아닌 도메인 이름 해석도 전달되고 부모 서버가 해석합니다.부역 서버는 네트워크를 연결할 수 있기 때문에 결과를 찾을 수 있습니다.
[root@localhost ~]# dig -t A www.baidu.com @172.18.71.102

; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7 <<>> -t A www.baidu.com @172.18.71.102
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12108
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1

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

;; ANSWER SECTION:
www.baidu.com.        50    IN    CNAME    www.a.shifen.com.
www.a.shifen.com.    299    IN    A    61.135.169.125
www.a.shifen.com.    299    IN    A    61.135.169.121

;; Query time: 845 msec
;; SERVER: 172.18.71.102#53(172.18.71.102)
;; WHEN:   4  08 23:53:45 CST 2016
;; MSG SIZE  rcvd: 101

결론


지역 전송은 많은 해석 요청이 하위 서버 자체로 교체 조회를 해야 한다는 것을 의미하고 전역 전송은 대부분의 압력을 부모 서버에 이전하는 것을 의미하기 때문에 지역 전송을 선택하느냐 전역 전송을 선택하느냐는 실제 상황에 따라 결정해야 한다.또한 여기에도 문제가 있습니다. 만약에 저희 서버가 어떠한 안전 설정도 하지 않고 호스트에 대한 귀속 조회 요청을 허용한다면 다른 사람이 분석 요청을 저희 서버로 전송하는 상황이 발생할 수 있습니다.남에게 이익을 챙기는 것은 작지만 업무에 영향을 미치는 것은 우리가 보고 싶지 않은 것이다.DNS-06 참조 - 보안 설정

좋은 웹페이지 즐겨찾기