ドメインの設定に欠かせないDNSの基礎知識について解説
独自ドメインを利用する際にもっともつまづきやすいもののひとつ、DNSの設定。
DNSはIPアドレスで管理されているサーバーにドメインからアクセスするための名前解決の仕組みですが、かなり複雑なシステムとなっている上に専門的な用語が頻出するため、よく分からないまま設定をしている人も少なくないでしょう。
DNSはインターネットの基本的な仕組みのひとつで、ここを理解すればトラブルの解決能力が大きく向上します。
今回は、ドメインの利用に欠かせないDNSの基礎知識と仕組み、具体的な設定方法について解説します。
そもそもDNSとは?
DNSは「ドメイン・ネーム・システム」の略称で、URLやメールアドレスの文字列を使って目的のサーバーに接続する仕組みを担っています。
インターネットは無数のサーバーとそれを結ぶネットワークによって構成されていますが、サーバーには「IPアドレス」という数字が割り当てられることで、相互の識別が行われています。
IPアドレスは1〜255までの数字の4つの組み合わせで構成されていて、同じネットワーク内では決して重複することがないため、IPアドレスが分かればインターネット上のサーバーを特定することが可能です。
しかし、この数字の羅列はコンピュータにとっては効率的でも人間には扱いにくいため、IPアドレスに文字列を割り当てて、その文字列(アドレス)を入力することでサーバーに接続する仕組みが確立されました。
これがDNSによる「名前解決」です。
名前解決とは、例えば「IPアドレス」と「ドメイン名」を紐づけることを言います。
私たちが普段、サイトのURLやメールアドレスを利用できるのは、数字の代わりに文字列を使ってサーバーに接続する名前解決の仕組みが動いているためで、その仕組みを実現しているのがDNSです。
DNSサーバーの種類
DNSの名前解決は「DNSサーバー」によって行われています。
DNSサーバーには、IPアドレスに対応するドメインの情報(DNSレコード)が保存されていて、ブラウザやメールソフトは、それを参照することにより文字列(アドレス)から正しいIPアドレス(サーバー)を導き出します。
しかし、インターネット全体のIPアドレスとドメインの組み合わせ情報を単独のサーバーに保存するのは負荷が集中しすぎるため難しく、また世界中のサーバーに分散して保存すると同期の時間差により組み合わせの変化に対応できません。
そこでDNSでは、ドメインの領域(ゾーン)を分割して階層を形成し、最上位のルートサーバー→トップレベルドメイン(TLD)→セカンドレベルドメイン(2DL)と順番に問い合わせを行うことで、目的の情報があるDNSサーバーに最短で到達できるようになっています。
これらのDNSを構成するサーバーのうち、DNSの情報が保存されているサーバーを「権威サーバー」(ネームサーバー)、権威サーバーに問い合わせを行うサーバーを「リゾルバ」と呼びます。
リゾルバは、アドレスの文字列の組み合わせを元に、最上位のルートサーバーから下階層の権威サーバーのIPアドレスの問い合わせを繰り返すことで階層を下方にたどり、最終的に目的のサーバーのIPアドレスが保存されているDNSサーバーを見つけ出します。
また、リゾルバには過去にアクセスしたDNSサーバーの情報を記録する機能もあり、リゾルバの履歴に情報が残っている場合には権威サーバーへの問い合わせを省略して、権威サーバーの負荷を減らします。
この権威サーバーとリゾルバの働きによって、アドレスの情報を元に、膨大な数のサーバーの中から、目的のサーバーのIPアドレスを発見できる仕組みが実現されています。
DNSの設定が必要になる場面は?
普段のインターネットの利用の中で、DNSの設定が必要になるのは、新たに独自ドメインを取得したときでしょう。
独自ドメインは特定のサーバーのIPアドレスと結びつけることで、ウェブサイトやメールアドレスとして利用できるようになります。
独自ドメインでウェブサイトを開設する場合にはウェブサーバー、メールアドレスを発行する場合にはメールサーバーのIPアドレスを、DNSレコードとして記録しなければなりません。
また、ウェブサービスを独自ドメインで利用したい場合も、独自ドメインにウェブサービスのIPアドレスを登録する設定が必要になります。
独自ドメインの登録に対応したサーバーやサービスでは、ユーザー向けにDNS設定用のIPアドレスを公開しているので、それを独自ドメインに登録すれば設定作業は完了です。
DNSレコードの基礎知識
DNSレコードとは、DNSサーバーに保存されているIPアドレスとドメインの対応情報です。
独自ドメインからサーバーやサービスを利用するには、このDNSレコードを編集して、サーバーやサービスのIPアドレスを登録する作業が必要になります。
ここではDNSレコードの基本的な知識を確認しておきましょう。
DNSレコードとは?
DNSレコードとは、DNSサーバー内のドメインとIPアドレスの対応を記述したデータで、リソースレコードとも呼ばれています。
DNSの名前解決では、このDNSレコードを参照することで、文字列(アドレス)がどのIPアドレス(サーバー)を指しているのかを調べます。
独自ドメインのDNSレコードに、紐付けたいサーバーのIPアドレスを書き込むことで、その独自ドメインからサーバーに接続できるようになるわけです。
このDNSレコードは用途に応じて複数の種類に分かれています。
DNSレコードの種類について
DNSレコードには複数の種類があり、それぞれ機能も異なっています。
ドメインやサーバーの運用で覚えておきたい主要なレコードは、次の6種類です。
レコード名 | 意味 |
Aレコード | AレコードはIPv4形式のIPアドレスを指定するレコードです。 通常ドメインにサーバーのIPアドレスを登録する際には、このAレコードが使われるため、もっとも出番の多いレコードと言えます。 |
AAAAレコード | AAAA(クアッドエーレコード)は、IPv6形式のIPアドレスを指定するレコードです。 IPv4/IPv6両対応のサーバーを利用したい場合は、DNSレコードにAレコードと合わせてAAAAレコードも設定しておく必要があります。 |
MXレコード | MXレコード(メールエクスチェンジャーレコード)は、メールサーバーのIPアドレスを指定するレコードです。 独自ドメインのメールアドレスを利用したい場合には、メールサーバーのIPアドレスをMXレコードで登録します。 |
NSレコード | NSレコード(ネームサーバーレコード)は、権威DNSサーバーのIPアドレスを指定するレコードです。 このNSレコードの情報を元にリゾルバは権威DNSサーバーとやり取りを行いIPアドレスを取得しますが、通常はドメインに最初から登録されているため、指定する必要はありません。 |
CNAMEレコード | CNAMEレコード(カノニカルネームレコード)は、Aレコードに別のホスト名を指定するためのレコードです。 サーバーにAレコード以外の別のアドレスからもアクセスできるようにしたいときに利用します。 |
TXTレコード | TXTレコード(テキストレコード)は、指定した内容のテキストデータを登録するレコードです。 ドメインの所有権の認証などに利用されます。 |
プライマリDNSとセカンダリDNSの違い
権威サーバーを自分で設定する場合には、プライマリDNS(プライマリネームサーバー)とセカンダリDNS(セカンダリネームサーバー)、2種類のサーバーの用意が推奨されています。
プライマリDNSとセカンダリDNSは、機能的には全く同等で、管理者が直接DNSレコードを登録したのがプライマリDNS、そのDNSレコードをコピーすることで構築されたのがセカンダリDNSです。
セカンダリDNSはDNSサーバーを多重化する役割を担っています。
セカンダリDNSによって同じ機能のDNSサーバーを複数用意しておくと、負荷の分散やサーバー障害時のバックアップになるため、DNSの安定性が高まります。
セカンダリDNSは、プライマリDNSの設定を変更すると自動的に変更が反映されるため、複数台のDNSサーバーの運用では、構築や更新作業の省力化のためにプライマリDNS・セカンダリDNSを利用するのが一般的です。
独自ドメインにDNSを設定する方法
ここからは実際に、独自ドメインにDNSを設定する手順を解説していきます。
今回は、弊社のサービスである「お名前.com」で独自ドメインを取得し、その独自ドメインのDNSレコードを設定する方法と、Googleが提供している「GoogleDomains」で取得した独自ドメインにDNSレコードを設定する方法を例として見ていきましょう。
「お名前.com」でのドメインの取得とDNS設定
「お名前.com」のトップページを開き、「取得希望の文字列を入力」に取得したいドメインの文字列を入力して「検索」をクリックしましょう。
入力した文字列のトップレベルドメインの空き状況が表示されるので、取得したいトップレベルドメインのチェックボックスを選択して「お申込みへ進む」をクリックします。
「お申込内容」で登録年数を確認。
「お名前.com」を初めて利用する場合は「初めてご利用の方」を選択してユーザー登録、既に利用したことがある場合は「お名前ID」とパスワードでログインしましょう。
「お支払い方法を選択してください」で決済方法をクレジットカード、コンビニ、銀行振込、請求書から選択し、「申込む」をクリックしましょう。
ドメインの取得が完了したら、「お名前.com」の「ネームサーバーの設定」で「ドメインのDNS設定」をクリックします。
DNSの設定を行いたいドメインを選択して「次へ」をクリックします。
「DNS設定」の「DNSレコード設定を利用する」の「設定する」をクリックします。
「A/AAAA/CNAME/MX/NS/TXT/SRV/DS/CAAレコード」で、「TYPE」の「A」を選択、「VALUE」に利用したいサーバーやサービスのIPアドレスを入力して「追加」をクリックします。
作成した設定は「追加」に表示されます。
画面下にスクロールし、「確認画面へ進む」をクリックしましょう。
「意図しないDNS設定変更を防ぐために」が表示されたら「設定しない」をクリックします。
「現在のDNSレコード設定状況」で、DNSの設定内容をチェックします。
「TYPE」の「A」の項目が指定したIPアドレスになっているのを確認、「設定する」をクリックすると、指定した内容が反映されます。
GoogleDomainsでのドメインの取得とDNS設定
GoogleDomainsにログインして「最適なドメインを検索」をクリックしましょう。
検索窓が表示されるので、ドメインで利用したい文字列を入力しましょう。
文字列に該当するドメインが一覧で表示されます。
興味のあるドメインをクリックすると、そのドメインの「メリット」をチェックできます。
購入したい場合は、カートのアイコンをクリックしましょう。
ドメインがカートに追加されたら、画面右上のカートのアイコンをクリックして購入画面に移動しましょう。
「お客様の情報」が表示されたら、名前や住所、電話番号などを入力し、「保存して続行」をクリックしましょう。
「購入内容をご確認ください」でドメインと値段を確認し支払い方法を選択、「購入」をクリックしましょう。
GoogleDomainsから登録したメールアドレスにメールが送信されます。
届いたメールの「メールアドレスを確認」をクリックしましょう。
Google Domainsの設定画面を開いて、左メニューから「マイドメイン」をクリック、取得したドメインの「管理」をクリックしましょう。
ドメインの管理画面が開いたら、左メニューで「DNS」をクリックします。
「リソースレコード」の「タイプ」で「A」を選択、「データ」に利用したいサーバーやサービスのIPアドレスを入力してDNSレコードを作成。
「新しいレコードを作成」をクリックすると複数の設定を追加できます。
DNSの設定を入力できたら「保存」をクリックしましょう。
DNSサーバーによる名前解決を確認する方法
独自ドメインにDNSレコードを登録したら、次はDNSによる名前解決が正しく行われているかを確認してみましょう。
名前解決の確認には、ブラウザから独自ドメインのアドレスにアクセスしてみるのが確実ですが、サーバー側でApacheなどでウェブサーバーを立ち上げておかないとウェブページが表示されません。
そこでより手軽な方法としておすすめなのが、パソコンからコマンド入力でDNSの情報を取得する方法です。
Windowsの場合は「nslookup」、Macの場合は「dig」というコマンドに続けてホスト名(独自ドメイン名)を入力することで、そのサーバーのIPアドレスを取得できます。
WindowsでDNSの名前解決を確認する
Windowsのコマンドプロンプトを起動して、「nslookup」に続けてホスト名を入力、Enterキーを押しましょう。
「権限のない回答」の「Adress」に、設定したIPアドレスが表示されていれば成功です。
MacでDNSの名前解決を確認する
Macのターミナルを開いて、「dig」コマンドに続けてホスト名を入力してEnterキーを押しましょう。
「ANSWER SECTION」に設定したIPアドレスが表示されたら成功です。
DNSのエラーを確認する方法
DNSの設定に付きものなのがDNSのエラーですが、ひとくちにDNSエラーといっても、その原因は多岐にわたり、DNSサーバーやDNSの設定に問題があるとは限らないのが厄介なところです。
この章ではDNSのエラーについて解説しましょう。
「ドメインウェブの設定が見つかりません」というエラーについて
DNSレコードの設定を行ったのに、独自ドメインのURLをブラウザで開くと「ドメインウェブの設定が見つかりません」というエラーメッセージが表示されることがあります。
「ドメインウェブ」はバリュードメインやコアサーバー、XREAが提供している独自ドメインとサーバーの連携機能、つまりDNS設定の名称です。
これらのサービスを利用していてDNSの設定が間違っていると、「ドメインウェブの設定が見つかりません」と表示されます。
このエラーが表示されたら、ドメインとサーバーのDNSの設定をもう一度、確認してみましょう。
DNSエラーを回避するために
「DNSサーバーが応答していない」といったエラーは、インターネットを利用していると頻繁に目にします。
ただし、このエラーが表示されたからといって、必ずしもDNSサーバーやDNSの設定に問題があるとは限りません。
ネットワーク関連のエラーの多くが、DNSのトラブルとして報告されるため、いきなりDNSの設定を変更するのではなく、しっかりと原因を特定するところから始めてみましょう。
DNSエラーに遭遇した場合には、以下の対応を試してみてください。
- インターネットに接続されているか確認
PCがインターネットに接続されていない状態でサイトを表示させようとすると、DNSエラーが表示されます。
基本的なことですが、ケーブルが物理的に外れていたり、PCのネットワーク機能が無効になっていないか確認しましょう。
- OSのネットワーク診断を行う
DNSエラーの原因の特定には、OSに搭載されているネットワーク診断を利用しましょう。
ネットワーク診断では、かなり高い精度でDNSエラーの原因を特定してくれます。
Windowsの場合は「ネットワークとインターネット」のネットワーク診断、Macの場合はワイヤレス診断を立ち上げ、そこから原因の特定と問題解決を試みます。
- ルーターやモデムを再起動する
DNSエラーは通信機器の不調でも発生します。
ルーターやモデムの本体の電源をオフにして数秒待った後で再起動し、ネットワークの状況が改善されないか確認してみましょう。
- ルーターのDHCP機能を確認する
ルーターにはLAN内のデバイスに自動的にIPアドレスを割り当てるDHCP機能があり、そこで不具合が発生しているとDNSエラーが表示されます。
ルーターの設定を変更した直後にDNSエラーが出た場合には、変更箇所に問題がないか再確認してみましょう。
- DNSの名前解決を確認する
前章で紹介した「nslookup」や「dig」のコマンドを使って、DNSサーバーの名前解決が正しく機能しているか確認してみましょう。
また、ブラウザにIPアドレスを直接入力してサイト表示を確認する方法も有効で、仮にDNSが機能していなくても、IPアドレスの直接入力であればサイトを表示することが可能です。
DNSサーバーに原因があった場合、クライアント側では問題の解決は行なえません。
サーバートラブルが解消されるのを待つか、Google Public DNS(8.8.8.8)などのパブリックDNSに設定を変更して、名前解決を代替しましょう。
まとめ
今回は、独自ドメインやサーバーの運用の際に知っておきたいDNSの基礎知識について解説しました。
DNSレコードの設定は、取得した独自ドメインをサーバーに紐付けるためには欠かせない作業ですが、登場する専門用語の数が多く概念の抽象度も高いことから、ネットワークの仕組みに関する理解が求められます。
ネットワークの技術に習熟する上で頻繁に出てくるので、腰を据えて取り組んでみてくださいね。
独自ドメインを取得するなら「お名前.com」
「お名前.com」は、国内No.1のドメイン登録サービス。独自ドメインと合わせて、WordPressの自動インストールに対応したレンタルサーバーも利用できます。
WordPressや独自ドメインを一度も使ったことのない人でも、スムーズに始められるはず。
独自ドメインを取得しようと考えている方は、無料でお好きなドメイン名を検索してみましょう。
まずは検索!ドメインは早い者勝ち