BINDをインストールして、プライベートネットワーク向けにDNSサーバを立ち上げます。
Table of Contents
1 BINDのインストール
aptでbind9パッケージをインストールします。
sudo apt-get install -y bind9
2 BINDの設定
以下の環境でBINDを設定します。
- プライベートネットワークは192.168.11.0/24です。
- プライベートネットワークのドメイン名はhiroom2.comです。
- DNSサーバのアドレスは192.168.11.70です。再帰問い合わせを実行します。
- クライアントのアドレスは192.168.11.250です。
- インターネットのDNSサーバは192.168.11.1です。
2.1 /etc/bind/named.conf.options
BINDのオプションを設定します。
- プライベートネットワークからの問い合わせのみに応えます。
- 再帰問い合わせを実行します。
- ufwを動かしている場合は53/tcpと53/udpを開放してください。
options { directory "/var/cache/bind"; listen-on port 53 { localhost; 192.168.11.0/24; }; allow-query { localhost; 192.168.11.0/24; }; forwarders { 192.168.11.1; }; recursion yes; }
2.2 /etc/bind/named.conf.local
このプライベートネットワーク向けの設定ファイルは/etc/bind/named.conf からインクルードされます。
$ cat /etc/bind/named.conf.local zone "hiroom2.com" IN { type master; file "hiroom2.com.zone"; };
2.3 /var/cache/bind/hiroom2.com.zone
プライベートネットワークのゾーンファイルです。
- DNSサーバのホスト名はserverです。
- クライアントのホスト名はclientです。
- プライベートネットワーク内にある他のマシンを登録するにはAレコードを適時追加していきます。
$TTL 86400 @ IN SOA hiroom2.com root.hiroom2.com ( 2018050600 3600 900 604800 86400 ) @ IN NS server server IN A 192.168.11.70 client IN A 192.168.11.250
3 設定の検証
named-checkconfで/etc/bind/named.confを検証します。
$ /usr/sbin/named-checkconf
named-checkzoneでzoneファイルを検証します。
$ /usr/sbin/named-checkzone hiroom2.com /var/cache/bind/hiroom2.com.zone zone hiroom2.com/IN: loaded serial 2018050600 OK
4 BINDの起動
systemctlで起動します。
sudo systemctl enable bind9 sudo systemctl restart bind9
5 動作確認
サーバ上にてnslookupで確認します。
$ nslookup server.hiroom2.com localhost.localdomain Server: localhost.localdomain Address: ::1#53 Name: server.hiroom2.com Address: 192.168.11.70
クライアント上にてnslookupで確認します。
$ nslookup client.hiroom2.com 192.168.11.70 Server: 192.168.11.70 Address: 192.168.11.70#53 Name: client.hiroom2.com Address: 192.168.11.250