큰 맥락에서 보면 간단하다
1. bind다운로드
2. bind 설치
3. named.conf파일설정
4. zone-file설정
5. named.conf, zone-file 체크
6. DNS변경
7. bind 실행(./named)
8. nslookup으로 확인
이중에서 가장 중요한것이 named.conf, zone-file설정이다.
이제 차근차근 큰 맥락을 따라가보자. 여기서는 source compile 로 설치했을때를 기준으로 설명합니다.(RHEL 4)
1. bind 다운로드 : http://www.isc.org/software/bind 에서 다운로드(다운받고 README파일을 통해 자신의 환경에 적합하게 실행되는지 확인하자)
2. bind 설치 : rpm설치는 그냥 rpm -Uvh filename,
source compile설치는 README파일 참고
일반적으로 Ⅰ./configure 자신이 원하는 옵션(여기서는 --prefix=/usr/local/dns/ : /usr/local/dns/안에 설치한다.)
Ⅱ. make(옵션에 맞게 파일들 재컴파일)
Ⅲ. make install(파일복사)
3. named.conf 파일설정 : /설치된경로/etc/ 아래에 named.conf파일을 생성한다.
([root@localhost etc]# vi /usr/local/dns/etc/named.conf)
options {
directory "/etc/namedb"; // zone-file들이 저장될 경로
dump-file "/etc/tmp/named_dmp.db";
statistics-file "/etc/tmp/named.stats";
pid-file "/etc/run/named.pid";
};
zone "." IN {
type hint;
file "named.root";
};
zone "localhost" IN {
type master;
file "zone-localhost";
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "zone-0.0.127.in-addr.arpa";
};
zone "0.16.172.in-addr.arpa" IN {
// (IP 역순) 192.168.0.15 ----> 0.168.192.in-addr.arpa(192.168.0.xxx로 엑서스하면 이 파일이 처리한다.)
type master;
file "zone-0.16.172.in-addr.arpa";
};
------------------- 여기까지는 일반적으로 거의 고정적으로 추가한다.
zone "naver.com" IN {
type master;
file "zone-naver.com"; // 경로를 따로 지정하지 않으면 위쪽에서 지정한 디렉토리를 디폴트로 인식한다.
}; // naver.com 이라는 URL에 접속을 하면 zone-naver.com파일을 참고해서 해당 IP에 접속한다.
------------------ 자신이 원하는 URL을 위 형식과 같이 추가하면 된다.
4. zonefile 생성
위 /usr/local/dns/etc/named.conf 파일에서 디렉토리를 /etc/namedb로 지정해줬으므로 zonefile은 /etc/namedb아래에 생성한다.
named.conf파일 안에
"named.root", "zone-localhost", "zone-0.0.127.in-addr.arpa", "zone-naver.com"가 있다고 설정했으므로 각각에 해당하는 파일을 모두 생성한다.
[root@localhost namedb]# pwd
/etc/namedb
ⓐ named.root
root zone파일을 다운받는다.(InterNIC에서 제공하는 파일) : named.conf에서는 "."에 해당하는 파일이다.
[root@localhost namedb]# wget ftp://ftp.internic.org/domain/named.root
ⓑ vi zone-localhost
$ORIGIN localhost.
@ 1D IN SOA @ root 1999010100 3h 15m 1w 1d
@ 1D IN NS @
@ 1D IN A 127.0.0.1
@ 1D IN AAAA ::1
ⓒ vi zone-0.0.127.in-addr.arpa
$TTL 3W
@ 3W IN SOA localhost. root.localhost. 1999010100 3h 15m 1w 1d
@ 3W IN NS localhost.
1 3W IN PTR localhost.
ⓓ vi zone-naver.com
en.wikipedia.org/wiki/Zone_file 을 참조하여 상황에 맞게 작성
zone 파일에 대한 설명
(reference : http://jigi.net/entry/DNS-%EC%84%9C%EB%B2%84-%EA%B5%AC%EC%B6%95RHEL-4,
en.wikipedia.org/wiki/Zone_file)
$TTL Time To Live의 약자며 BIND9 버전부터는 첫 줄에 무조건 기록, 초단위
캐시를 얼마나 오래 보관할지 결정, 86400(1일) 등을 설정
@ 현재 도메인을 나타냄,
nameserver는 DNS서버의 호스트명과 도메인 명을기록
루트 도메인일 경우 반드시 마지막에 “.”을 찍어 줌
IN 클래스 이름으로 internet을 의미함
SOA Start Of Authority 약자, 권한의 시작을 뜻함.
serial : 버전정보(일반적으로 생성 날짜를 지정)
refresh : 상위 네임서버에게 업데이트 요청하는 간격
retry : 상위 네임서버에 문제 발생 시 재접속 시도 간격
expire : 상위 네임 서버에 접속 못할 경우 이전의 정보 파기하는 간격
minimum : 이 시간 이후에 정보가 삭제됨
NS Name Server 약자, 설정된 도메인의 DNS서버 역할을 하는 컴퓨터를 지정
MX Mail Exchanger 약자, 메일 서버 컴퓨터를 설정
A 호스트 이름에 상응하는 IP주소를 지정함
CNAME 호스트 이름에 대한 별칭을 부여할 때 사용함
6. DNS변경
/etc/resolv.conf 안에 DNS를 자기 IP로 바꾼다)
※service network restart할 경우 resolv.conf파일이 dhclient-script에 의해서 자동으로 바뀌는 경우가 있으니 restart하지말고 그냥 하자.
7. bind 실행(./named)
[root@localhost sbin]# pwd
/usr/local/dns/sbin
[root@localhost sbin]# ./named
[root@localhost sbin]# ps -ef |grep named
root 22056 1 0 14:37 ? 00:00:00 ./named : named가 실행되고 있음을 확인(named.conf가 잘못설정되있다면
실행되지 않는다)
8. nslookup으로 확인
'OS > Linux' 카테고리의 다른 글
2011.12.05 리눅스 FTP서버설정하기, DNS연동 (0) | 2012.01.09 |
---|---|
리눅스 DNS 서비스 시작프로그램에 등록하기 (0) | 2012.01.09 |
2011.12.01 리눅스 telnet, ssh, vnc서버,접속확인 (0) | 2012.01.09 |
2011.12.01 리눅스RAID, 관련명령어 (0) | 2012.01.09 |
2011.11.30 리눅스 어떤 명령을 1초마다 치고 싶을때, 실시간 검사, 부팅시 실행,LVM (0) | 2012.01.09 |