ドメインをホスティングサービスに紐づける設定を行う際、「ネームサーバー」(DNSサーバーとも)という言葉が出てきます。ネームサーバーとは、URLをウェブサーバーのIPアドレスに変換するサーバーで、インターネットの「電話帳」とも呼ばれるドメインネームシステム(DNS)の重要な役割を担います。
この記事は、ネームサーバーの概要と機能、そしてサイトのドメインなどを管理する際の使用方法についてご説明していきます。
ネームサーバー(DNSサーバー)とは
ブラウザに「kinsta.com」のようなURLを入力してサイトにアクセスするには、URLに該当するドメインのサイトの基盤となるウェブサーバーに接続する仕組みが必要です。
サイトにアクセスするたびにウェブサーバーのIPアドレスを手入力するのは、気の遠くなる作業。「159.89.229.118」のような番号の羅列を覚えるだけでも大変です。
そんなサーバーのIPアドレスとURLを人間にわかりやすい形で結びつけてくれるのが、ネームサーバーです。
ネームサーバーはドメイン名のような見た目で、サイトのネームサーバーを確認すると、通常以下のような2つ以上のネームサーバーが表示されます。
ns-380.awsdns-47.com
Ns-1076.awsdns-06.org
ただし、ネームサーバーの役割はサイトの配信ではなく、トラフィックの管理にあります。
インターネット上のトラフィックを管理するネームサーバーの役割を掘り下げてみます。例えば、Kinstaサイトのトップページにアクセスするとします。ブラウザのアドレスバーに「kinsta.com」と入力するだけで表示されますが、その背景では以下のような処理が行われています。
- アドレスバーに「kinsta.com」と入力しEnterキーを押す
- ブラウザがそのドメインのネームサーバーにリクエストを送信する
- ネームサーバーがサイトのサーバーのIPアドレスを返す
- ブラウザがIPアドレスにサイトのコンテンツを要求する
- ブラウザがコンテンツを取得し、ブラウザでレンダリングする
ネームサーバーとDNSレコード
上記は簡易的な例ですが、実際にはDNSレコードという重要な要素があります。
DNSレコードには、サーバーのIPアドレスやブラウザなどが処理を行うための情報が含まれ、ネームサーバーが個々のDNSレコードを保存し、整理します。冒頭でDNSがインターネットの「電話帳」のような存在であると述べましたが、厳密には以下のように定義できます。
- ネームサーバーは電話帳そのもの
- DNSレコードは電話帳に載っている各項目
まだ紙の電話帳が普及していた時代には、誰かの電話番号を調べる際に電話帳を開き、必要な情報を探していたものです。
したがって、サイトにアクセスする動作の裏では、実際には以下のような処理が行われています。
- アドレスバーに「kinsta.com」と入力しEnterキーを押す
- ブラウザがDNSを使用して該当のドメインのネームサーバーの情報を取得する
- ブラウザがウェブサーバーのIPアドレスを含むAレコード(特定のDNSレコード)を要求する
- ネームサーバーがAレコードに記載されているIPアドレスを返す
- ブラウザがIPアドレスにサイトのコンテンツを要求する
- ブラウザがコンテンツを取得し、ブラウザでレンダリングする
ネームサーバーの用途
ネームサーバーとDNSレコードは、主にドメインをホスティングサービスに紐付ける際に使用します。
またDNSレコードは、MXサーバーでのメールアカウントの設定やGoogle Search Consoleでのドメインの確認などにも使用されます。
ネームサーバーの場所
ドメインのネームサーバーの場所はさまざまです。
ドメインレジストラでドメインを登録すると、通常ドメインはそのドメインレジストラのネームサーバーに紐付いています。また、ドメインレジストラでは、ドメインのネームサーバーを編集できる場所でもあります。
必要に応じて、ネームサーバーは変更せずにDNSレコードを編集し、ドメインをホスティングサービスに紐付けることもできます。
ただし、ホスティングサービスの多くは、ドメインのネームサーバーを同サービスのものに変更することを推奨しています。Kinstaでは必須ではありませんが、すべてのお客様を対象にAmazon Route 53を基盤としたプレミアムDNSを提供しています。
ネームサーバーを変更するには、ドメインを購入したドメインレジストラの管理画面を使用します。
例として、Google Domainsで登録したドメインのネームサーバーを変更する手順を見てみましょう。
デフォルトでは、以下のようにドメインがGoogle Domainsのネームサーバーを使用するように設定されています。
「カスタムネームサーバーを使用する」を選択すると、お使いのホスティングサービスのネームサーバーを指定することができます。
また、サードパーティのネームサーバーに変更することもでき、Cloudflareは特に人気の選択肢です。Cloudflareを使用する場合は、ホスティングサービスやドメインレジストラではなく、ドメインのネームサーバーをCloudflareに紐付ける設定を行います。
ネームサーバーでDNSレコードを管理する
ネームサーバーをドメインレジストラのデフォルトネームサーバーから別のものに更新した場合、メインとなるDNSレコードの管理は、ネームサーバーの提供元でしか行えないことに注意してください。
例えば、Kinstaが提供するAmazon Route 53のネームサーバーを使用する場合、ドメインレジストラではなく、Kinstaの専用コントロールパネル「MyKinsta」でDNSレコードを管理します。
Cloudflareのネームサーバーを使用する場合は、サイトをKinstaでホストしていても、DNSレコードはCloudflareのコントロールパネルで管理します。
Kinstaのネームサーバー
Kinstaのお客様は、MyKinstaの「DNS」タブでサイトのネームサーバーを確認することができます。
なお、Kinstaのネームサーバーの使用は必須要件ではありません。ドメインをKinstaを紐付けるには、ドメインレジストラやCloudflareなどのネームサーバーでAレコードを編集してください。
主要なドメインレジストラでネームサーバーとAレコードを編集する方法は、以下をご覧ください。
- Namecheap:ネームサーバーの変更方法、Aレコードの追加方法
- GoDaddy:ネームサーバーの変更方法、Aレコードの追加方法
- OVH:ネームサーバーの変更方法
サイトで使用しているネームサーバーを確認する
現在お使いのネームサーバーがわからない場合は、Whoisのような検索ツールを使って調べることができます。Whois.comで検索すると、以下のようにネームサーバーが表示されます。
あるいは、ローカルにネームサーバーを確認することも可能です。
Windowsの場合、以下の手順に従ってください。
- PowerShellを開く(スタートメニューで「PowerShell」を検索して起動)
- Powershellのインターフェースに
nslookup
と入力 q=NS
と入力してEnterキーを押す- ドメイン名を入力して、再度Enterキーを押す
これでネームサーバーが表示されます。
Macの場合は、ターミナルで次のコマンドを実行してください。
host -t NS exampledomain.com
まとめ
ネームサーバー(DNSサーバー)は、ドメインをサーバーのIPアドレスに紐づけることにより、インターネット上のトラフィックを管理する重要な役割を担っています。
ネームサーバーによって、ブラウザなどのサービスがドメインのDNSレコードにアクセスできるようになります。
ドメインのネームサーバーは、ドメインの購入先であるドメインレジストラで変更可能です。また、DNSレコードはネームサーバーの提供先で管理します。例えば、Kinstaのネームサーバーをお使いであればMyKinsta、Cloudflareをお使いの場合はCloudflareの管理画面にアクセスしてください。