DNS

【Linux】フォワードとは?bindで構築してみる

こんにちは、インフラエンジニアのryuです。

今回の記事では、DNSサーバーの設定でフォワードのやり方を解説していきます。フォワードとは、自分で名前解決できないものを別のDNSサーバーへ転送する技術です。bindで実際に構築してみましょう。

フォワードとは?bindで構築してみる

DNSのフォワードとは、自分で名前解決できないものを別のDNSサーバーに問い合わせるものです。DNSサーバーは名前解決できるゾーン情報を持っています。そのゾーン情報のみ名前解決できます。

フォワードの流れを分かるように、イラストを描いてみました。

DNSフォワード流れ

動作を確認してみる

自分のPCのコマンドプロンプトを開いて、”www.google.com”と名前解決してみてください。コマンドは”nslookup www.google.com”です。以下のように答えが返ってきます。

DNS動作確認

権限のない回答と返ってきました。私の環境では、WifiルータをDNSサーバーに指定しています。しかし、Wifiルーターはgoogleドメインの名前解決はできません。そのため、別のサーバに問い合わせを行っております。だから、権限のない回答と書かれています。

※これは、正確には、ネームサーバーに委任していますが、見た目の動作は同じです。

bindでフォワードの設定してみる

では、実際にbindでフォワードの設定をしてみましょう。

手順①.環境準備

今回はLinux2台でDNSサーバーを構築しております。以下のような環境を構築しています。

フォワード環境構築

1つのサーバーで”test.com”ドメインの名前解決ができるように設定してください。設定の方法が分からない方はこちらの記事を参考にしてください。

手順②.フォワードの設定

フォワードの設定は簡単です。2行書けば完了です。DNSサーバー①で設定します。

まず、設定ファイルを開きます。

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;をコメントアウトします。設定ファイルの中身はこんな感じになります。

DNS設定ファイル

以上でフォワードの設定が完了です。DNSサーバーを再起動させて確認してみましょう!

さいごに

今回の記事では、DNSサーバーの設定でフォワードのやり方を解説しました。フォワードは簡単に設定できるので、やってみましょう。設定してみると仕組みも理解できるようになります。

ABOUT ME
ryu
大手メーカのIT部門でインフラエンジニアやってます。 サーバ、ネットワーク、セキュリティ、クラウドについて投稿します。 AI、ARも勉強中です! youtubeでも技術ネタを発信していきます。↓のアイコンよりご覧ください!