QNAP NASでdnsmasqを使う

自宅サーバに使っているTS-869 ProにてDNSを構築する手順のメモ書きです。
今回はdnsmasqを使います。

1.dnsmasqのインストール
ipkgでdnsmasqをインストールします。

ipkg update
ipkg install dnsmasq

2.設定ファイルの修正
/opt/etc/dnsmasq.confを修正します。

vi /opt/etc/dnsmasq.conf
# If you want dnsmasq to change uid and gid to something other
# than the default, edit the following lines.
user=admin
group=administrators
# Add domains which you want to force to an IP address here.
# The example below send any host in double-click.net to a local
# web-server.
address=/サーバホスト/192.168.xxx.xxx

上記の設定では、/etc/hostsファイルを参照して名前解決を行っています。
しかし、このファイルはNASを再起動すると元に戻ってしまいます。
私の環境では起動時の実行されるスクリプト(autorun.sh)でHDDに退避したhostsファイルを上書きしても効き目がありませんでした・・・
そのため、/etc/hostsファイルを参照しないように以下箇所も修正します。

# If you don't want dnsmasq to read /etc/hosts, uncomment the
# following line.
no-hosts
# or if you want it to read another file, as well as /etc/hosts, use
# this.
addn-hosts=/share/MD0_DATA/.qpkg/Optware/etc/dnsmasq.hosts

3.dnsmasq.hostsファイルの編集
これで、dnsmasq.hostsを参照して名前解決を行うようになりました。
あとは、このファイルにIPアドレスとホスト名の対応表を必要な分だけ書きます。

vi /opt/etc/dnsmasq.hosts
127.0.0.1         localhost               localhost
192.168.xxx.xxx   myserver                myserver
192.168.yyy.yyy   printer.myserver        printer.myserver

上記の設定は例です。
お好みの設定に修正してください。

4.dnsmasqの起動
以下コマンドでdnsmasqを起動します。

/opt/etc/init.d/S56dnsmasq

5.dnsmasqの自動起動
サーバ起動時にdnsmasqを有効にしたい場合は、起動時に実行されるスクリプトにdnsmasqを起動するコマンドを書きます。

vi /share/MD0_DATA/.qpkg/autorun/autorun.sh
/opt/etc/init.d/S56dnsmasq

以上で設定は完了です。
サーバのリゾルバはルータなど今まで使っていたものに設定しておけば問題ありません。

■参考サイト
QNAPにdnsmasqを入れて内向きDNSサーバーを構築
[QNAP] TS-459PROII で dnsmasq自動起動ほか