서버 설정 · 2 min read · Nov 28, 2025

Debian Etch에서 djbdns 네임 서버 설치 및 사용 방법

Debian Etch에서 djbdns 네임 서버 설치 및 사용 방법

버전 1.0
저자: Falko Timme

djbdns는 여러 부분으로 구성된 매우 안전한 DNS 도구 모음입니다: dnscache, ISP의 네임 서버 대신 /etc/resolv.conf에서 사용할 수 있는 DNS 캐시로 잘못된(악의적인) DNS 응답을 정리하려고 시도합니다; axfrdns, 마스터 DNS 서버에서 실행되는 서비스로 슬레이브가 존 전송을 위해 연결합니다; 그리고 tinydns, 실제 DNS 서버로 BIND의 매우 안전한 대체품입니다.

이것이 당신에게 작동할 것이라는 보장은 하지 않습니다!

1 사전 참고

저는 IP 주소 192.168.0.100인 Debian Etch 시스템에서 djbdns를 테스트했습니다. dnscache와 tinydns(마스터 DNS 서버로서)를 사용하는 방법을 설명하겠지만 axfrdns를 사용하는 방법은 설명하지 않겠습니다 - 아마도 다른 튜토리얼에서 다룰 것입니다.

dnscache는 로컬 IP 주소 127.0.0.1에서 수신 대기하고, tinydns는 외부 IP 주소 192.168.0.100에서 수신 대기합니다.

2 djbdns 설치하기

djbdns는 “라이센스” 때문에 Debian 저장소에서 바이너리 패키지로 제공되지 않습니다(2007년 12월 28일까지 djbdns는 라이센스가 없는 소프트웨어였습니다), 그러나 djbdns를 설치하는 데 사용할 수 있는 djbdns-installer 패키지가 저장소에 있습니다. djbdns는 daemontools와 ucspi-tcp에 의존합니다; 다시 말해, 이 프로그램들에 대해서는 설치 패키지만 제공됩니다. 설치 프로그램은 Debian Etch contrib 및 non-free 저장소에서 사용할 수 있으므로 먼저 /etc/apt/sources.list에 이들이 포함되어 있는지 확인해야 합니다:

vi /etc/apt/sources.list

| [...] deb http://ftp2.de.debian.org/debian/ etch main contrib non-free [...] |

그 후 패키지 데이터베이스를 업데이트합니다:

apt-get update

다음으로 daemontools-installer를 설치합니다:

apt-get install daemontools-installer

이제 다음과 같이 daemontools를 설치할 수 있습니다:

build-daemontools

몇 가지 질문을 받을 것입니다. ENTER를 눌러 기본값을 항상 수락할 수 있습니다:

설치할 디렉토리를 입력하세요 [/tmp/daemontools] <– ENTER

어떤 형식을 사용하시겠습니까? [fD] <– ENTER

계속하려면 ENTER를 누르세요… <– ENTER

/tmp/daemontools에서 모든 파일을 제거하시겠습니까,
except daemontools_0.76-9_i386.deb 지금? [Yn] <– ENTER

daemontools_0.76-9_i386.deb를 지금 설치하시겠습니까? [Yn] <– ENTER

daemontools-installer를 지금 제거하시겠습니까? [yN] <– ENTER

ucspi-tcp를 설치하려면 다음을 실행합니다:

apt-get install ucspi-tcp-src

그런 다음:

build-ucspi-tcp

다시 몇 가지 질문을 받을 것이고, 다시 기본값을 수락할 수 있습니다:

설치할 디렉토리를 입력하세요 [/tmp/ucspi-tcp] <– ENTER

계속하려면 ENTER를 누르세요… <– ENTER

/tmp/ucspi-tcp에서 모든 파일을 제거하시겠습니까,
except ucspi-tcp_0.88-10_i386.deb 지금? [Yn] <– ENTER

ucspi-tcp_0.88-10_i386.deb를 지금 설치하시겠습니까? [Yn] <– ENTER

ucspi-tcp-src를 지금 제거하시겠습니까? [yN] <– ENTER

마지막으로 다음과 같이 djbdns를 설치합니다:

apt-get install djbdns-installer
build-djbdns

다시 몇 가지 질문을 받을 것이고 - 기본값을 수락하세요:

설치할 디렉토리를 입력하세요 [/tmp/djbdns] <– ENTER

계속하려면 ENTER를 누르세요… <– ENTER

/tmp/djbdns에서 모든 파일을 제거하시겠습니까,
except djbdns_1.05-11_i386.deb 지금? [Yn] <– ENTER

djbdns_1.05-11_i386.deb를 지금 설치하시겠습니까? [Yn] <– ENTER

djbdns-installer를 지금 제거하시겠습니까? [yN] <– ENTER

다음으로 dnscache, axfrdns 및 tinydns를 구성합니다(192.168.0.100을 시스템의 외부 IP 주소로 바꾸는 것을 잊지 마세요):

mkdir /var/lib/svscan
dnscache-conf dnscache dnslog /var/lib/svscan/dnscache
axfrdns-conf axfrdns dnslog /var/lib/svscan/axfrdns /var/lib/svscan/tinydns 192.168.0.100
tinydns-conf tinydns dnslog /var/lib/svscan/tinydns 192.168.0.100

ln -s /var/lib/svscan/dnscache /service
ln -s /var/lib/svscan/axfrdns /service
ln -s /var/lib/svscan/tinydns /service

그런 다음 djbdns를 시작합니다:

/etc/init.d/djbdns restart

3 dnscache 사용하기

dnscache를 사용하려면 /etc/resolv.conf의 기존 네임 서버를 dnscache가 수신 대기하는 IP 주소인 127.0.0.1로 교체합니다.

/etc/resolv.conf의 백업을 만듭니다:

cp /etc/resolv.conf /etc/resolv.conf-original

그런 다음 다음 명령을 실행하여 새로운 /etc/resolv.conf를 만듭니다(예제 도메인을 자신의 도메인으로 바꾸는 것을 잊지 마세요):

echo “domain example.com” > /etc/resolv.conf
echo “nameserver 127.0.0.1” >> /etc/resolv.conf

dnscache가 작동하는지 테스트하기 위해 호스트 이름을 확인해 볼 수 있습니다, 예를 들어 www.google.com:

dnsip www.google.com 

모든 것이 잘 진행되면 www.google.com의 IP 주소가 표시되어야 합니다:

server1:~# dnsip www.google.com
66.249.93.104 66.249.93.147 66.249.93.99
server1:~#

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.