DNS キャッシュサーバの Unbound を Mountain Lion にインストールした。
日頃、DNS の設定は Google Public DNS である「8.8.8.8, 8.8.4.4」をよく利用しています。これはアドレスも覚えやすいし、それなりのパフォーマンスを感じられます。
しかし、Google Public DNS の弱点として CDN 経由の通信のパフォーマンスが大幅に劣化します。例えば、Mac App Store や iTunes Store からのダウンロードした時にそれは顕著に起こるでしょう。10MB のデータのダウンロードに数分待たされたり。。
そこでローカルに DNS キャッシュサーバをインストールして、ある程度のパフォーマンスを維持しつつ、 CDN 経由の問題を解決してみます。まだ、検証段階なので効果は不明。
DNS キャッシュサーバとして目をつけたのは Unbound です。これを OS X 10.8 Mountain Lion にインストールしてみましょう。
下準備として、Xcode と MacPorts をインストールします。
- Xcode をインストールします。
https://itunes.apple.com/jp/app/xcode/id497799835?mt=12 - Xcode を起動すると、Xcode License Agreement が表示されます。
使用許諾(Agreement) の Agree(同意) をクリックして進めます。 -
続いて、System Component Installation が表示されます。
Install をクリックして、Device Support をインストールします。
完了したら、Start Using Xcode をクリックします。 -
Xcode が起動したら、Command Line Tools をインストールするために Preference(環境設定) を開きます。
Xcode メニュー > Preference... > Downloads
Command Line Tools を Install してください。
インストールが完了したら、Xcode を終了します。 -
MacPorts をインストールします。
http://www.macports.org/install.php
Mountain Lion をクリックしてインストーラパッケージをダウンロードします。
ダウンロードした MacPorts-2.1.2-10.8-MountainLion.pkg を開きます。 -
MacPorts のインストールを完了してください。
MacPorts の使い方については下記をご参照ください。
Mac Portsの使い方メモ « 突然消失するかもしれないブログ - ターミナルを起動します。(ユーティリティ > ターミナル)
- sudo port install unbound を実行します。
完了したら、ターミナルを終了します。
unbound は /opt/local/sbin/unbound にインストールされます。 - Mac を再起動しても、unbound が自動的に起動するように設定します。
そのために Lingon をインストールします。
https://itunes.apple.com/jp/app/lingon/id411211026?mt=12 - Lingon を起動して、左上の New をクリックします。
- /Library/LaunchDaemons/ (Users Daemons) を選択し、Create します。
- 次のように入力します。
・Name: net.unbound.unbound
・What: /opt/local/sbin/unbound
・When: Run it when it is loaded by the system (at stertup or login)
- Save ボタンをクリックし、管理者権限のパスワードを入力します。
- 念のため Mac を再起動します。
以上で、Unbound のインストールが完了しました。
さてアクティビティモニタで起動しているか確認してみましょう。
起動していますね?
さて、最後にこの新しい DNS サーバを使うためにネットワークの DNS 設定を変更してみましょう。システム環境設定からネットワークを開きます。
今回のサーバはローカルにあるので、IP は 127.0.0.1 を指定します。
適用して、ネットに繋がるか確認してください。もし、繋がらない場合は、Unbound が正しく起動していない可能性があります。
以上、自分が忘れないための備忘録。
参考にしたサイト
- DNSキャッシュサーバ、UnboundをMacに導入 | おもむくがままに
- Mac Portsの使い方メモ « 突然消失するかもしれないブログ
- Mac OS X LionにMacPortsをインストールする方法 - 大人になったら肺呼吸
Unbound は設定ファイル unbound.conf を弄ることでいろいろ設定内容を変更することができますが、今日はここまで。unbound.conf のテンプレートは /opt/local/etc/unbound/unbound.conf-dist にあるので、unbound.conf にリネームして使えるはず。