[ネットワーク] 権威サーバーの役割

株式会社プライムストラクチャーのエンジニアのSayaです。

今回はDNSの構成要素の一つである、権威サーバーの役割ついて調べてみました。

権威サーバー

権威サーバーは、フルリゾルバからの依頼を受けて名前解決を行うサーバーです。

自分のゾーンの持つ情報を答えるか、委任しているならばその情報を答えます。

これらの情報は、権威サーバーが読み込むゾーンファイル内のリソースレコードとして下記のように保存されています。

リソースレコード

ゾーンファイルに保存されたゾーンの設定内容のこと。

出典:https://jprs.jp/glossary/index.php?ID=0165

以下の内容が1行で記載されています。

項目 意味
ドメイン名 問い合わせに対応するドメイン名
TTL (Time To Live) そのリソースレコードをキャッシュに保持する時間 (秒)
クラス ネットワークの種類 通常はインターネットの「IN」が入る
タイプ リソースレコードのタイプ
データ クラスとタイプに応じたリソースレコードのデータ

TTLとクラスは省略が可能です。
また同じドメイン名に複数のリソースレコードを設定する場合には2行目以降のドメイン名の省略が可能です。

主なリソースレコードのタイプ

項目 意味
SOA ゾーンの頂点に設定するリソースレコード
A ドメイン名のIPv4アドレス
AAAA ドメイン名のIPv6アドレス
NS ゾーンの権威サーバーのホスト名、委任情報
MX ドメイン名宛ての電子メールの送信先と優先度

これらのタイプに応じた情報がデータに書き込まれています。


1つのドメイン名に対して、同じクラス・タイプのリソースレコードをまとめたものをリソースレコードセットと呼びます。

1つからでもリソースレコードセットとして扱い、問い合わせに応じてリソースレコードセットを応答します。

プライマリサーバーとセカンダリサーバー

権威サーバーにはフルリゾルバによるアクセス集中や、権威サーバー自体がダウンした時のために同じゾーンデータを持つサーバーが複数台存在します。

ゾーンデータのコピー元となるサーバーのことをプライマリサーバー、コピー先となるサーバーをセカンダリサーバーと呼びます。

セカンダリサーバーがプライマリサーバーからゾーンデータを受け取ることをゾーン転送と呼び、これを使ってフルリゾルバの問い合わせに対して応答します。

フルリゾルバはこれらの複数の権威サーバーの中から、最も問い合わせしてから応答が帰ってくるまでの時間 (RTT) が短いサーバーをチェックして優先的に問い合わせます。

まとめ

今回は権威サーバーの役割について見ていきました。

権威サーバーがゾーンデータにアクセスすることで適切な答えをユーザーに返し、権威サーバー自体にも安全性を高めるプライマリサーバーやセカンダリサーバーといった工夫がなされていました。

こういった仕組みのおかげで私たちはいつでも安定したインターネット環境を利用することが出来るようです。

参考文献

渡邉結衣, 佐藤新太, 藤原和典 著,「DNSがよくわかる教科書」, SBクリエイティブ, 2018
JPRS WHOIS /JPRS