DebianでDnsmasqを使ってDNSを実現する
小規模な内部ネットワーク向けの軽量な DNSソフトのDnsmasq を使用する。
DNSソフトといえばBINDが一般的だが、
BINDは設定が複雑で記述するべきところがとても多く複雑である。
Dnsmasqは設定が簡単で気軽に使えるのが特徴。
BINDほど高速ではないし機能も少ないが
小規模な家庭内LANや小規模事業所などでは十分使える。
DNSサーバーを実装する
Dnsmasqをインストールする。
# apt -y install dnsmasq
設定ファイルを書換える。
# cd /etc # cp dnsmasq.conf dnsmasq.conf.default # vi dnsmasq.conf
以下の内容に書き換える。
# コメントアウトを解除:ドメイン名の無いクエリは上位サーバーに問い合わせない domain-needed # コメントアウトを解除:プライベート IP の逆引き要求は上位サーバーに問い合わせない bogus-priv # コメントアウトを解除:[resolv.conf] に記述のサーバーに上から順に問い合わせる strict-order # コメントアウトを解除してネットワークインターフェース名を追記する interface=enp1s0 # コメントアウトを解除 bind-interfaces # コメントアウトを解除:ホスト名に自動的にドメイン名を付加する expand-hosts # コメントアウトを解除:/etc/hosts をdnsmasqでは使用しない no-hosts # コメントアウトを解除:/etc/hosts-dnsmasqにホスト名とIPアドレスを記載する addn-hosts=/etc/hosts-dnsmasq # コメントアウトを解除:ローカルネットワークのドメイン名を記述する domain=local.example.jp
dnsmasqを再起動する。
# systemctl restart dnsmasq
/etc/hosts-dnsmasq を編集する。
# vi /etc/hosts-dnsmasq
IPアドレスとホスト名を記述していく
192.169.1.100 www.local.example.jp www
リロードする。
# systemctl reload dnsmasq
DNSを使用する他のクライアント・マシンの設定を行う
/etc/resolv.conf を編集する。
# vi /etc/resolv.conf
DnsmasqをインストールしたマシンのIPアドレスを追加する。
nameserver 192.168.1.100
nameserver 192.168.1.1
digコマンドやpingを使ってDNS解決が行われるかを確認する。