Computer ???
No. | 110 |
Name. | swindler |
Subject. | Zone File #2 |
Main Cate. | Linux |
Sub Cate. | |
Date. | 2005-08-29 17:49 |
Hit. | 3120 (211.109.70.164) |
File. | |
6. Zone File Configuration (2) Hanterm - cat /var/named/oops.zone [root@bbuwoo named]$ cat /var/named/oops.zone ; generated by JoungKyun Kim <http://www.oops.org> ; $TTL 86400 @ IN SOA ns.oops.org. admin.oops.org. ( 2002062110 ; Serial 10800 ; Refresh 3600 ; Retry 432000 ; Expire 86400 ; Minimum (TTL) ) ; Name Server ; IN NS ns.oops.org. IN MX 10 oops.org. IN A 210.24.154.2 ; ; Host name & Infomations ns IN A 210.24.154.2 IN HINFO "i686 Pentium IV" "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]$ zone file 은 크게 두 부분으로 나뉜다고 할 수가 있다. 바로 윗부분의 "SOA" RECORD 부분과 아 래의 domain name 을 정의하는 IN RECORD 부분이다. 다시 강조 하지만 마침표 (dot) 의 차이는 아주 크니 주의하기 바란다. 그리고 기본 작성법은 {name} {ttl} addr-class Record type Record Specific Data 의 형식으로 작성하게 된다. 보통 {ttl} 부분은 생략되어도 상관이 없다. {ttl} 이 생략되면 SOA field 에 정의된 TTL 값을 따르게 된다. 단, 주의할것은 bind 8.2.3 부터는 아래의 5.minimum(ttl) 부분이 SOA filed 바로 위에서 $TTL 86400 과 같이 default TTL 로 지정하게 된다. 위의 설정 파일 전제의 제일 상단의 $TTL 86400 과 같이 지정을 해 줘야 한다는 말이다. SOA 영역 (Start Of Authority) ;made by admin at oops.org ; $TTL 86400 @ IN SOA ns.oops.org. admin.oops.org. ( 2002062110 ; Serial 10800 ; Refresh 3600 ; Retry 432000 ; Expire 86400 ; Minimum ) 위의 예제를 보면서 설명을 하겠다. 제일 윗줄은 그냥 누가 만들었다는 정보를 기입한 것이 다. 하든 안하든 그건 자유다. ";" 로서 주석을 표시할 수가 있다. zone file 설정의 시작은 $TTL 을 지정하는 것으로 부터 시작한다. 이에 대해서는 위에서 언 급을 했다. 다음은 4 번째 줄을 보자. "@" 은 ORIGIN 을 나타낸다. 앞에서 언급이 되었을 것이니 생략한다. "IN" 은 addr-class 로서 나도 IN 밖에는 모른다. 하지만, 왠만한 기본적인 것은 "IN" 으로 다 처리가 되니 그냥 기본으로 들어간다고 생각하면 되겠다. 즉, 약방의 감초라고 생각하면 된다. "SOA" 는 Record Type 을 정해 준 것으로 초기화라고 생각을 하면 된다. 역할은 priamry 서 버와 secondary 서버간의 data 를 유지하는 시간등을 설정하며, cache 한 정보들을 얼마동안 유지를 할 것인지를 정의 하는 부분이라는 것을 의미한다. 아래의 숫자들이 쭈루룩 있는 부 분이라는 표시라고 보면 된다. "ns.oops.org" 는 이 서버의 NS를 정의해 주는 부분이다. "admin.oops.org"는 서버 관리자의 E-amil address 이다. "@" 를 "." 로 표현하는 것을 주 의하자. mail address 라고 "@" 로 표현을 한다면 ORIGIN 의 "@" 와 충돌이 오게되니 주의하 도록 하자. 5 번째 줄부터 숫자가 적혀있는 부분은 하나하나 설명을 하겠다. ";" 뒤로 적힌 것은 주석이 며 숫자의 단위는 "초" 이다. 즉, serial 부터 expire 까지는 primary 와 secondary NS 사이 의 data 를 update 시키고 정리 하는데 필요한 시간을 정의한 것이다. 세부 사항을 설명하기 전에, 여기서도 주의할 것이 하나가 있다. zone file 을 설정을 할 때 SOA 부분을 셋팅을 할 때 다음과 같이 하는 경우가 있다. @ in SOA ns.domain.com. admin.domain.com ( 2002062110 ; Serial 10800 ; Refresh 3600 ; Retry 432000 ; Expire 86400 ; Minimum ) 위의 형식으로 설정을 하면 8.2.3 부터는 이런 설정이 에러가 나게 된다. 두번째 줄의 ( 가 첫번째 줄 제일 뒤로 꼭 와줘야 하게 된다. 다음은 제대로 된 예제이다. @ in SOA ns.domain.com. admin.domain.com ( 2002062110 ; Serial 10800 ; Refresh 3600 ; Retry 432000 ; Expire 86400 ; Minimum ) 1. serial 이 네임 서버 데이타의 버젼을 나타내는 것이다. 왜 이것이 필요 하냐면 세컨드리 네임 서버 와 프라이머리 서버간에 업데이트를 정확히 하기 위해서이다. 세컨드리 네임 서버에서 프라 이머리 서버의 데이타를 가져올 때, serial 을 봐서 현재의 것보다 숫자가 높다면 가져오고 그렇지 않다면 그냥 원래의 것을 사용하게 되는 것이다. 설정은 YEAR+MONTH+DAY+HOUR 의 10 자리 숫자로 표현을 한다. 2. refresh 프라이머리 서버로부터 데이타를 가져온 후 다시 업데이트 하기 위해 접속 시도를 할 때까지 기다리는 시간을 지정한다. 3. retry 프라이머리 서버에 접속 시도가 실패했을 때 다시 접속을 시도하기 위해 기다리는 시간을 지 정한다. 4. expire 프라이머리 서버로 부터 가져온 데이타를 무효화? 시킬때까지의 시간을 지정한다. 저 시간동 안 프라이머리 서버에 접근이 안되거나 한다면 그 데이타들은 사라질 것이다. 5. minimum(ttl) 이것은 프라이머리와 세컨드리 사이의 설정이 아니다. nslookup 을 사용해 보았다면 붉은색 라인과 같은 것을 보았을 것이다. [root@oops named]# nslookup Default Server: oops.org Address: 210.24.154.2 > winnt.netusers.net Server: oops.org Address: 210.24.154.2 Non-authoritative answer: Name: winnt.netusers.net Address: 210.124.24.180 캐쉬에서 가져온 정보임을 알려 주는 것이다. 직접 그 호스트를 관리 하는 네임 서버에 접속 하여 정보를 받아 온 것이 아니라, 이미 찾았던 도메인들에 대해 캐쉬해 놓은 곳에서 정보를 가져 온것이다. 이 처럼 네임 서버는 한번 찾았던 도메인에 대하여 캐쉬 정보를 가지게 되는 데 이것을 얼마동안이나 유지할것인지를 지정해 주는 것이다. 자주 업데이트 되는 네임 서버 라면 이 시간을 짧게 설정할 수 있을 것이다. bind 8.2.3 이후 부터는 설정파일의 제일 상단에 위에서 설명을 했던 것 처럼 $TTL 86400 과 같이 설정을 해 줘야만 한다. [바로가기 링크] : http://coolx.net/cboard/computer/110 |
|
|
|
[Modify] [Delete] | [Reply] [List] |