웹서버관련정보/윈도우

[강좌] 윈도우에서 DNS서버 만들기 (BIND설정파일 만들기) (2/3)

박디 2008. 1. 16. 15:38

1장에 이어서 이제 BIND의 DNS서버 설정파일을 만들어보겠습니다. BIND설치자체는 너무 간단해서 허무할 정도이지만 설정파일 만들기가 상당히 귀찮습니다. 하지만 설정파일이 없으면 아무것도 할수가 없으니..한번 살펴보도록 하죠.

설정파일을 만들기에 앞서 BIND의 바이너리 파일들을 쉽게 아무곳에서나 경로입력없이
사용하기 위해 Path를 지정해줘야겠습니다.
(내컴퓨터→속성→고급→환경변수→시스템변수→Path)

편집버튼을 누른뒤 앞서 BIND를 설치한 디렉토리를 입력하여 줍니다. bin폴더는 설치된 BIND
의 각종 실행파일이 있는곳입니다. 입력후 확인해줍니다.

사용자 삽입 이미지
이제 Key파일로 쓰일 rndc.key와 이에따른 환경설정 파일인 rndc.conf파일을 만들겠습니다.

사용자 삽입 이미지
cmd에서 위와같이 rndc-confgen -a명령으로 키파일을 만든뒤 위와같이 type명령으로
key파일의 내용을 한번 확인해봅니다. 키값의 경우 모두 제각각 다릅니다.


사용자 삽입 이미지
rndc.key파일이 설치된곳의 etc디렉토리에 있는것을 확인할수있습니다. 이외의 여러
설정파일도 앞으로 이 etc디렉토리에 들어가게 됩니다.이제 앞에서 이어 conf파일을 만듭니다.

사용자 삽입 이미지
두번째와 같이 rndc-confgen>해당경로/rndc.conf 를 입력실행하면 rndc.conf파일이
생성됩니다. 이젠 rndc.key 파일의 키값을 rndc.conf와 똑같이 만들어주는 작업을 하게됩니다.

사용자 삽입 이미지
rndc.key , rndc.conf 파일을 메모장등의 텍스트편집기로 열고 secret부분을 살펴보면 키값이
다릅니다. rndc.key의 secret부분의 값을 모두 복사해서 rndc.conf의 secret부분을 이값으로
바꿔줍니다.

사용자 삽입 이미지
위와같이 똑같게 만들어줍니다.

이번엔 named.conf 파일을 만들어보겠습니다. 이 conf파일은 앞으로 dns서버를 서비스할 데몬
프로그램인 named.exe의 설정파일입니다. 이 파일은 위에서처럼 자동으로 생성되지 않고 따로
텍스트편집기등을 사용해서 만들어줘야합니다. 편의상 주석부분인(//) 부분은 입력하시지
않아도 됩니다. 그이외의 부분만 자신의 환경에 맞춰서 바꿔주시면 되겠습니다.

사용자 삽입 이미지
위사진과 똑같이 전부 입력합니다. 몇몇 부분만 자신의 환경에 맞춰 수정하면 됩니다. 보시면
금방 아실듯.. 문자 한개라도 틀리면 에러가 납니다. 일단은 꼼꼼히 작성합니다. 전부 작성/저장
하셨으면 이제 문법 오류검사를 해보겠습니다.

사용자 삽입 이미지
named-checkconf 명령으로 위와같이 named.conf파일의 문법오류를 살펴봅니다. conf파일의
19번째,28번째,37번째 줄에서 뭔가가 잘못됐군요. 확인결과 19번째줄의 }; 구문이 빠져서
오류가 발생했습니다.

사용자 삽입 이미지
다시 문법검사시 아무 이상 없음을 나타내고 있습니다.

이제는 named.ca파일을 만들겠습니다. 이파일은 만든다기 보다는..받아온다는 표현이 낫네요.

사용자 삽입 이미지

위의 주소로 접속하여 named.root 파일을 다운로드 받아서 etc폴더에 넣어주고 named.ca로
파일명을 변경해줍니다.
(ftp://ftp.rs.internic.net/domain)

이젠 localhost.zone 파일을 생성하겠습니다. 로컬호스트의 IP주소를 명시해주는 파일입니다.
 

$TTL 86400
@    IN   SOA     @       root (
       42          ; serial (d. adams)
       3H         ; refresh
       15M       ; retry
       1W         ; expiry
       1D )       ; minimum

       IN    NS     @
       IN    A       127.0.0.1


이렇게 똑같이 입력해주면 되는데 그냥 편집기에서 타이핑후 저장후에 유효성 검사를 해보면
오류가 나는 경우가 있습니다. 그래서 그냥 이파일을 다운로드 해서 쓰시기 바랍니다.

invalid-file

localhost.zone

이제 localhost.zone파일의 유효성 검사를 해보겠습니다.

사용자 삽입 이미지
위에서 오류가 발생한다고 했던것이 바로 이부분입니다. 그대로 편집기에 쓸경우 띄어쓰기도
영향을 받는군요. 위파일을 다운로드 하셔서 위사진처럼 named-checkzone localhost localhost.zone 명령을 통해 아래사진과 같이 메시지가 뜬다면 정상입니다.

사용자 삽입 이미지
이제 named.local파일을 생성할 차례입니다. 이 파일은 localhost의 inverse domain에 대한
정보설정 파일로 위의 localhost.zone파일에서 localhost가 127.0.0.1을 가리키게 한것처럼
이파일에선 반대로 127.0.0.1이 localhost를 가리키게 설정해줍니다.

$TTL  86400
@    IN    SOA        localhost.    root.localhost. (
                            1997022700 ; Serial
                            28800         ; Refresh
                            14400         ; Retry
                            3600000      ; Expire
                            86400 )       ; Minimum
       IN      NS        localhost.

1     IN      PTR       localhost.

이 파일내용또한 위 내용 그대로 써주면 되지만 오류가 발생할 소지가 있어서 한번 해보시고 안된다면 아래 파일을 받아서 유효성 검사를 해보시면 됩니다.


invalid-file

named.local

앞서와 마찬가지로 유효성 검사를 해보겠습니다.

사용자 삽입 이미지
위 사진은 잘못된 검사 방법입니다.;;  named-checkzone named.local named.local
명령으로 검사하신뒤 흰색부분의 메시지가 표시된다면 제대로 된것입니다.

3장에서는 개별도메인설정 zone 파일생성에 대해 알아보겠습니다.