こんにちは、フルスタックエンジニアのryuです。
今回の記事では、DNSサーバーの設定でforwardersの設定方法を解説します。フォワードとは、自分で名前解決できないものを別のDNSサーバーへ転送する技術です。bindをLinuxサーバーにインストールして、forwardersの動作を確認してみましょう!
目次
【bind】forwardersの設定方法解説
bindのforwardersはどうやって設定したらいいの?
今回の記事では、bindのforwardersの設定方法について解説します。まずは、DNSのフォワードとは何なのかについて説明します。
DNSやbindの設定が良く分からない方は、こちらで詳しく解説しています。
フォワードとは?
DNSのフォワードとは、自分で名前解決できないものを別のDNSサーバーに問い合わせるものです。DNSサーバーは名前解決できるゾーン情報を持っています。そのゾーン情報のみ名前解決できます。
フォワードの流れを分かるように、イラストを描いてみました。
まず、PCから名前解決を行います。名前解決を行うと指定されたDNSサーバーへ問い合わせを行います。しかし、問い合わせした先のDNSサーバーにレコードが無い場合、名前解決ができません。
フォワードとは、名前解決ができるDNSサーバーに問い合わせを転送する機能のことです。
フォーワードを設定することで、自分の知らないレコードでも名前解決ができるようになります。
forwardersの動作を確認してみよう
forwardersの設定を行う前に、インターネットに接続しているPCでforwardersの動作を確認してみましょう。
まず、自分のPCのコマンドプロンプトを開いて、”www.google.com”と名前解決してみてください。コマンドは”nslookup”です。以下のように答えが返ってきます。
nslookup www.google.com
権限のない回答と返ってきました。私の環境では、WifiルータをDNSサーバーに指定しています。しかし、Wifiルーターはgoogleドメインの名前解決はできません。そのため、別のサーバに問い合わせを行っております。だから、権限のない回答と書かれています。
では、実際にforwardersの設定をLinuxのbindでやってみましょう!
bindでforwardersの設定してみる
では、実際にbindでフォワードの設定をしてみましょう。まずは環境の準備からです。Linuxサーバーにbindをインストールしましょう。
bindをLinuxサーバーにインストールする
今回はLinux2台でDNSサーバーを構築しております。以下のような環境を構築しています。
1つのサーバーで”test.com”ドメインの名前解決ができるように設定してください。設定の方法が分からない方はこちらの記事を参考にしてください。
forwardersの設定
bindの環境を構築できたら、fowardersの設定を行いましょう。
フォワードの設定は簡単です。2行書けば完了です。DNSサーバー①で設定します。
まず、設定ファイルを開きます。設定ファイルは”named.config.options”です。
vi /etc/bind/named.config.options
ファイルの中のforwardersのコメントを外して、以下のように設定します。
forwarders{ 192.168.1.2 };
forwardersの設定で問い合わせ先のDNSサーバーの指定をします。
次に再帰問い合わせの許可を行います。
allow-recursion {127.0.0.1; 192.168.1.0/24; };
再帰問い合わせは、自分(127.0.0.1)と自分のネットワーク(192.168.0.0/24)を許可します。
最後に、dnssec-validation auto;の先頭に”//”を付けて無効にします。設定を消しても大丈夫です。
//dnssec-validation auto;
設定ファイルの中身はこんな感じになります。
以上でフォワードの設定が完了です。DNSサーバーを再起動させて下さい。
/etc/init.d/bind9 restart
これでforwadersの設定は完了しました!動作確認を実施してみましょう!
forwardersの設定方法まとめ
今回の記事では、bindのforwardersについて解説しました。まとめると以下のようになります。
- フォーワードとは、名前解決の問い合わせを転送する
- named.config.optionsでforwardersの設定をする
- 設定が完了したらbindを再起動する
forwardersはDNSの基礎知識ですので、ぜひ覚えておきましょう。
その他のインフラ知識を身に付けたい方はこちらをご覧ください!
また、Linuxを勉強したい方はこちらの参考書もオススメです。