2. 소개

DNS란 무엇인가?

DNS는 Domain Name Server이다. DNS는 모든 넷상에 속해있는 컴퓨터가 가지고 있는 이름을 IP주소로 바꾸어 주는 역할을 한다. 이것은 이름을 IP로 바꾸어 주기도 하고 IP를 이름이나 다른 것으로 바꾸어 주기도 한다(혹은 mapping한다고도 한다). 이 HOWTO 문서는 리눅스에서 특수화된 몇가지 부분을 포함한 유닉스시스템의 이와같은 mapping 용례에 대해 정의할 것이다.

이러한 mapping은 단순하게는 ftp.linux.org.같은 컴퓨터의 이름과 199.249.150.4 같은 IP 넘버(혹은 어드레스)사이의 조합이라고 볼 수 있다. 또한 DNS는 다른 방식의 mapping도 할 수 있는데 이것은 'reverse mapping'이라고 하며 IP를 컴퓨터 이름으로 바꾸어 주는 것이다.

DNS는 네트워크 관리 부분에서 상당히 모호한 부분이지만 실제로 그렇게 어렵지는 않다. 이 문서는 몇가지 부분을 명확하게 하려고 노력할 것이다. 도메인에 대한 1차 DNS서버에 대한 설정과 케쉬서버를 포함해서 간단한 DNS name server에 대한 설정작업에 대해 기술할 것이다. 더 복잡한 설정은 이 문서의 Q&A부분을 참조하길.... 이 문서에 없는 부분은 상세한 문서를 참조하길 바란다. 마지막 장에 상세한 문서에 대한 부분을 기술할 것이다.

시작하기 전에 telnet을 사용가능하게 하며, 다른 넷상의 모든 연결이 가능하게 설정이 되야 한다. 그리고 telnet 127.0.0.1 이 실행시 자신의 컴퓨터에 대한 정보를 가져와야 한다.(실행해 보시길) 또한 시작부분인 /etc/nsswitch.conf, /etc/resolv.conf, /etc/hosts 파일이 올바르게 설정되어야 한다. 여기에서는 이들의 기능에 대해서는 설명하지 않는다. 이러한 전반적인 기능이 수행이 되지 않는다면 Howto의 Networking 부분을 참조하고 읽어보길 바란다. (모르면 알아서 공부하라는 뜻같군....--.)

이 문서에서 '컴퓨터'는 일반적으로 이러한 DNS 설정이 되어 있는 것을 의미하며 그외의 일반적인 컴퓨터를 통칭하는 부분은 네트워크와 무관한 경우이다.

이름질의(name query)를 막는 방화벽은 제거되야 하며 특별한 설정이 요구되면 역시 Q&A를 참고하라.

유닉스 상의 네임서버기능은named라는 프로그램에 의해 이루어 진다. 이것은 BIND 패키지에 있는 것이며 ISC(Internet Sotfware Consortium)이 제공한다. 이 named는 거의 모든 리눅스 프로그램에 포함되어 있는 것이며 이것은 일반적으로 BIND 패키지로 설치된 경우 /usr/sbin/named부분에 위치하게 된다.

만약 컴퓨터에 named가 있으면 바로 사용이 가능하다. 만약에 설치가 되있지 않다면 ftp://ftp.isc.org/isc/bind/src/에서 최신 버젼과 소스를 구할 수 있다. 이것은 BIND 버젼 8에 대한 문서이다. 구버젼인 버젼4의 경우는 http://www.math.uio.no/~janl/DNS/에서 자료를 구할 수 있을 것이다. 만약 버젼이 8이라면 named의 manpage에서 named.conf를 언급할 것이고 버젼이 4라면 named.boot에 대한 언급을 할 것이다. 만약 버젼 4를 가지고 있다면 보안의 측면을 고려해서 버젼 8로 버젼업을 해야 할 것이다

DNS는 광범위한 넷상의 데이터베이스이다. 무엇이 삽입되어야 하는지 신중하게 고려해야 한다. 쓸모없는 정보가 들어간다면 보는 이들 역시 쓸모 없는 정보를 얻게 된다. DNS를 간소하고 필요한 것으로 체워야 하며, 그러면 좋은 서비스를 받게 될 것이다. 사용법, 유지법, 디버깅법을 배우면 잘못된 관리로 인한 넷상에서의 실패를 방지하는 훌륭한 유지를 하게 될 것이다.

작은 정보: 이러한 파일에 대한 모든 백업 파일을 만드시오. 그래서 작업이후 작동이 되지 않으면 다시 복구할 수 있도록 대비하시길....