LoginSignup
23

More than 5 years have passed since last update.

NSDでおてがるにDNSサーバをたちあげる

Posted at

NSDとは

NSDはシンプルかつ高速なオープンソースのDNSコンテンツサーバです。
DNSサーバとしてはBINDが有名ですが、それに対してパフォーマンス、サイズ、設定の面で軽量なのが利点になります。

なお、DNSキャッシュサーバとしての機能はありませんが、同じ開発元によるUnboundが利用できます。

目標と準備

目標

IPv4に限定した、正引きと逆引きを行えるごく基礎的なDNSコンテンツサーバを立ち上げます。

環境

さくらVPS + ArchLinux

準備

ArchLinuxはインストール済みで、インターネットまわりの設定も終わっているものとします。
設定例ではドメインを example.com 、IPアドレスを 100.150.200.250 とします。

インストールと設定

インストール

pacman -Sy nsd

NSDの設定

設定サンプルをコピーして使います。

cp /etc/nsd/nsd.conf.sample /etc/nsd/nsd.conf

nano /etc/nsd.conf

do-ip6: no

zonesdir: "/etc/nsd/zone"

//正引き
zone:
  name: “example.com”
  zonefile: “example.com.zone”

//逆引き
zone:
  name: 200.150.100.in-addr.arpa
  zonefile: 200.150.100.in-addr.arpa.zone

IPアドレスを反転させたものを逆引きのゾーンとして使います。

ゾーンファイルの設定

RFCで規定されたゾーンファイルになります。BINDで使用しているものも使えるはずです。

mkdir /etc/nsd/zone

正引きゾーンファイル

nano /etc/nsd/zone/example.com.zone

$TTL 3600

@ IN SOA ns.example.com. root.example.com. (
        201xxxxx ;Serial 有効な開始日
        3600 ;Refresh
        900 ;Retry
        3600000 ;Expire
        3600 ) ;Minimum
IN NS ns.example.com. ;ネームサーバー
example.com. IN MX 10 mail.example.com. ;メールサーバー
@ IN A 100.150.200.250
mail IN A 100.150.200.250

逆引きゾーンファイル

nano /etc/nsd/zone/200.150.100.in-addr.arpa.zone

$TTL 3600
@ IN SOA ns.example.com. root.example.com. (
       201xxxxx ;Serial
        3600 ;Refresh
        900 ;Retry
        3600000 ;Expire
        3600 ) ;Minimum
IN NS ns.example.com.
IN A 255.255.254.0 ;サブネットマスク
100 IN PTR ns.example.com.
100 IN PTR mail.example.com.

NSDの起動

systemctl start nsd
systemctl enable nsd

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
23