[CentOS] 네임서버 1차 2차 3차 구축 방법


서브 도메인이 많은 경우라면 네임서버(DNS)를 직접 구축해서 운영하는게 편하고 단순히 www 만 서비스 한다면 도메인 업체의 네임서버를 이용하는게 편합니다.

직접 운영하려면 도메인의 네임서버 호스트를 구축하려는 1차, 2차, 3차 IP로 지정하여야 합니다.

# yum -y install bind bind-chroot bind-libs bind-utils


bind 설치 후 환경설정을 1차에서 zone 파일 수정시 2차, 3차까지 동기화 되도록 합니다.


▶ 1차, 2차, 3차 /etc/named.conf 수정

options {

        version "Unknown";

        allow-transfer { 2차ip; 3차ip; }

        allow-recursion { localhost; any; };

        allow-query-cache { localhost; any; };

        listen-on port 53 { 127.0.0.1; any; };

        //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; any; };

        recursion yes;

}

allow-transfer 는 1차 네임서버 /etc/named.conf 에만 있으면 됩니다.


▶ 1차, 2차, 3차 /etc/rndc.key 1차와 동일하게 설정


▶ 1차 /etc/named.rfc1912.zones 편집

zone "example.com" IN {

        type master;

        file "example.com.zone";

        allow-update { 2차ip; 3차ip; };

};


▶ 2차, 3차 /etc/named.rfc1912.zones 편집

zone "example.com" IN {

        type slave;

        file "example.com.zone";

        masters { 1차IP; };

};


▶ 환경설정 확인

# named-checkconf -z

1차에서 설정한 도메인이 리스트에 나오는지 확인합니다.


그리고 기존의 zone 파일 있다면 지우면 됩니다.

아니면 chown named.named /var/named/*.zone 명령어로 퍼미션을 조정하여야 2차 네임서버에서 파일 갱신이 됩니다.


위와 같이 잘 설정이 되었다면 1차 네임서버에서 named 를 재시작하면 2차 네임서버의 /var/named/*.zone 파일이 동기화가 됩니다.

하지만 텍스트 파일이 아닌 바이너리 파일 형태로 넘어갑니다.

zone 파일을 동기화를 하지 않는다면 rsync 유틸로 동기화 해서 cron 으로 named 를 재시작 해도 될 것 같습니다.



블로그 이미지

iVPS 영은파더♥

가상서버호스팅 VPS 리눅스 서버관리 윈도우 IT

Tag

댓글을 달아 주세요

  • iVPS 영은파더♥ 2019.03.19 11:43 신고  댓글주소  수정/삭제  댓글쓰기

    Mar 19 10:55:10 example named[32454]: zone example.com/IN: refresh: could not set file modification time of 'example.com.zone': permission denied
    위와 같은 오류는 chown named:named /var/named/*.zone 소유권을 변경하여 주면 됩니다.

  • 초보자 2019.05.16 08:30  댓글주소  수정/삭제  댓글쓰기

    1. nslookup [내부 ip, 내부 도메인] 은 잘되는데요, nslookup www.naver.com 이나 nslookup www.google.com 은 왜 아이피를 못 알려줄까요?

    2. 혹시 dns 서버의 nic를 bridged (vmnet0)로 하셨나요? 아니면 nat(vmnet8)로 하셨나요?

    • iVPS 영은파더♥ 2019.05.16 09:13 신고  댓글주소  수정/삭제

      1.
      /etc/named.conf 파일의 option 부분에서
      allow-recursion { localhost; any; };
      recursion yes;
      위와 같이 수정하시면 됩니다.
      2.
      리얼 서버입니다.
      가상이라면 브릿지로 해서 공유기에서 UDP 35번 포트를 포트포워딩 하면 될 겁니다.

  • iVPS 영은파더♥ 2019.05.27 10:24 신고  댓글주소  수정/삭제  댓글쓰기

    /var/log/message 에서 failed while receiving responses: REFUSED 와 같은 문구가 있다면
    53 UDP/TCP 포트가 방화벽에서 열려있는지 확인해보세요~