More actions
서버관리자가 DNS와 BIND에 대해 공부한 내용
책 - DNS와 BIND, Paul Albitz & Cricket Liu, 이성희 역, 한빛미디어
1. 기본 지식
2. DNS는 어떻게 동작하는가?
3. 시작하기
4. BIND 셋업하기
이용할 도메인
127.0.0.1 localhost 192.249.249.2 robocop.movie.edu robocop 192.249.249.3 terminator.movie.edu terminator bigt 192.249.249.4 diehard.movie.edu diehard dh 192.253.253.2 misery.movie.edu misery 192.253.253.3 shining.movie.edu shining 192.253.253.4 carrie.movie.edu carrie 192.253.253.2 wormhole.movie.edu wh249 192.253.253.2 wormhole.movie.edu wh253
robocop terminator diehard
ㅁ ㅁ ㅁ
|--------|---------|-----네트워크 192.249.249
|
wormhole ㅁ
|
|------|-------|---------네트워크 192.253.253
ㅁ ㅁ ㅁ
misery shining carrie
DNS 데이터 셋업
db 파일(DNS 데이터 베이스 파일) 호스트->주소 맵핑하는 파일 - db.DOMAIN 예) db.movie 주소->호스트 맵핑하는 파일 - db.ADDR 예) db.192.249.249 네임서버환경설정파일 - /etc/named.conf (BIND 버전 8) => (책에는 BIND 버전 4와 BIND 버전 8 모두 설명하고 있는데 버전 8만 정리하겠음)
- db 파일
DNS 리소스 레코드 : db 파일내의 항목들 리소스 레코드들의 (일반적)순서 - SOA(start of authority) 레코드, NS(name server) 레코드, 기타 레코드, A(address), PTR(pointer), CNAME(canonical name)
- 주석문 - 세미콜론(;)으로 시작해서 그 라인의 끝까지
- SOA레코드
각 파일의 첫 항목 이 네임서버가 이 영역의 데이터에 대한 최고의 정보 제공처라는 것을 의미 movie.edu. IN SOA terminator.movie.edu. al.robocop.movie.edu. ( 1 ; Serial 10800 ; Refresh 3600 ; Retry 604800 ; Expire 86400 ) ; Negative Cache TTL terminator.movie.edu => 주 마스터 네임 서버의 이름 al.robocop.movie.edu => 책임자의 연락처(al@robocop.movie.edu)
- NS 레코드
영역에 대한 네임 서버 레코드
- 주소와 별명 레코드
A - 호스트 네임을 주소로 맵핑하는 리소스 레코드 CNAME - 별명을 그에 해당하는 정규(canonical)네임으로 맵핑하는 리소스 레코드
- PTR 레코드
네트워크 주소를 호스트 주소로 맵핑
- 완성된 데이터 파일
db.movie
movie.edu. IN SOA terminator.movie.edu. al.robocop.movie.edu. ( 1 ; Serial 10800 ; Refresh 3600 ; Retry 604800 ; Expire 86400 ) ; Negative Cache TTL ; ; 네임 서버들 ; movie.edu. IN NS terminator.movie.edu. movie.edu. IN NS wormhole.movie.edu. ; ; 정규(canonical) 네임에 대한 주소들 ; localhost.movie.edu. IN A 127.0.0.1 robocop.movie.edu. IN A 192.249.249.2 terminator.movie.edu. IN A 192.249.249.3 diehard.movie.edu. IN A 192.249.249.4 misery.movie.edu. IN A 192.253.253.2 shining.movie.edu. IN A 192.253.253.3 carrie.movie.edu. IN A 192.253.253.4 wormhole.movie.edu. IN A 192.249.249.1 wormhole.movie.edu. IN A 192.253.253.1 ; ; 별명들 ; bigt.movie.edu. IN CNAME terminator.movie.edu. dh.movie.edu. IN CNAME diehard.movie.edu. wh.movie.edu. IN CNAME wormhole.movie.edu. ; ; 인터페이스를 위한 특정한 이름들 ; wh249.movie.edu. IN A 192.249.249.1 wh253.movie.edu. IN A 192.253.253.1
db.192.249.249
249.249.192.in-addr.arpa. IN SOA terminator.movie.edu. al.robocop.movie.edu. ( 1 ; Serial 10800 ; Refresh 3600 ; Retry 604800 ; Expire 86400 ) ; Negative Cache TTL ; ; 네임 서버들 ; 249.249.192.in-addr.arpa. IN NS terminator.movie.edu. 249.249.192.in-addr.arpa. IN NS wormhole.movie.edu. ; ; 정규(canonical) 네임에 대한 주소들 ; 1.249.249.192.in-addr.arpa. IN PTR wormhole.movie.edu. 2.249.249.192.in-addr.arpa. IN PTR robocop.movie.edu. 3.249.249.192.in-addr.arpa. IN PTR terminator.movie.edu. 4.249.249.192.in-addr.arpa. IN PTR diehard.movie.edu.
db.192.253.253
253.253.192.in-addr.arpa. IN SOA terminator.movie.edu. al.robocop.movie.edu. ( 1 ; Serial 10800 ; Refresh 3600 ; Retry 604800 ; Expire 86400 ) ; Negative Cache TTL ; ; 네임 서버들 ; 253.253.192.in-addr.arpa. IN NS terminator.movie.edu. 253.253.192.in-addr.arpa. IN NS wormhole.movie.edu. ; ; 정규(canonical) 네임에 대한 주소들 ; 1.253.253.192.in-addr.arpa. IN PTR wormhole.movie.edu. 2.253.253.192.in-addr.arpa. IN PTR misery.movie.edu. 3.253.253.192.in-addr.arpa. IN PTR shining.movie.edu. 4.253.253.192.in-addr.arpa. IN PTR carrie.movie.edu.
- 루프백 주소
db.127.0.0 파일
- 루트 캐시 데이터
db.cache(db.root) 파일
BIND 환경 설정 파일 셋업
/etc/named.conf (db 파일들은 /usr/local/named에 존재한다고 가정)
// BIND 환경 설정 파일
options {
directory "/usr/local/named";
// 기타 옵션들을 여기에 적는다.
};
zone "movie.edu" in {
type master;
file "db.movie";
};
zone "249.249.192.in-addr.arpa" in {
type master;
file "db.192.249.249";
}
zone "253.253.192.in-addr.arpa" in {
type master;
file "db.192.253.253";
}
zone "0.0.127.in-addr.arpa" in {
type master;
file "db.127.0.0";
}
zone "." in {
type hint;
file "db.cache";
}
축약어
- 도메인 자동 확장
robocop IN A 192.249.249.2 =>robocop.movie.edu. IN A 192.249.249.2 2 IN PTR robocop.movie.edu. =>2.249.249.192.in-addr.arpa. IN PTR robocop.movie.edu.
- @ 기호
@ => 도메인 네임의 기원
- 마지막 이름 반복
wormhole IN A 192.249.249.1 IN A 192.253.253.1
- 짧게 작성한 db 파일
;
; movie.edu: 점으로 끝나지 않는 이름은 기원이 추가됨
;
@ IN SOA terminator.movie.edu. al.robocop.movie.edu. (
1 ; Serial
10800 ; Refresh
3600 ; Retry
604800 ; Expire
86400 ) ; Negative Cache TTL
;
; 네임 서버들 ('@'가 내포되어 있음)
;
IN NS terminator.movie.edu.
IN NS wormhole.movie.edu.
;
; 정규(canonical) 네임에 대한 주소들
;
localhost IN A 127.0.0.1
robocop IN A 192.249.249.2
terminator IN A 192.249.249.3
diehard IN A 192.249.249.4
misery IN A 192.253.253.2
shining IN A 192.253.253.3
carrie IN A 192.253.253.4
wormhole IN A 192.249.249.1
IN A 192.253.253.1
;
; 별명들
;
bigt IN CNAME terminator
dh IN CNAME diehard
wh IN CNAME wormhole
;
; 인터페이스를 위한 특정한 이름들
;
wh249 IN A 192.249.249.1
wh253 IN A 192.253.253.1
db.192.249.249
;
; 249.249.192.in-addr.arpa: 점으로 끝나지 않는 이름은 기원이 추가됨
;
@ IN SOA terminator.movie.edu. al.robocop.movie.edu. (
1 ; Serial
10800 ; Refresh
3600 ; Retry
604800 ; Expire
86400 ) ; Negative Cache TTL
;
; 네임 서버들 ('@'가 내포되어 있음)
;
IN NS terminator.movie.edu.
IN NS wormhole.movie.edu.
;
; 정규(canonical) 네임에 대한 주소들
;
1 IN PTR wormhole.movie.edu.
2 IN PTR robocop.movie.edu.
3 IN PTR terminator.movie.edu.
4 IN PTR diehard.movie.edu.
db.192.253.253
;
; 253.253.192.in-addr.arpa: 점으로 끝나지 않는 이름은 기원이 추가됨
;
@ IN SOA terminator.movie.edu. al.robocop.movie.edu. (
1 ; Serial
10800 ; Refresh
3600 ; Retry
604800 ; Expire
86400 ) ; Negative Cache TTL
;
; 네임 서버들 ('@'가 내포되어 있음)
;
IN NS terminator.movie.edu.
IN NS wormhole.movie.edu.
;
; 정규(canonical) 네임에 대한 주소들
;
1 IN PTR wormhole.movie.edu.
2 IN PTR misery.movie.edu.
3 IN PTR shining.movie.edu.
4 IN PTR carrie.movie.edu.
호스트 네임 검사
유용한 도구
주 마스터 네임 서버 운영하기
- 네임 서버 실행
/etc/named /etc/named -b conf-file (다른곳에 있는 환경설정파일 이용할때)
- Syslog 에러 검사
grep daemon /etc/syslog.conf (syslog 메시지가 기록되는 파일을 알아냄, 여기선 /var/adm/messages) grep named /var/adm/messages
- nslookup으로 검사
- 기본 도메인 네임 초기화
/etc/resolv.conf 파일에 domain movie.edu 라인 추가
- 로컬 네임 탐색
nslookup carrie
- 로컬 주소 탐색
nslookup 192.253.253.4
- 원격 네임 탐색
nslookup ftp.uu.net.
- 추가 테스트
nslookup carrie gatekeeper.dec.com
- 시동 파일 편집
슬레이브 네임 서버 운영하기
다른 도메인 추가
이후의 내용들
와우~ 수고하십니다. 이후에 유용한 자료가 될듯.. ^^ - 임인택
그냥 필요한거 일부분만 정리했구요. DNS개념이나 고급적인 부분은 직접 책을 보시는게 좋을거에요 ^^ --곽세환