네임서버는 IP주소를 사람들이 쉽게 기억할 수 있는도메인주소로 매핑시켜주는 역할을 합니다.
리눅스에서 쓰이는 네임서버로는 Bind(Barkeley
Internet Name Domain)가 쓰입니다.
한컴리눅스에는 기본적으로 설치가 되어 있으므로, 설정으로
넘어가시면 됩니다.
만일을 위해 #rpm -qa|grep bind 로 패키지가
설치되어 있는지 확인해 보시고, 확인되지 않으면 설치를 먼저
진행하시기 바랍니다.
먼저, 설정에 필요한 파일들은 다음과 같습니다.
- /etc/named.conf : 부트 파일, 첫 번째 설정
파일
- /var/named/named.ca : 루트 네임서버에 대한
정보가 있는 데이터베이스 파일(캐시 파일)
- /var/named/named.local :
localhost에 대한 설정 파일
- /var/named/forward.zone : Public
Domain에 대한 Forward zone 파일
- /var/named/reverse.zone : Inverse
Domain에 대한 Reverse zone 파일
1.
namd.conf 설정
아래는
hancom.com 도메인에 대한 named.conf 파일의
설정입니다.
기본적인 설정파일에서 굵게 표시된 부분만, 신청한 도메인에 맞게
추가를 합니다.
[root@ns
root]# cat /etc/named.conf
// generated by named-bootconf.pl
options {
directory "/var/named";
/*
* If there is a firewall between you and nameservers you want
* to talk to, you might need to uncomment the query-source
* directive below. Previous versions of BIND always asked
* questions using port 53, but BIND 8.1 uses an unprivileged
* port by default.
*/
// query-source address * port 53;
};
//
// a caching only nameserver config
//
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};
zone "hancom.com" IN {
type master;
file "hancom.zone";
allow-update { none; };
};
zone "0.168.192.in-addr.arpa" IN {
type master;
file "hancom.rev";
allow-update { none; };
};
[root@ns root]#
|
위와 같이 신청한 도메인인 hancom.com에 대한 포워드 존
파일인 hancom.zone을 지정하였고, 네임서버를 만들
호스트의 IP인 192.168.0.2의 역으로
0.168.192.in-addr-arpa를 지정하고 리버스 존
파일로 hancom.rev 파일을 지정하였습니다.
2. hancom.zone 생성
named.conf
파일에서 지정한 hancom.com에 대한 Forward zone
파일과 Reverser zone 파일은 각각
hancom.zone과 hancom.rev로 설정하였습니다.
지정한 파일은 /var/named 디렉토리에 파일을 생성합니다.
/var/named 으로 이동하여 살펴보면. 기본적으로
named.ca, localhost.zone,
named.local 파일은 생성되어 있습니다.
hancom.zone 파일을 생성하기 위해, named.local
파일을 hancom.zone파일로 복사합니다.
[root@ns
root]# cd /var/named
[root@ns named]# ls
localhost.zone named.ca
named.local
[root@ns named]# cp
named.local hancom.zone
|
형식에 맞게 hancom.zone 파일을 편집합니다.
[root@ns
named]# vi
/var/named/hancom.zone
$TTL 86400
@ IN SOA ns.hancom.com. root.ns.hancom.com. (
2002062500 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS ns.hancom.com.
IN MX 10 mail.hancom.com.
ns IN A 192.168.0.2
hancom.com. IN A 192.168.0.2
mail IN A 192.168.0.3
www IN A 192.168.0.4
ftp IN A 192.168.0.5
|
[주의] 편집시 도메인 명 다음은 반드시 콤마(.)을 찍어야
합니다.
3. hancom.rev 생성
포워드 존 파일인
hancom.zone을 생성했다면, 나머지 하나 리버스 존 파일인
hancom.rev파일만 생성하면 됩니다.
hancom.rev 파일을 생성하기 위해, named.local
파일을 hancom.rev 파일로 복사합니다
[root@ns
root]# cd /var/named
[root@ns named]# ls
hancom.zone localhost.zone
named.ca named.local
[root@ns named]# cp
named.local hancom.rev
|
hancom.rev 파일을 다음과 같이 편집합니다.
[root@ns named]# vi
/var/named/hancom.rev
$TTL 86400
@ IN SOA ns.hancom.com. root.ns.hancom.com. (
2002062500 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS ns.hancom.com.
2 IN PTR ns
3 IN PTR mail
4 IN PTR www
5 IN PTR ftp
|
형식
기본적인 형식은 같으며,
IP를 도메인으로 매핑할 수 있도록 PTR(Pointer)
레코드를 사용하여, 도메인에 대한 IP를 지정하면 됩니다.
4. 그 외 설정
네임서버를 설정하는 서버의
/etc/resolve.conf파일을 잠시 살펴보고, 네임서버
설정에 맞게 수정을 합니다. /etc/hosts파일과
/etc/host.conf파일은 참고로 살펴만 보시면 됩니다.
/etc/resolve.conf
서버의 네임서버를 지정하는
것으로, 입력된 순서대로 지정된 네임서버에 질의를 하게 됩니다.
첫 번째 등록될 네임서버는 NIC이나 KRNIC에 등록된 1차
네임서버로 ns.hancom.com을 셋팅하는 호스트의 IP를
등록합니다.
[root@ns named]# cat
/etc/resolv.conf
nameserver 192.168.0.2
nameserver 168.126.63.1
|
/etc/hosts
hosts는 간단한 네임서버의
역할을 하는 것으로, 자주 쓰는 도메인에 대한 알리아스를 지정할
수 있습니다. 만일 http://www.hancom.com 웹
사이트 접속이 빈번할 경우, 간단히 /etc/hosts 파일에
아래와 같이 등록하므로써 www만으로 www.hancom.com
서버로 접속하게 됩니다.
[root@ns
named]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
192.168.0.2 ns.hancom.com. ns
211.233.3.59 kr.hancom.com www
|
/etc/host.conf
아래 그림과 같이 hosts와
bind 에 대한 참조 순서를 결정합니다. 만일, 순서가 바뀌어
있다면, /etc/hosts파일은 무용지물이 되겠죠?
[root@ns named]# cat
/etc/host.conf
order hosts,bind
[root@ns named]#
|
5. 네임 서버 데몬 재 가동
변경이 완료 되었다면, 데몬을
재 실행합니다.
[root@ns
root]#
/etc/rc.d/init.d/named stop
named 를 정지함: [ 확인 ]
[root@ns root]#
/etc/rc.d/init.d/named start
named (을)를 시작합니다: [ 확인 ]
[root@ns root]#
|
6. 네임 서버 설정 오류 체크
네임서버를 구축하고 문제점을
체크하는 도구는 여러 가지가 많습니다. 그 중 가장 많이 쓰이는
nslookup으로 네임서버를 체크하는 방법을 알아보도록
하겠습니다.
명령행에서 nslookup를 입력합니다.
[root@ns
root]# nslookup
Note: nslookup is deprecated
and may be removed from
future releases.
Consider using the `dig' or
`host' programs instead. Run
nslookup with
the `-sil[ent]' option to
prevent this message from
appearing.
>
|
>에 셋팅된 네임 서버명을 입력합니다.
아래와 같이 hancom.com을 입력할 경우 제대로 된
192.168.0.2의 네임서버가 출력됩니다.
> hancom.com
Server: 192.168.0.2
Address: 192.168.0.2#53
Name: hancom.com
Address: 192.168.0.2
>
|
만일, server cant't find ns.hancom.com
: NXDOMAIN 이라고 메시지가 나오면 제대로된 설정이
아니므로, 설정 파일들을 다시 살펴볼 필요가 있습니다.
|