前回はUnboundを新規導入する方法について紹介しました。今回は他のDNSサーバからUnboundに乗り換える方法を紹介します。
なお、
Unboundのインストール
インストール
Unboundのインストール方法については前回の記事をご覧ください。
動作確認
すでにBINDなどの他のDNSサーバーが動いている場合にはポート番号が衝突するため、
port: 10053
unboundを起動させてみましょう。
# /etc/init.d/unbound start
次のようにdrillに-pオプションでポート番号を指定して、
$ drill -p 10053 gihyo.jp. @127.0.0.1 A
動作確認ができたのでunboundを停止します。
# /etc/init.d/unbound stop
設定ファイルunbound.
乗り換え設定を行うにあたっての注意点
乗り換え方法の本題に入る前に、
リゾルバの設定
ホスト自身のリゾルバとしてUnboundを利用する場合には、
nameserver 127.0.0.1
アクセス制御
アクセス制御を移行するのを忘れないようにしてください。
たとえば、
options { allow-recursion { 127.0.0.1; 192.168.0.0/24; }; };
この場合には、
access-control: 192.168.0.0/24 allow
BINDの再帰問い合わせを止める方法
キャッシュサーバとしてのサービスをUnboundに任せ、
recursion no; allow-recursion { none; };
フォワード
フォワードについてはUnboundではフォワードゾーン
スタブ
スタブについてはUnboundではスタブゾーン
既存のDNSサーバからの乗り換え方法
既存のDNSサーバからUnboundに乗り換える方法を紹介します。なお、
なお、
既存のDNSサーバがキャッシュサーバのサービスのみを提供している場合
既存のDNSサーバがキャッシュサーバの機能のみを使用している場合の乗り換え方法は単純です。既存のDNSサーバのサービスを停止してunboundのサービスを起動すれば良いだけです。
注意事項の確認をした後に、
# /etc/init.d/named stop # /etc/init.d/unbound start
OSのブート時にBINDが起動しないようにし、
# /sbin/chkconfig named off # /sbin/chkconfig unbound on
既存のDNSサーバがコンテンツサーバのサービスのみを提供している場合
Unboundはコンテンツサーバではないので、
既存のDNSサーバがバインドするインターフェースアドレスからループバックアドレス
BINDの設定ファイルnamed.
options { listen-on port 53 { 192.168.0.1; }; }
Unboundはデフォルトではループバックアドレスのみにバインドするため、
以上の設定が終わったら、
# /etc/init.d/named restart # /etc/init.d/unbound start
OSのブート時にUnboundが起動するようにします。
# /sbin/chkconfig unbound on
既存のDNSサーバがパブリックなコンテンツサーバとキャッシュサーバのサービスを提供している場合
Unboundはコンテンツサーバではないので、
- IPエイリアスの機能によりIPアドレスを増やして、
そこでサービスを提供する - キャッシュサーバのサービスをプライベートネットワーク上のホストに置き直す
1つ目の方法は、
2つ目の方法は、
ここでは、
options { listen-on port 53 { 192.168.0.1; }; }
Unboundの設定ファイルunbound.
interface: 127.0.0.1 interface: 192.168.0.2
さらに、
access-control: 192.168.0.0/24 allow
以上の設定が終わったら、
# /etc/init.d/named restart # /etc/init.d/unbound start
OSのブート時にUnboundが起動するようにします。
# /sbin/chkconfig unbound on
既存のDNSサーバがプライベートなコンテンツサーバとキャッシュサーバのサービスを提供している場合
Unboundはコンテンツサーバではないので、
- 既存のDNSサーバをコンテンツサーバとして残しつつ、
IPエイリアスの機能によりIPアドレスを増やして、 そこでサービスを提供する - Unboundの簡易的なコンテンツサーバとしての機能を利用する
1つ目の方法は、
2つ目の方法は、
local-data: "example.org. NS ns.example.org." local-data: "ns.example.org. A 192.168.0.1" local-data: "1.0.168.192.in-addr.arpa. PTR ns.example.org." local-data: "hogohoge.example.org. A 192.168.0.9" local-data: "9.0.168.192.in-addr.arpa. PTR hogohoge.example.org."
ローカルデータの設定方法については前回の記事を参照してください。
まとめ
今回は乗り換え編として紹介しました。コンテンツサーバとキャッシュサーバが連携するような設定については次回紹介します。