share facebook facebook2 twitter menu hatena pocket slack

2013.03.29 FRI

Route 53への移行前の確認用DNSサーバ(Unbound)

鈴木 宏康

WRITTEN BY鈴木 宏康

DNSサーバをRoute 53に移行することがよくありますが、その際、移行(切り替え)前の確認も行いたいと
考えます。 そこで、Unboundを使って確認用DNSサーバを作ってみました。

cloudpack.jpのDNSサーバを下記のRoute53に移行することを想定して話を進めてみます。

上記のRoute53をDNSサーバとして指定すると、下記のように登録されているレコードは名前解決できます。


# nslookup cloudpack.media ns-1053.awsdns-03.org
...
cloudpack.media canonical name = blog.suz-lab.com.

しかし、登録されてないレコードは次のように名前解決できません。


# nslookup www.suz-lab.com. ns-1053.awsdns-03.org
...
** server can't find www.suz-lab.com: REFUSED

そのため、独自にDNSサーバ(Unbound)を立ち上げ、cloudpack.jpは上記のRoute53で名前解決し、
それ以外は、OSで設定してあるDNSサーバで名前解決するようにしてみました。

Unboundのインストールは下記の通りです。


# yum -y install unbound
...

「cloudpack.jpは上記のRoute53で名前解決」の部分は下記のように設定しています。


# cat /etc/unbound/conf.d/cloudpack.jp.conf
forward-zone:
name: "cloudpack.jp."
forward-host: ns-1053.awsdns-03.org

次のようにUnboundを起動すると、利用できるようになります。


# service unbound start
unbound の制御キーと証明証を生成中:
unbound を起動中: [ OK ]

OSに設定してあるDNSサーバで名前解決した場合は、下記のように本来の設定の結果となります。


# nslookup cloudpack.media
...
Non-authoritative answer:
Name: cloudpack.media
Address: 216.239.34.21
Name: cloudpack.media
Address: 216.239.36.21
Name: cloudpack.media
Address: 216.239.38.21
Name: cloudpack.media
Address: 216.239.32.21

そしてUnboundを指定して名前解決すると次のようにRoute53に登録した内容が結果として表示されます。


# nslookup cloudpack.media localhost
...
Non-authoritative answer:
cloudpack.media canonical name = blog.suz-lab.com.
blog.suz-lab.com canonical name= ghs.google.com.
ghs.google.com canonical name = ghs.l.google.com.
Name: ghs.l.google.com
Address: 74.125.31.121

Unboundを指定していても、cloudpack.jp以外の名前解決は、OSに設定されているDNSサーバを利用して
結果を返していることも確認できます。


# nslookup www.suz-lab.com localhost
...
Non-authoritative answer:
www.suz-lab.com canonical name = www.suz-lab.com.s3-website-ap-northeast-1.amazonaws.com.
www.suz-lab.com.s3-website-ap-northeast-1.amazonaws.com canonical name = s3-website-ap-northeast-1.amazonaws.com.
Name: s3-website-ap-northeast-1.amazonaws.com
Address: 27.0.1.84

この後、セキュリティグループなどを調整して、このDNSサーバ(Unbound)をインターネット越しに
参照できるようにし、テストPCのDNSサーバに設定することでテストを行う形にする予定です。

こちらの記事はなかの人(suz-lab)監修のもと掲載しています。
元記事は、こちら

鈴木 宏康

鈴木 宏康

愛知県生まれ。東京工業大学大学院修士課程修了。在学時より、ベンチャー企業でインターネットに関する業務に携わり、現在はクラウド(主にAmazon Web Services)上での開発・運用を軸とした事業の、業務の中心として活躍。