サーバー設定 · 1 min read · Nov 28, 2025

Debian Etch に djbdns ネームサーバーをインストールして使用する方法

Debian Etch に djbdns ネームサーバーをインストールして使用する方法

バージョン 1.0
著者: Falko Timme

djbdns は、dnscache、ISP のネームサーバーの代わりに /etc/resolv.conf で使用できる DNS キャッシュであり、誤った (悪意のある) 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 内のすべてのファイルを削除しますか、
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 内のすべてのファイルを削除しますか、
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 内のすべてのファイルを削除しますか、
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 の既存のネームサーバーを 127.0.0.1 に置き換えます。これは dnscache がリッスンしている IP アドレスです。

/etc/resolv.conf のバックアップを作成します:

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

次に、次のコマンドを実行して新しい /etc/resolv.conf を作成します (example.com を自分のドメインに置き換えることを確認してください): 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

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。