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

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


WARNNING

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



9. Bind 8.x에서의 zone file 변화



 Hanterm - cat /var/named/oops.zone

 [root@bbuwoo named]$ cat /var/named/oops.zone              

  ;made by admin at oops.kr.net
  ;
  @       IN      SOA     ns.oops.kr.net. admin.oops.kr.net.  (  
                                        980910     ; Serial
                                        10800      ; Refresh
                                        3600       ; Retry
                                        432000     ; Expire
                                        86400      ; Minimum
                                        )
  ; Name Server
  ;
                  IN      NS      ns.oops.kr.net.
                  IN      MX 10   oops.kr.net.
  ;
  ; Host name & Infomations
  localhost       IN      A       127.0.0.1
  @               IN      A       210.24.154.2
  ns              IN      A       210.24.154.2
                  IN      HINFO   "i586 Pentium" "Linux"  
  ;
  www             IN      A       210.24.154.3
  *               IN      A       210.24.154.2

 [root@bbuwoo named]$



위의 설정 file을 보면 이때 까지 못보던 charactor 문자 "*" 를 볼수가 있다. zone file의 문법중 bind 4.x에 추가된 문법중의 하나로 "*"은 "all"의 의미를 가진다는 것이다. 별 의미가 없을지는 모르겠지만 어떤때는 아주 유용하게 쓰일수 있는 문법이기도 하다.

또하나 추가되어진 문법 중에 하나로 "$INCLUDE"를 들 수가 있다. 이것은 예제를 보면서 설명을 하자.



 Hanterm - cat /var/named/oops.zone

 [root@bbuwoo named]$ cat /var/named/oops-1.zone              

   ;made by admin at oops.kr.net
   ;
   $INCLUDE oops.zone
   ;
   ;adding domain
   ftp		IN	A	203.245.122.122
   mail		IN	A	210.24.154.156

 [root@bbuwoo named]$

oops-1.zone 에서 사용된 "$INCLUDE"는 oops.zone의 file의 내용을 oops-1.zone 에 포함하라는 의미로 사용되어 진다. 즉 아래와 같은 효과를 나타낸다.



 Hanterm - cat /var/named/oops.zone

 [root@bbuwoo named]$ cat /var/named/oops.zone              

  ;made by admin at oops.kr.net
  ;
  @       IN      SOA     ns.oops.kr.net. admin.oops.kr.net.  (  
                                        980910     ; Serial
                                        10800      ; Refresh
                                        3600       ; Retry
                                        432000     ; Expire
                                        86400      ; Minimum
                                        )
  ; Name Server
  ;
                  IN      NS      ns.oops.kr.net.
                  IN      MX 10   oops.kr.net.
  ;
  ; Host name & Infomations
  localhost       IN      A       127.0.0.1
  @               IN      A       210.24.154.2
  ns              IN      A       210.24.154.2
                  IN      HINFO   "i586 Pentium" "Linux"  
  ;
  www             IN      A       210.24.154.3
  *               IN      A       210.24.154.2
  ;
  ;adding domain
  ftp		  IN	  A	  203.245.122.122
  mail		  IN	  A	  210.24.154.156

 [root@bbuwoo named]$

위의 설정 file에는 간단한 문법 오류가 있다. 다만 예를 들다 보니 이렇게 되어 있을 뿐이다. 간단하게 문법 오류를 지적해 보자면 "*"문자가 앞에 와 있을 경우에는 뒤의 설정들은 무시가 되어 진다. 즉 윗줄에 설정되어 있는 것이 우선적으로 적용이 되어 진다는 말이다. 그러니 위에서 ftp와 mail을 적용시키기 위해서는 "*"가 가장 아래로 내려와야 한다는 것이다. 이점을 주의하도록 하자!!

10. Bind 8.2.3 이후의 zone file 변화


8.2.3 과 9.x 에서의 간단한 변화를 보겠다. 이는 앞에서도 누누이 강조했지만 아마 놓치는 사람들이 많을 것을 예상하여 다시 한번 강조를 한다.

아래는 우리가 이제껏 설정을 해 왔던 zone file중 SOA record 부분이다.


 Hanterm - cat /var/named/oops.zone

 [root@bbuwoo named]$ cat /var/named/oops.zone              

  ;made by admin at oops.kr.net
  ;
  @       IN      SOA     ns.oops.kr.net. admin.oops.kr.net.  (  
                                        980910     ; Serial
                                        10800      ; Refresh
                                        3600       ; Retry
                                        432000     ; Expire
                                        86400      ; Minimum
                                        )
  .. 생략
 [root@bbuwoo named]$


이 부분에서 무엇이 강조가 되는지 알아 보자. 8.2.3 이후 버젼과 9.x 버젼에서는 다음과 같이 설정이 이루어 진다.


 Hanterm - cat /var/named/oops.zone

 [root@bbuwoo named]$ cat /var/named/oops.zone

  ;made by admin at oops.kr.net
  ;
  $TTL 86400
  @       IN      SOA     ns.oops.kr.net. admin.oops.kr.net.  (
                                        980910     ; Serial
                                        10800      ; Refresh
                                        3600       ; Retry
                                        432000     ; Expire
                                        86400      ; Minimum
                                        )
  .. 생략
 [root@bbuwoo named]$



앞에서도 누누이 강조를 해온 부분이지만 붉은색 글씨의 $TTL 86400 가 8.2.3 에서 부터는 Default TTL 값으로 지정을 하게 된다. 8.2.3 에서는 $TTL 86400이 지정이 되지 않으면 message file에 Default TTL이 지정되지 않아서 기본값인 86400초를 사용 한다는 메세지가 남는다. 하지만 9.x 부터는 이것이 지정되지 않을 경우 database error가 발 생하여 아예 해당 zone file에 지정된 name은 찾아 지지 않게 된다. 그러므로 이 부분은 8.2.3 이후 버젼이라면 꼭 지정을 하는 것이 좋다.

다음 두번째 붉은색 부분인 ( ... ) 부분은 변화를 했다기 보다 고정이 되었다고 보는 것이 좋다. 즉 쉽게 예를 들겠다.

8.2.2 까지는 다음과 같이 설정을 하는 것이 용납이 되었다.


 Hanterm - cat /var/named/oops.zone

 [root@bbuwoo named]$ cat /var/named/oops.zone

  ;made by admin at oops.kr.net
  ;
  ; 잘못된 설정 예
  $TTL 86400
  @       IN      SOA     ns.oops.kr.net. admin.oops.kr.net.
  (  ; 괄호가 위치가 잘못 되었다.
     ; 윗라인의 제일 마지막에 위치해야 한다.
                                        980910     ; Serial
                                        10800      ; Refresh
                                        3600       ; Retry
                                        432000     ; Expire
                                        86400      ; Minimum
  )
  .. 생략
 [root@bbuwoo named]$



하지만 8.2.3 부터는 이런 설정은 잘못된 설정이 된다. 괄호의 시작이 꼭 SOA record가 지정되어진 라인의 제일 마지막에 위치를 해야 한다는 것을 꼭 명심 하여야 한다.



다음은 reverse mapping을 가능하게 해주는 ***.rev file 에 대해서 알아 보겠다.



>> 이전 : zonf file configuration (4)
>> 다음 : Reverse Mapping Configuration



    



 Home > Lecture > Bind > Bind-11

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