DNSとは?役割や仕組み、DNSレコードの意味を解説
はじめに
DNSは、Webサイトやメールシステムを支える重要な仕組みのひとつです。Webサーバやメールサーバの設定・運用にはDNSの知識が欠かせません。ただし、DNSの設定にはやや専門的な知識が求められます。特に「DNSレコード」については、その種類や意味を正しく理解しておきたいところです。DNSレコードの種類や意味を理解しないまま設定を行うと、サーバが想定通りに動作せず、Webブラウザからの閲覧やメール配信に支障をきたす可能性があるからです。ここでは、DNSの基礎知識とともに、DNSレコードの種類や設定方法を解説します。
DNSの種類と全体像
DNSとは何か?
DNSとは「Domain Name System」の略称で、インターネット上でドメイン名を管理・運用するために開発されたシステムです。具体的には、名前解決(ドメインネームとIPアドレスを結び付ける処理)を目的として、階層構造と権限移譲によって作られています。このシステムを提供しているサーバを「DNSサーバ」といいます。
DNSサーバの種類
DNSサーバは、大きく「ネームサーバ」と「フルリゾルバ」という2つの種類に分類できます。
【ネームサーバ】名前(ドメイン)と電話番号(IPアドレス)を紐づける電話帳(台帳)のような役割を持っています。「権威DNSサーバ」や「コンテンツDNSサーバ」とも呼ばれ、保有する情報に基づき、フルリゾルバからの問い合わせへの回答を行います。その中でも、名前解決の際にフルリゾルバが最初に問い合わせを行うサーバを「DNSルートサーバ」といいます。これは世界で13台しか存在しません。DNSルートサーバは、DNSの仕組みを支え、いわば全てのDNSサーバの親とも言えるべき存在です。
ネームサーバに問い合わせを行うサーバで、「DNSキャッシュサーバ」とも呼ばれます。各ネームサーバはすべてのドメイン、IPアドレスの情報を保有しているわけでありません。そのため、フルリゾルバは各ネームサーバに質問を投げかけ、名前解決が完了するまで次々に各ネームサーバを渡り歩くといった役割を担っています。また、一度確認したドメインとIPアドレスの対応状況をフルリゾルバ内に保持(キャッシュ)し、再度同じ名前解決をする際にネームサーバをもう一度渡り歩く、といった余計な手間を省くことができます。これが、「DNSキャッシュサーバ」と呼ばれる所以です。
DNSによる名前解決の順序
一般的にDNSサーバは、次のような順序で名前解決を行います。
1.PC ⇒ フルリゾルバブラウザにURLを入力すると、ドメインとIPアドレスの紐づけに関する問い合わせを、PCからフルリゾルバへ行います。
2.フルリゾルバ ⇒ DNSルートサーバフルリゾルバから最上位のDNSサーバである「DNSルートサーバ」へ問い合わせを行います。
3.DNSルートサーバ ⇒ フルリゾルバDNSルートサーバはフルリゾルバに対し「管理情報(紐づけの情報)を持っているDNSサーバの情報」を回答します。
4.フルリゾルバ ⇒ 管理情報を持つネームサーバフルリゾルバはDNSルートサーバから受け取った情報をもとに、管理情報を持つDNSサーバへ問い合わせを行います。
5.管理情報を持つネームサーバ ⇒ フルリゾルバ ⇒ PCDNSサーバより管理情報がフルリゾルバに返され、さらにフルリゾルバより管理情報がPCへと送られます。これにより、ドメインとIPアドレスの紐づけが完了し、ブラウザ上にWebサイトが表示されます。
このように名前解決は、DNSルートサーバを起点として、フルリゾルバが各ネームサーバを渡り歩くことで行われます。
DNSレコードの種類と設定方法
DNSを正常に動作させるには、「DNSレコード」と呼ばれる設定情報の記述が必要です。前述した通り、DNSサーバは、ドメインとIPアドレスを紐づける台帳のような仕組みを保持しています。この台帳は「ゾーンファイル」と呼ばれ、DNSレコードはゾーンファイルに記載されている「一行ごとの詳細情報」を指します。
DNSレコードの種類
DNSサーバを正常に動かすには「ドメイン」「IPアドレス」の対応表であるゾーンファイル設定が必要です。ゾーンファイル設定では、情報の種類に応じてDNSレコードを記載していくことになります。この「情報の種類」を「レコードタイプ」と呼び、次のような種類が存在します。
Aレコード
ホスト名に対するIPアドレスの情報を意味するレコードタイプ
PTRレコード
IPアドレスに対するホスト名を表すレコードタイプ
AAAAレコード
Aレコードと同じくホスト名に対するIPアドレスを意味しているが、特にIPv6のアドレスを指定する際に使用するレコードタイプ
SOAレコード
「ゾーンファイルの基となるデータを持つネームサーバの名前」や、「管理者のメールアドレス」など、ドメインの管理情報を表すレコードタイプ
NSレコード
あるゾーンに対して権威を持つネームサーバを指定するためのレコードタイプ
MXレコード
対象ドメイン宛のメール配送先ホスト名を定義するレコードタイプ。 メール転送先ホスト名はAレコードで定義したメール転送先ホストを参照し、メールサーバのIPアドレスを取得する。
CNAMEレコード
ドメインやホスト名の別名を定義するレコードタイプ
TXTレコード
ホストのテキスト情報を記載
SPFレコード
送信ドメイン認証技術「SPF」を使用し、メールを送信可能なドメインを指定するレコードタイプ
この中でメールサービスの稼働で特に重要なのは、以下4つのレコードタイプです。
・A
・PTR
・MX
・SPF(SPF TXT)
さらに各レコードタイプには、「記載の作法」が決められています。この作法については、別の記事で改めて詳しく解説していきます。
SPFレコードの記載方法についてはこちらの記事をご参照ください。
SPFレコードの書き方とは?記述例を総まとめ | ベアメールブログ
TTLの設定
DNSサーバにおいて重要な設定のひとつに「TTL(Time To Live)」があります。ここでのTTLとは、「フルリゾルバがキャッシュする情報の有効期限」として扱われます。前述したようにフルリゾルバは、一度取得した情報をキャッシュとして内部に保持します。しかし、いつまでも同一の情報を保持していては、ネームサーバの更新が反映されません。そこで情報の有効期限をTTLとして定め、期限を過ぎた場合はキャッシュから情報を削除します。
DNSサーバの設定方法
DNSレコードを含む各種設定は、ドメインを取得した業者のDNSサーバやレンタルサーバー事業者のDNSサーバで行います。一般的には、サーバ内のファイル情報を直接編集することは少なく、専用の管理画面や管理ツールのGUIを通じて作業することが多いです。
まとめ
本稿では、DNSの仕組みとDNSレコードの設定例などを解説してきました。DNSは、ドメイン名とIPアドレスの対応付けや、メールの配送先の指定など、企業の情報システムの基盤ともいえる仕組みです。もし今後、これらを運営する場合にはDNSやDNSレコードの役割を正しく理解しておく必要があります。特にDNSレコードは、登録ルールを守り正しい記載を心がけるようにしましょう。
The post DNSとは?役割や仕組み、DNSレコードの意味を解説 first appeared on ベアメールブログ.