如何使用 tinydns 设置权威名称服务器?

Mic*_*pat 4 server dns

我想使用tinydns为我的域名提供 DNS 记录。如何在 Ubuntu 中进行设置的最小示例是什么?您可以假设我已经将域的名称服务器设置为指向我的服务器的 IP。

Mic*_*pat 6

安装tinydns(包含在 中djbdns)和其他所需的软件包:

aptitude install djbdns daemontools-run make
Run Code Online (Sandbox Code Playgroud)

一旦daemontools-run被安装的软件包,我们需要手动启动它的第一次(它会在开机时自动启动):

initctl start svscan
Run Code Online (Sandbox Code Playgroud)

tinydns需要两个用户才能运行。现在创建它们:

adduser --system --no-create-home --disabled-login --group tinydns
adduser --system --no-create-home --disabled-login --group dnslog
Run Code Online (Sandbox Code Playgroud)

标准位置创建服务配置目录:

mkdir -p /etc/sv
Run Code Online (Sandbox Code Playgroud)

运行tinydns-conf以创建服务的骨架:

tinydns-conf tinydns dnslog /etc/sv/tinydns <server-ip>
Run Code Online (Sandbox Code Playgroud)

其中tinydnsdnslog是我们之前创建的用户帐户的名称;<server-ip>tinydns将侦听的服务器上的 IP 地址。

一个空tinydns-data文件(类似于 BIND 的区域文件)将在/etc/sv/tinydns/root/data. 您需要对其进行编辑并输入域的详细信息。有关输入内容和示例数据文件的详细信息,请参阅官方文档文档。

无论何时对tinydns-data文件进行更改,都必须重建tinydns数据库:

cd /etc/sv/tinydns/root
make
Run Code Online (Sandbox Code Playgroud)

data.cdb应该在同一目录中创建了一个名为的文件。

最后,tinydns通过运行启用服务:

update-service --add /etc/sv/tinydns
Run Code Online (Sandbox Code Playgroud)

您应该看到tinydnsps. 您可以通过运行以下内容来验证您的 DNS 服务器是否正确提供请求:

dig @<server-ip> <your-domain-name> ANY
Run Code Online (Sandbox Code Playgroud)