unbound で指定したドメインの名前解決を上書きする
unbound では、指定したドメインの応答結果を本来の結果とは違う応答を返却することができる。
ドメインの一種の偽装である。グローバルに偽装応答すると犯罪だがローカルで書き換えるのであれば問題ない。
local-data を記述する。
local-data で直接上書きし、その結果を問い合わせ結果として返すことができる。
/etc/unbound/unbound.conf.d/my.conf
local-data: "nextcloud.example.com A 192.168.1.100 " local-data: "gitlab.example.com A 192.168.1.100 " local-data: "bk.example.com A 192.168.1.100 " local-data: "bit.example.com A 192.168.1.100 "
my.conf を読み込むには
/etc/unbound/unbound.conf のファイルを読み込むように、設定をしておく。
unbound.conf の内部で include *
して於けば十分である。
/etc/unbound/unbound.conf
# Unbound configuration file for Debian. # # See the unbound.conf(5) man page. # # See /usr/share/doc/unbound/examples/unbound.conf for a commented # reference config file. # # The following line includes additional configuration files from the # /etc/unbound/unbound.conf.d directory. include: "/etc/unbound/unbound.conf.d/*.conf"
あとは好きなように書き換えることができる。
local-data と local-zone
local-data が最優先で、 local-data になければ、local-zone を閲覧に行く。
local-zone は zone
の名前の通り、zone まるごと書き換える。
local-zone: "mylocal." static
と書いておけば、.mylocal. に関する問い合わせは設定した unbound 内部で完結するようになる。
この状態で、 *.mylocal. への問い合わせはNXDOMAINが応答されてくるようになる。
次のように追記すれば
local-zone: "mylocal." static lodal-data: "example.mylocal A 192.168.1.1 "
example に関しては応答が帰ってくる それ以外は NXDOMAIN になる。