BBUWOO'S [ LIKE UNIX ] WORLD Home > Lecture > Bind > Bind-2  

HOME
WHAT's BBUWOO?
LInux AnNyung
Open Source
    GitHUB
    GitHUB (for PHP)
LECTURE
MINI LECTURE
QnA BOARD
ENGLISH POEM


WARNNING

강좌의 모든 권리는 본인 김정균에게 있으며 이 강좌를 상업적 목적 으로 이용
하거나 다른 곳으로 옮길시에는 본인의 허락이 있어야 한다. 이글의 가장 최신글은
http://oops.org 에서 확인할수 있다.



1. Named.boot Configuration for Bind 4.x



 Hanterm - /etc/named.boot

 [root@bbuwoo /etc]$ cat named.boot

  ; made by oops(admin at oops.kr.net)
  ;
  ; a caching only nameserver config
  ;
  directory                                   /var/named   
  cache           .                           named.ca
  primary         oops.kr.net                 oops.zone
  primary         babo.co.kr                  babo.zone
  primary         154.24.210.in-addr.arpa     oops.rev
  primary         0.0.127.in-addr.arpa        named.local
  secondary       netusers.net  210.24.154.1  netusers.bak  

 [root@bbuwoo /etc]$

위의 내용이 /etc/named.boot의 내용이며 NS를 설정할시에 가장 먼저 만져 주어야 할 부분이다. 전혀 설절을 안한 상태라면

  primary         oops.kr.net                 oops.zone
  primary         babo.co.kr                  babo.zone
  primary         154.24.210.in-addr.arpa     oops.rev
  secondary       netusers.net  210.24.154.1  netusers.bak  
의 네줄이 없는 상태일것이다. 위의 설정을 보면 oops.kr.net라는 도메인에 대해서 oops.zone이라는 file에서 정의를 내릴것이며 babo.co.kr이라는 도메인에 대해서 babo.zone이라는 file에서 정의를 내리며, 210.24.154.***영역에 대한 revers mapping을 지정하겠다는 얘기이며 마지막 줄은 netusers.net의 2차 도메인 서버 역할 즉 netusers.net의 cache server로 지정을 하겠다는 내용이다. 그럼 하나하나 뜯어 보기로 하자.

  • directory

      NS의 정보를 정의할 file들이 위치할 directory를 정의한다. REDHAT에서는 기본으로 /var/named/로 되어 있지만 왠지 저기 설치하기 싫다고 생각되는 사람은 바꾸어도 상관이 없다.

  • cache

      root Name Server에 대한 정보를 가지고 있는 file을 지정한다. 기본적으로 있는 것 그대로 써도 무방하다. 이 fle은 우리가 알아서 정의를 내려도 되지만 일반적으로 internic에서 배포하는 것을 주로 그대로 받아서 사용하는 경우가 많으며 그냥 설치할때 있는 그대로 사용하기를 권한다. 절대 편집하려고 애쓰는 그런 불필요한 행동을 자제하기 바란다..(건드리지 말라는 얘기이다..^^)

  • primary   oops.kr.net   oops.zone

      NS가 관리할 지역 도메인을 정의하고 관리할 file을 설정한다.
               primary          < 해당 domain >             < file name >
      위의 양식으로 정의를 내리면 된다. < 해당 domain > 부분에는 자신이 부여받은 domain name을 지정하고 < file name > 에는 /var/named/에 들어갈 file name을 정의하면 된다. 위에서는 oops.zone으로 했지만 내키는데로 바꿔도 상관이 없다. 즉 oops.area로 했다면 /var/named/oops.area 라는 file이 존재하면 되는 것이다. 만약 여러개의 도메인을 가지고 있다면 위의 babo.co.kr처럼 primary를 추가해 주면 된다.

  • primary   154.24.210.in-addr.arpa   oops.rev

      이 부분은 reverse map을 지정하는 부분이다. 그럼 reverse map이란 무엇인가가 궁금할 것이다. reverse mapping 이란 ip address로서 domain name을 찾는 것을 말한다. 일반적으로는 domain name을 ip address로 찾는 것에 반해 이것은 역으로 ip address 로서 domain name을 찾아 주는 역할을 하는 것이다.

      그럼 위의 내용을 보면 좀 이상한 것이 있을 것이다. 154.24.210 이라는 것을 보자. named boot에서 reverse mapping을 지정을 할때에는 IP address의 역순으로 해 주게 된다. 즉 154.24.210.in-addr.arpa라고 정의를 했다면 210.24.154.***에 대한 대역에 대해서 정의를 내리겠다는 의미가 되는 것이다. 역으로 쓴다는 것을 주의 하자. 위의 예제의 경우에는 C class대역의 ip address이기 때문에 154.24.210.in-addr.arpa가 되지만 B class의 경우에는 24.210.in-addr.arpa가 될것이다. IP address에 대한 지식이 조금만 있으면 이것이 무엇을 뜻하는지 알리라고 생각하겠다.

  • secondary  netusers.net  210.24.154.1  netusers.bak

      cache NS를 지정하는 부분이다. Internic이나 krnic에 domain을 신청할때 1차 네임서버, 2차 네임서버 항목을 보았을 것이다. 여기서 이 부분이 2차 네임서버를 이용하는 부분인 것이다. 즉 여기서 자체의 설정은 전혀 필요 없으며 이렇게 지정을 하면 알아서 1차 네임서버의 내용들을 그대로 /var/named/netusers.bak으로 가져 오라는 정의이다. 1차 NS에서는 2차 NS에대해 전혀 설정할 필요가 없고 2차 NS로 사용할 서버에서 위와 같이 설정을 해 주면 되는 것이다. 단 2차 네임서버로 등록이 되어 있는 IP address에서만 가능하다.

    일단 이정도만 알면 named.boot에 대해서는 다 했다고 볼수 있다. 하지만 그래도 강좌인 만큼 다른 여러가지 옵션들도 마져 하고 넘어 가겠다.

  • forwarders

      forward server를 지정할때 사용한다. 즉 자신에게 들어오는 질문을 지정한 서버로 보내 버리는 역할을 한다.
               forwarders      210.24.154.10    210.24.154.11
      위의 형식으로 지정을 하며 이 server로 들어오는 query(문의)를 우선적으로 210.24.154.10으로 보내며 이 서버가 응답이 없으면 다음 지정한 ip address를 가진 server로 보내게 된다. 만약 둘다 응답이 없다면 원래대로 ROOT SERVER에 질문을 용청하여 순차적으로 IP address를 찾게 되는 것이다.

  • xfrnets

      nslookup에서 ls를 이용하면 해당 DNS에 가진 데이타를 모두 볼수 있다. 즉 그 server의 zone data를 쓰윽 훔쳐 볼수가 있게 되는데 쓸데 없는 정보를 유출하기가 싫다면 이 option을 이용해서 보는 것을 막을 수가 있다. 왠만하면 막기를 권장한다.
               xfrnets      210.24.154.2&255.255.255.255
               xfrnets      210.24.0.0&255.255.0.0
      위와 같이 정의를 하는데 일단 두줄중 위의 것은 210.24.154.2만이 ls를 이용해서 zone data를 볼수 있도록 정의를 한것 이며 아래줄은 210.24.*.*대역에서 볼수 있도록 지정을 한것이다. "&"의 뒷부분은 netmask이다. netmask에 대해서 따로 얘기를 안해도 될것이라 믿고 넘어가겠다.

  • option

      option은 "option    <option>"의 형식으로 사용된다.

    1. forward-only

      slave 서버 모드를 사용하게 된다. 아주 간단한데 방금 forwarders 서버에 대하여 알아 보았다. 포워더로 지정한 서버들이 응답이 없다면 원래 데로 루트 서버에 질문을 요청하는식의 행동을 한다고 했는데 이 옵션을 지정해 주게 되면 그것마져 하지 않는다. 질문이 들어오면 순수한 포워더의 기능밖에 하지 않는다. 그 외에 어떠한것도 하지 않는다.

    2. query-log

      자신에게로 들어오는 모든 문의를 syslog 에 전달하게 된다. (syslog 는 그것을 받아서 /var/log/message 정도에 저장한다.) 로그 파일이 상당히 커질것이다.

    3. debug

      디버깅 메세지를 출력해 줍니다. 네임서버에 문제가 있을때 사용할 수 있겠지요.



    하나의 host에서 여러 개의 도메인을 처리할 때 간편하게 하는 방법을 알아 보도록 하겠다. 일단 기본적으로 하나의 sample zone file을 만들어 두도록 한다. 그리고 named.boot(bind-4의 경우)나 named.conf(bind-8의 경우) 에서 서로 공유가 가능한, 즉 IP address가 같은 경우에는 위에서 만든 sample file을 지정을 하도록 하여 사용할수도 있다.

     Hanterm - /etc/named.boot
    
     [root@bbuwoo /etc]$ cat named.boot
    
      ; made by oops(admin at oops.kr.net)
      ;
      ; a caching only nameserver config
      ;
      directory                                   /var/named   
      cache           .                           named.ca
      primary         oops.kr.net                 sample.zone
      primary         babo.co.kr                  sample.zone
      primary         154.24.210.in-addr.arpa     oops.rev
      primary         0.0.127.in-addr.arpa        named.local
      secondary       netusers.net  210.24.154.1  netusers.bak  
    
     [root@bbuwoo /etc]$

    다음은 /etc/resolv.conf를 보겠다.



    >> 이전 : Name Service 란?
    >> 다음 : resolv.conf configuration



  •     



     Home > Lecture > Bind > Bind-2

    Copyright 1997-2024 JoungKyun Kim 
    LAST MODIFIED: 2017/01/18