Name Server Configuration
이 강좌는 나의 경험과 김병찬씨의 dns강좌의
순서를 살짝 빌려서 하겠다. 일단 이 강좌는 어떻게 설정하는지만을 쓰려고 한다. dns에
대한 자세한 이해가 필요한 사람은 Korea Linux Document Project에 있는
김병찬씨의 강좌를
참조하기를 바란다. 나는 김병찬씨 만큼 쓸 자신이 없기 때문에 간단하게 어떻게 하라는 것만을
쓰겠다.
Name Server란 무엇인가?
그러면 과연 name server라는 것이 무엇을 하는 놈인가 부터 이해를 해야 할것이다.
internet상의 host들은 ip address라는 주소를 가지고 있다. 이 숫자로 된 주소는 외우기가
힘들뿐 아니라 이 주소만으로는 해당 주소의 특성을 알기가 힘이 들었다. 그래서 외우기 쉽고
주소만으로 그 site의 특성을 알기 쉽게 하기 위하여 만든 것이 domain name이라는 것이며,
domain name을 관리 하는 것이 name server이다. 우리가 windows에서 internet에 연결을
위한 셋팅을 할때 보면 TCP/IP 설정에서 주 DNS서버, 보조 DNS서버 라는 항목을 볼수가 있는데
이 항목들이 바로 domain name을 ip address로 해석을 해 줄 Name Server를 지정을 하는 것이
라고 할수가 있다.
hosts file
hosts file이라는 것은 간단히 정의를 하자면 mini name server라고 할수 있다.
그렇다면 이 file이 쓰이는 용도를 살펴 보자.
우리가 web browser에서 domain name으로 어떤 주소를 찾아 가고자 할때 web browser는
그 domain name을 system에서 지정한 Name Server로 보내서 IP address로 변환을 한후에
다시 자신의 system으로 받아와서 해당 site를 찾아 가게 된다. 그러므로 가끔 ip address로는
접속이 되는데 domain name으로 접속이 안될 경우에는 system에 지정을 한 DNS가 죽은 경우가
다반사이다. 또한 지정한 DNS의 회선이 과부하가 걸렸다거나 느릴경우에는 그만큼 ip address로
반환을 받는 속도가 느리기에 그만큼 접속 속도가 느려지는 경우도 있다. 이런 경우를 대비해서
hosts file에 미리 ip address에 name을 지정을 하면 DNS를 거치는 과정을 생략하게 되는 것이다.
그러므로 우리가 자주 사용하는 통신망인 chollian.net, nownrui.net, home.hitel.net 과 같은
site의 주소들은 이곳에 기입을 해 놓는 것이 좋다.
기본적으로 DNS보다는 hosts file을 먼저 참조 하도록 되어 있으며 LINUX에서는 이 순서를 hosts.conf에서
변경할수 있다. Windosw에서는 변경이 가능한지 모르겠다.. :-)
hosts file의 위치는 RedHat을 기준으로 /etc/hosts 와 /etc/host.conf 이다.
설정에 들어가기 전에..
설치에 들어가기 전에 간단히 점검을 해 보자.
이 강좌의 기초는 Linux 배포본중의 REDHAT을 기준으로 한다.
하지만 설정 자체는 NT든 어떤 NOS든 설정하는 form이 다를 뿐이지 기본적인것은 동일
하기 때문에 알아서 잘 응용하면 지정하는데 별 지장이 없다. 중요한 것은 Name Server를
설정하는 것에 대한 이해를 해야지만 한다는 것이다. Name Server Demon은 BIND를
기본을 설명을 하며 요즘은 왠만하면 배포본에 패키지로 깔리게 되므로 직접 설치하고
compile하는 과정은 생략하기로 하겠다.(실은 나도 직접 compile해 본적은 없다 ^^;;)
일단 Name Server(이하 NS로 약칭)를 설정하는데 필요한 file들을 보면
/etc/named.boot (bind 4.x)
/etc/named.conf (bind 8.x)
/etc/resolv.conf
/ets/host.conf
/etc/hosts
/var/named/***.zone
/var/named/***.rev
정도이다.
참고로 bind 8.x 에서는 /etc/named.boot 대신에
/etc/named.conf 를 사용하게 된다는
점을 명심하자. 이 외에의 나머지 file들은 모두 동일한 문법을 사용한다.
- /etc/named.boot (bind 4.x 에서 사용)
named가 실행시에 NS의 database에 대한 기본적인 정보를 취급한다. 설정 파일의
directory, file location등을 지정하며 secondary option으로 remote server로 지정을
할수도 있다.
- /etc/named.conf (bind 8.x 에서 사용)
bind 8.x대에서 /etc/named.boot 대신에 사용되는 file이다. 용도는 /etc/named.boot와
동일하다.
- /etc/resolv.conf
system에 적용될 DNS를 지정을 한다.
- /etc/host.conf
hosts file 에 대한 설정과 dns와 관련된 몇가지 설정을 이곳에서 한다.
- /etc/hosts
mini dns의 역할을 하는 file이다. 위에 설명이 따로 되어 있다.
- /var/named
NS의 zone file들이 위치한다. /etc/named.boot에서 위치를 변경할수 있다.
- /var/named/named.ca
ROOT NS의 IP address를 정의하여 더 빨리 찾을수 있도록 최적화 되어 있는 file이다.
(따로 수정할 필요가 없이 그냥 있는 그대로 사용을 하면 된다.)
- /var/named/named.local
roofback IP address에 대한 reverse mapping을 정의한 file이다. reverse mapping이란
ip address로 domain name을 찾는 것을 말한다.
- /var/named/named.host
host들에 대한 정보를 가지게 되는 file이다. 실제로 NS 셋팅하는 것의 대부분이 이 파일에서
이루어 진다. ( named.host라는 파일명은 /etc/named.boot에서 바꿀수 있으며 보통은
***.zone 의 형식으로 많이 사용한다.)
- /var/named/named.rev
대표 도메인에 대한 reverse mapping 정보를 기록한다. 이 파일 역시 /etc/named.boot에서
이름을 바꿀수 있다.
그 외에는 별로 다룰 것도 없으며 kernel compile도 할 필요
없고 설정후에 제대로 되었는지 확인을 위해 nslookup에 대해서 좀만 논해 보면 될것이다.
그럼 자질구레한 설명은 집어 치우고 직접 설정으로 들어가 보겠다.
>> 다음 : Named.boot Configuration for Bind 4.x
>> 다음 : Named.conf Configuration for Bind 8.x
|