トップページに戻る


dnsmasqで簡易DNSサーバー
最終更新日:2016.09.03

dnsmasqはDNS/DHCPサーバーやPXEサーバーとして利用できるソフトウェアです。約1000ノード程度の小規模なクエリを処理できるようです。
ここではdnsmasqを使って簡易DNSサーバーを構築します。

(1) dnsmasqパッケージをインストール

# yum install dnsmasq

(2) DNS設定を行う

# vi /etc/dnsmasq.conf
port=53		#ポートを変更
##ドメインの付加されていないノードの名前解決は上位DNSに転送しない
domain-needed
##プライベートIPの逆引きは上位DNSに転送しない
bogus-priv
##domainパラメーターで指定されたドメインで補完する
expand-hosts		#コメントを外す
local=/local.tooyama.org/			#ドメインを設定
domain=local.tooyama.org		#ドメインを設定

(3) ファイアウォールの設定

# firewall-cmd --add-port=53/tcp
# firewall-cmd --add-port=53/udp
# firewall-cmd --permanent --add-port=53/tcp
# firewall-cmd --permanent --add-port=53/udp

(4) IPアドレスを確認

# ip -4 a s |grep -v 127.0 |grep inet
    inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic eth0
    inet 192.168.1.191/24 brd 192.168.1.255 scope global dynamic eth1

(5) 名前解決したいIPアドレスを記述

# vi /etc/hosts
...
192.168.1.191 dns local.tooyama.org 192.168.1.1 router 192.168.1.5 catalyst

(6) dnsmasqサービスの起動

# systemctl enable dnsmasq	#dnsmasqサービスの自動起動を設定
# systemctl start dnsmasq		#dnsmasqサービスを起動

(7) クライアントからコマンドを実行して名前解決できることを確認
(hostコマンドの後に名前解決したいホスト名、その後にDNSサーバーを指定します)。

$ host router 192.168.1.191
Using domain server:
Name: 192.168.1.191
Address: 192.168.1.191#53
Aliases:

router.local.tooyama.org has address 192.168.1.1