APP & Server/DNS

[DNS] Master & Slave 개념 및 구축 방법

Nirsa 2020. 2. 12. 22:52
반응형

 

  • DNS Master & Salve 개념

사실 사용하는대에 있어서 깊은 이해를 필요하는 부분이 아니기 때문에 단순히 Master와 Slave는 주-보조 관계이며 DNS 서버를 이중화 시킨다고만 알고 계셔도 됩니다. (Slave를 여러대 사용할수도 있습니다)

Master-Slave는 동기화 과정을 통해 zone 파일을 관리하게 되는데, zone 파일의 SOA 필드에 있는 serial을 확인하여 이 파일이 업데이트가 되었는지 판단 합니다. serial이 증가 했을 경우 파일이 업데이트된것으로 판단하고 동기화 과정을 통해 Slave 서버로 zone 파일이 전송 됩니다.

이러한 동기화 과정을 zone transfer 라고 하는데 포트 TCP 53번이 바로 여기서 사용 됩니다. (일반 반복 쿼리 시 UDP 53번 사용)

만약, Master 서버에 장애가 발생할 경우 Slave 서버에서 서비스를 중단 없이 지속적으로 제공 합니다.

 

  • Master 서버 설정

  • 1. DNS 서버 구성을 위한 bind 패키지 설치
yum -y install bind*

 

  • 2. vi /etc/named.conf

클라이언트에서 접근할 수 있도록 설정을 진행 합니다. 

 

* /etc/named.conf 파일에 대한 내용은 아래 URL을 참고 해주세요.

[DNS] 리눅스 DNS 서버 구축 (1) : https://nirsa.tistory.com/104?category=872350

 

  • 3. vi /etc/named.rfc1912.zones

서비스할 zone 파일을 등록 합니다. 기존 등록 방식과 같으며 allow-update { [slave서버 IP]; }; 를 입력 합니다.

 

  • 4. vi /var/named/nirsa.com

서비스할 zone 파일을 생성 합니다.

cp -p named.localhost nirsa.com

 

ns1은 Master 서버로, ns2는 Slave 서버로 설정할 것 이기 때문에 각각 알맞게 IP를 넣어주세요. (ns1:Master IP  ,  ns2:Slave IP)

 

이후 DNS 서버를 시작해주시면 되고 만약 에러 발생 시 오타가 없는지 확인 해주세요.

systemctl restart named

 

*/etc/named.rfc1912.zones 와 /var/named.~ 파일에 대한 내용은 아래 URL을 참고 해주세요.

[DNS] 리눅스 DNS 서버 구축 (2) : https://nirsa.tistory.com/108?category=872350

 

  • Slave 서버 설정

Slave 서버를 설정할 때 Master 서버와 별 다를점이 없습니다. 우선 Master 서버 1~2번 항목을 그대로 따라 해주신 후 아래 내용을 따라 해주세요.

vi 편집기로 /etc/named.rfc1912.zones 를 키시고 아래와 같이 작성 해줍니다. 도메인은 똑같이 작성하되 타입은 slave로, allow-update 를 지우고 masters로 작성하여 master 서버 IP를 작성 해주세요.

systemctl restart named

DNS 서버를 실행 후 재대로 작동 하는지 ls -lh /var/named/slaves/ 를 입력하여 재대로 zone 파일을 가져 왔는지 확인 해보시면 됩니다.

 

master 서버의 /var/log/mesagges 에서도 확인하실 수 있습니다.

 

또한 정상적으로 작동하는것을 확인 하였다면 Master 서버 zone 파일의 시리얼 번호를 변경(값이 더 높도록 +1 이상) 후 named 서비스를 재기동하고 Slave 서버로 잘 넘어갔는지 다시 확인 해보시면 됩니다.

 

반응형