DNS 2 – DNS 마스터 복제 구현

8101 단어

운영 및 종속 복제 실현


주종 복제: 1. 독립된 이름 서버이어야 한다.2. 주 서버의 영역 분석 라이브러리 파일에 반드시 NS 기록이 종속 서버를 가리켜야 한다.3. 서버에서 영역만 정의하고 분석 라이브러리 파일을 제공할 필요가 없다.해석 라이브러리 파일은/var/named/slaves/디렉터리에 두어야 합니다.4. 메인 서버는 서버에서 지역으로 전송하는 것을 허용해야 한다.5. 주종 서버 시간은 동기화되어야 하며 ntp를 통해 진행할 수 있다.6.bind 프로그램은 일치해야 한다.그렇지 않으면 높고 낮음부터
사전 실습 준비:
주 서버: A(IP 주소 192.168.34.101)
서버에서: B(IP 주소 192.168.34.103)
클라이언트: C(IP 주소 192.168.34.105)
 
주 서버 관련 파일을 구성하려면:
(1) 주 서버 A에서 파일 정보 구성:vim/etc/named.conf
수정 후 DNS 서비스 다시 시작: rndc reload
options {
        listen-on port 53 { localhost; };  localhost (//), , 
        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     { any; };    any (//) 
        allow-transfer  { 192.168.34.103; };  IP , 103 , : , , 

(2) 주 서버 A 영역 라이브러리 파일의 내용을 수정합니다.
vim/var/named/baidu.com.zone
[root@ansiblenamed]#vim /var/named/baidu.com.zone

$TTL 1D
@       IN SOA  dns1  admin.baidu.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns1           
        NS      dns2           # , NS 
dns1    A   192.168.34.101     #  IP  
dns2    A   192.168.34.103     #  IP 
www    CNAME    webs
webs   A      6.6.6.6
webs   A      8.8.8.8
webs   A      7.7.7.7
@      MX   10 mailser1
@      MX   20 mailser2
mailser1 A     11.9.9.9
mailser2 A     9.9.9.9
@       A      8.8.8.8
*       A      8.8.8.8
$GENERATE  1-200  server$ A 192.168.34.$

서버로부터 파일을 구성하려면:
(1) 서버 B에 DNS 설치: yum install bind
구성 파일에서/etc/named를 수정합니다.conf 관련 구성 파일
[root@centos7_1 ~]# 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; };  
        allow-transfer  { none;};   , , , IP 

주의: 첫 줄의listen-on port 53 포트를 주석하거나 localhost로 작성하십시오. 그렇지 않으면 본 기기의 서비스를 위해 allow-query 업계를 주석할 수 있습니다.  
(2) 서버 B의/etc/named.rfc1912.zones 구성 파일을 수정합니다.
[root@centos7_1 ~]# vim /etc/named.rfc1912.zones 
zone "baidu.com" {       #  
        type slave;      #  “ ”
        masters {192.168.34.101;};  # IP 
        file "slaves/baidu.com.zone.slave"; #  slaves 
};

(3) 주 서버 A의 DNS 서비스를 다시 로드합니다.
[root@ansiblenamed]#rndc reload
server reload successful

(4) 현재 서버 B에서 동기화된 데이터 파일을 조회합니다. 이때 우리는/var/named/slaves 디렉터리에서 주 서버의 데이터 내용이 동기화된 것을 볼 수 있습니다.
[root@centos7_1 ~]# ls /var/named/slaves
baidu.com.zone.slave

클라이언트를 구성하려면:
(5) 클라이언트 C에서 두 개의 DNS 주소를 구성하여 주종 서버의 IP 주소를 연결합니다.
[root@centos6network-scripts]#vim ifcfg-eth0
DEVICE=eth0
PROTOBOOT=static
IPADDR=192.168.34.105
GATEWAY=192.168.34.2
ONBOOT=yes
DNS1=192.168.34.101  #  DNS IP 
DNS2=192.168.34.103  #   DNS IP 

(6) 클라이언트 C에서 현재 구성된 DNS 서비스 주소 보기
[root@centos6network-scripts]#cat /etc/resolv.conf   DNS 
# Generated by NetworkManager
search 10.localdomain
nameserver 192.168.34.101
nameserver 192.168.34.103 

(7) 클라이언트 C에서dig 명령으로 현재baidu를 확인합니다.com 웹 주소, 현재 DNS에서 IP 주소를 확인할 수 있는 서버:
[root@centos6network-scripts]#dig www.baidu.com

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.68.rc1.el6 <<>> www.baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<;; SERVER: 192.168.34.101#53(192.168.34.101)  # IP 
;; WHEN: Thu Nov  7 09:38:55 2019
;; MSG SIZE  rcvd: 168

(8) 주 서버 A의 NIC down(ifconfig ens33 down)을 제거하고 클라이언트 C에서 현재 내용을 확인합니다.
[root@centos6network-scripts]#dig www.baidu.com

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.68.rc1.el6 <<>> www.baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<;; SERVER: 192.168.34.103#53(192.168.34.103)  # , IP , 。
;; WHEN: Thu Nov  7 10:24:16 2019
;; MSG SIZE  rcvd: 168

(9) 현재 서버 동기화 상황을 검증하고 메인 서버 영역 라이브러리 파일의 내용을 수정합니다:/var/named/baidu.com.zone
[root@ansible~]#vim /var/named/baidu.com.zone 

$TTL 1D
@       IN SOA  dns1  admin.baidu.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns1
        NS      dns2
dns1    A   192.168.34.101
dns2    A   192.168.34.103
www    CNAME    webs
webs   A      6.6.6.6
webs   A      8.8.8.8
webs   A      7.7.7.7
@      MX   10 mailser1  # 
@      MX   20 mailser2  #  
mailser1 A     11.9.9.9
mailser2 A     9.9.9.9
@       A      8.8.8.8
*       A      8.8.8.8
$GENERATE  1-200  server$ A 192.168.34.$

(10) 삭제 후 DNS 서비스를 다시 시작합니다. rndc reload
[root@ansible~]#rndc reload
server reload successful

(11) 그리고 우리는 클라이언트 C에서dig에서 동기화 정보를 조회했다. 이때 우리는 각각 주종 서버에서 MX의 설정 기록을 볼 수 있다. 왜 그런가?이는 구성 파일만 수정하는 것이 아니라 위의 일련 번호(serial)를 수정해야 동기화가 수행되지 않기 때문입니다. 12단계를 참조하십시오.
[root@centos6network-scripts]#dig -t mx baidu.com @192.168.34.101

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.68.rc1.el6 <<>> -t mx baidu.com @192.168.34.101
;; global options: +cmd
;; Got answer:
;; ->>HEADER<> DiG 9.8.2rc1-RedHat-9.8.2-0.68.rc1.el6 <<>> -t mx baidu.com @192.168.34.103
;; global options: +cmd
;; Got answer:
;; ->>HEADER< 
 

(12) 일련 번호(serial)를 1로 변경하고 변경한 후 DNS 서비스를 다시 로드합니다. rndc reload:
[root@ansible~]#vim /var/named/baidu.com.zone 

$TTL 1D
@       IN SOA  dns1  admin.baidu.com. (
                                        1       ; serial  # 0 1
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns1
        NS      dns2
dns1    A   192.168.34.101
dns2    A   192.168.34.103
www    CNAME    webs      
webs   A      66.66.66.66  
mailser1 A     11.9.9.9
mailser2 A     9.9.9.9
@       A      8.8.8.8
*       A      8.8.8.8
$GENERATE  1-200  server$ A 192.168.34.$

(13) 구성을 수정한 후 DNS 서비스를 다시 시작하고 클라이언트에서 dig 검증을 실시한다. 이때 IP 주소가 동기화되고 MX 프로필의 기록이 없다.
[root@ansible~]#rndc reload   DNS 
server reload successful
[root@centos6network-scripts]#dig www.baidu.com

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.68.rc1.el6 <<>> www.baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<www.baidu.com.	86400	IN	CNAME	webs.baidu.com.
webs.baidu.com.	86400	IN	A	66.66.66.66    IP 

;; AUTHORITY SECTION:
baidu.com.	86400	IN	NS	dns2.baidu.com.
baidu.com.	86400	IN	NS	dns1.baidu.com.

;; ADDITIONAL SECTION:
dns1.baidu.com.	86400	IN	A	192.168.34.101
dns2.baidu.com.	86400	IN	A	192.168.34.103

;; Query time: 1 msec
;; SERVER: 192.168.34.101#53(192.168.34.101)
;; WHEN: Thu Nov 7 10:41:43 2019
;; MSG SIZE rcvd: 136

좋은 웹페이지 즐겨찾기