Содержание

NSD - это сервер DNS с открытым исходным кодом. Он был разработан NLnet Labs из Амстердама в сотрудничестве с RIPE NCC с нуля как авторитетный сервер имен. NSD - это NS, входящий в состав базы OpenBSD.

Конфигурирование NSD

Основной файл конфигурации для NSD - это файл с именем nsd.conf, расположенный в каталоге /var/nsd/etc/. Теперь откройте/создайте новый файл в вашем текстовом редакторе с правами суперпользователя. Вот пример:

server:
	ip-address: 0.0.0.0
	ip4-only: yes
	identity: "DNS"
	hide-version: yes
	verbosity: 1
	database: ""
	username: _nsd
	logfile: "/var/log/nsd.log"
	pidfile: "/var/nsd/run/nsd.pid"
	difffile: "/var/nsd/db/ixfr.db"
	xfrdfile: "/var/nsd/db/xfrd.state"
	database: "/var/nsd/db/nsd.db"

remote-control:
        control-enable: yes
        control-interface: /var/nsd/run/nsd.sock

zone:
	name: "example.net"
	zonefile: "master/example.net.zone"
	#notify: 193.201.116.2 NOKEY
	#provide-xfr: 193.201.116.2 NOKEY

Файл зоны для NSD

Следующим шагом является написание файлов зон для NSD. Сначала зона прямого просмотра example.net:

; Domain file from My project

example.net.    3600  SOA   ns.example.net. admin.example.net. (
                            2020070701   ; serial YYYYMMDDnn
                            10800        ; refresh
                            3600         ; retry
                            604800       ; expire
                            86400 )      ; minimum TTL

example.net.    NS    ns.example.net.
example.net.    NS    ns.secondary.net.ua.
ns              A     10.10.10.10
example.net.    A     10.10.10.10
www             A     10.10.10.10
irc             A     10.10.10.10
imap            A     10.10.10.10
smtp            A     10.10.10.10
example.net.    mx    10 smtp.example.net.

Сохраните этот файл зоны как /var/nsd/zones/master/example.net.zone

Проверка конфигурации и запуск

В NSD есть инструмент для проверки файла конфигурации перед запуском или перезагрузкой демона:

$ doas nsd-checkconf /var/nsd/etc/nsd.conf

Любая ошибка будет отображена, потому отсутствие репорта - отличные новости. Теперь можно запустить сервис:

$ doas rcctl enable nsd
$ doas rcctl start nsd