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

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


WARNNING

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



8. Zone File Configuration (4)



 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 (TTL)
                                        )
  ; 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" 
  ;
  ; VirtualHost
  ftp             IN      A       210.24.154.155
  babo            IN      A       210.24.154.156
  webadmin        IN      A       210.24.154.158
  
  ; Alias
  www             IN      CNAME   @

 [root@bbuwoo named]$



이번 PAGE에서는 설정에 사용되는 Record type에 대해서 알아보자.

    • 호스트명에 대한 IP 주소를 지정해 주는 것이다.

         babo    IN    A    210.24.154.157

      www 호스트의 IP 주소는 210.24.154.157 라고 지정해 주고 있다. 이 "A" record를 이요해서 분산 system을 설정할 수가 있는데 즉 "CNAME" record와 반대로 하나의 Domain name에 여러개의 IP address를 부여해서 여러개의 서버를 하나의 서버처럼 사용하는 것을 말한다.

      좀더 자세히 살펴 보기로 하자. 아래와 같이 "A" record를 복수로 지정을 하고

      	chollian.net.          IN    A        210.120.128.180
      	                       IN    A        210.120.129.180
      nslookup 으로 어떻게 나오는지 확인 해보도록 하자.
      	# nslookup chollian.net
      	Server:  oops.kr.net
      	Address:  210.24.154.2
      	
      	Name:    chollian.net
      	Addresses:  210.120.128.180, 210.120.129.180
      이렇게 지정하면 어떤 경우가 발생하느냐? chollian.net 으로 접속을 시도하게 되면 지정한 3개의 IP 로 돌아가면서 접속을 시도하게 되는 것이다.. 순식간에 시스템 분산이 이루어 지는것이다. (실제로 home.taegu.net 이 그렇게 돌아가고 있으며 NFS 로 자료를 공유하고 CPU 를 분산시키는 것이다.) 실제로 대형 server들은 이런식으로 운영을 하고 있다. M$의 웹서버의 경우에는 16개 까지 출력이 된다.

    • 네임 서버의 IP 주소 혹은 호스트명을 지정해 주게 된다.
             ns.babo          IN      A       168.126.127.100
                              IN      NS      ns.babo
      또는
             ns.babo.oops.kr.net.       IN      A       168.126.127.100
                                        IN      NS      ns.babo.oops.kr.net.
      이런식으로 연결해서 sub domain을 작성할수도 있다. 항상 NS 로 지정하는 호스트명은 IP 주소가 지정되어 있어야 한다.

      이렇게 설정함으로서 babo.oops.kr.net 지역 도메인(zone)에 대해서는 ns.babo.oops.kr.net 의 네임서버가 담당하게 되는 것이다. oops.kr.net 네임서버는 단지 "그 지역 도메인은 저녀석이 관리하는거야 그쪽으로 가봐" 라고 해줄뿐이다. (자신의 서버가 네임서버의 역할을 하기 위해서는 자신의 상위 네임서버에서 바로 이런 설정이 되어 있어야 하는 것이다.)

    • MX는 Mail Exchange의 약자라고 생각하면 된다. 즉 그 서버에 오는 메일을 처리할 메일 서비스를 지정하는 record이다.
      	oops                 IN      A       210.24.154.2
      	                     IN      MX 10   mail.oops
      	                     IN      MX 20   mail2.oops
      	mail.oops            IN      A       210.24.154.3
      	mail2.oops           IN      A       210.24.154.4

      oops.kr.net로 오는 mail을 mail.oops.kr.net라는 server로 보내서 처리하게끔 하는 것이다. 즉 oops.kr.net에 mail demon이 없지만 ID@oops.kr.net로 mail을 보내게 되면 이 "MX" record에 의해서 mail.oops.kr.net가 대신 처리를 하게 하는 것이다. 그러니 굳이 ID@mail.oops.kr.net로 보내나 ID@oops.kr.net로 보내나 똑같게 되는 것이다. MX 뒤의 숫자는 우선순위 정도로 생각하면 되고 숫자가 낮은쪽부터 접속을 시도하게 된다.

      또한 위와 같이 "MX" record를 여러개를 지정을 할수도 있는데 mail은 일단 "MX" record 뒤의 숫자에 의해 우선 순위를 가지고 있는 mail.oops.kr.net로 보내지게 되고 이 server가 응답이 없으면 다음 순위인 mail2.oops.kr.net로 보내져서 처리가 되는 것이다. 물론 이 서버까지 죽는다면 메일은 반송되거나 메일서버가 살아날때까지 대기 하게 될것이다. 기본 메일서버를 하나 놓고 백업서버를 사용할때에 이런식으로 구성할 수가 있다.

      주의 할것은 위에서의 설정에서 mail2.oops.kr.net 은 메일을 받지는 않는다. 2차 MX 의 경우에는 1차 MX 즉 메일을 받을 서버가 죽었을 경우 살아날때 까지 일정 시간동안 queuing 만을 하게 된다. 즉 일정시간 즉 2차 MX의 queuing 제한 시간이 끝나면 결국에는 반송이 되게 되는 것이다.

      또 하나 주의 할 것은 relay 문제이다. 만약 relay 가 모든 곳으로 풀려 있다면 내 맘대로 아무 메일 서버를 2차 mx record 로 잡을수 있게 된다. 하지만 sendmail 8.9 부터는 spam 에 대처하기 위해 기본적으로 localhost 만을 relay 를 허락하게 되어 있다. 이러할 경우 해당 호스트는 큐잉서버로 동작하지 못함에 유의하자. 보통 기관의 SMTP 서버는 타인에 의한 남용을 막기위해 내부 IP(혹은 도메인)에 대해서만 릴레이를 허용하도록 설정하지만, 메일 큐잉 서버의 경우는 본 Feature를 끄거나 해당 호스트를 목적지로 하는 편지에 대해서는 릴레이를 허용하도록 (이 말의 의미하는 바를 잘 모르겠다면, 모든 IP에 대해 릴레이를 허용토록 설정하라) 조정하여야 한다. (참고: Allowing controlled SMTP relaying in Sendmail 8.9)

    • 그 호스트의 하드웨어와 운영체제에 대한 정보를 제공한다. 사용법은 아주 간단하다. 하드웨어, 운영체제 순으로 적어 주기만 하면된다.
      	ns         IN      A       210.24.154.2
      	           IN      HINFO   "i586 Pentium" "Linux"
      ns 호스트의 CPU 는 i586 Pentium을 사용중이고 운영체제로 리눅스 를 사용한다고 해준것이다. 뛰어 쓰기를 사용하고 싶다면 `` '' 로 묵으면 된다.

    • 한 IP address에 대해 여러개의 호스트명을 지정할수 있다. 물론 A 로 지정해 주어도 된다. 지정할수 있는 갯수의 제한은 없다. 하고 싶은 만큼 하면 된다.
      	@               IN      A       210.24.154.2
      	www             IN      CNAME   @
      또는
      	@               IN      A       210.24.154.2
      	www             IN      A       210.24.154.2

      위의 2가지의 예는 동일한 결과를 산출한다. 즉 CNAME을 쓰나 A를 쓰나 동일하게 할수도 있다는 말이다. 이를 해석하면 www 라는 호스트는 @ ( oops.kr.net) 라는 호스트의 별명이라고 지정해 주고 있다. 즉 @ (oops.kr.net) 로 접속을 하든 www.oops.kr.net 로 접속을 하든 동일한 결과를 얻는다는 얘기이다. 별명을 부른다고 인간이 바뀌는 것이 아닌 것 처럼 말이다.

      한가지 주의할 것이 있다면 @ 를 alias 로 걸면 안된다.

      	www           IN      A       210.24.154.2
      	@             IN      CNAME   www
      이런식으로 @ 를 alias 로 지정해버릴 경우에는 secondary 서버쪽에서 이쪽의 데이타를 가져가지를 못한다. nslookup 했을때 ls 명령으로 등록된 도메인명을 볼수도 없다. 물론 secondary 서버를 운영하지 않는다면 저렇게 지정해도 별 상관은 없다..



    다음은 zone file 문법중 bind 8.x 에서 추가된 사항에 대해 알아 보겠다.



    >> 이전 : zonf file configuration (3)
    >> 다음 : Bind 8.x 에서의 zone file 변화



  •     



     Home > Lecture > Bind > Bind-10

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