DNSサーバーの設定方法
DNS(ドメインネームシステム)は、ドメイン(○○○.comや□□□.co.jpなど)とIPアドレス(192.168.1.1など)を関連付ける仕組みです。これが正常に働かないと、取得したドメインのWebサイトが正しく表示されなかったり、メールの送受信ができなかったりといったトラブルが起こります。ここでは、ドメインとIPアドレス、メールアドレスとメールサーバーを関連付けるために行う、DNSサーバー(ドメインネームサーバー、ネームサーバー)の設定方法について解説します。
DNSサーバー設定方法
ドメインやレンタルサーバー事業者が提供するDNSサーバーを無償または有償のオプションで利用する場合は、各社の指定するコントロールパネル等からDNS情報(レコード)設定を行います。新規取得したドメインを使う場合や、他社から移行する場合など、ケースによって設定方法が異なることがあるので注意が必要です。
事業者の提供するDNSサーバーを利用せずに、自分でBIND9(UNIX®)などのソフトウェアを使ってDNSサーバーを構築しDNS情報(レコード)設定を行う場合は、まず利用環境に合わせて最新のバージョンのソフトウェアをサーバーに導入します。次に設定ファイルを構成し、named.confファイルを要望に合わせて記述したのちに変更を反映させます。次のような項目の設定が必要です。
- optionsで一般設定
- ルートキャッシュファイルを指定
- ループバックアドレスの正引きゾーンを設定
- ループバックアドレスの逆引きゾーンを設定
- ドメインの正引きゾーンを設定
- ドメインの逆引きゾーンを設定
- 各ゾーンファイル(レコード)の設定
ゾーンに含まれるデータ(レコード)には、次のような種類があります。
- SOA…ドメイン情報を記載
- NS…ドメインのDNSサーバー(ドメインネームサーバー)名
- A…ホストのIPアドレス
- PTR…IPアドレスと対応するホスト名
- CNAME…ホスト名のエイリアス(別名)
- MX…ドメインのメールサーバー名
- HINFO…ホストのハードウェア情報等
- WKS…ホストで実行されるサービス情報
- TXT…ホストへのテキスト情報
名づけてねっとでは、オプションサービス「DNSアウトソーシング」を提供しています。ご自身でDNSサーバーを構築・運用されなくても、管理画面から手軽にDNS情報(レコード)を編集することができます。
DNS情報の確認方法
DNSサーバーが正しく設定されているかなどを確認する方法として、nslookupコマンドがあります。nslookupコマンドは、Windows®7などのクライアントパソコンからでも、Windows Server®などのサーバーからでも使えるコマンドです。DNSサーバーからの応答を確認するだけでなく、セカンダリDNSなどを指定して、それぞれから応答を確認することができます。
コマンドへの返答が「DNS request timed out」「Default servers are not available」などとなっている場合、DNSサーバーが正常に働いていないということです。設定を再度見直してみましょう。
また、DNSサーバーを移行した場合、情報が反映され、古いものから新しいものへ完全に切り替わるまでには、1~3日かかるとされています。なぜ情報が反映されるまでに時間がかかるのでしょうか。インターネット上にはキャッシュサーバーと呼ばれるサーバーがたくさんあります。ブラウザやメールソフトを使ってドメイン名で通信するとき、パソコンやその他の通信端末からキャッシュサーバーを介してDNSサーバーのDNS情報(ゾーン)を確認し、記載されているコンテンツやメールのあるサーバーへアクセスします。キャッシュサーバーは過去に確認された情報をキャッシュ(保存)するようになっており、これの有効時間(TTL)が一般的に24時間とされています。有効時間が終わるまではキャッシュサーバーは問い合わせに対し、保存されたDNS情報(ゾーン)を使用し、有効時間が過ぎるとDNSサーバーに新しいDNS情報(ゾーン)を確認しに行きます。このため、古い情報と新しい情報が併存する期間が生じるのです。
「ドメインウェブの設定が見つかりません」というエラーについて
DNS設定をしたドメインにブラウザからアクセスした時に、「ドメインウェブの設定が見つかりません」というメッセージが画面に表示されることがあります。情報が適切に設定されていない、情報が正しいものへ書き換えられるまでに時間がかかっているなどの理由が考えられます。設定をしたばかりの場合は、時間を置いてアクセスし、動作を確認してみてください。また、上記のnslookupコマンドを使って情報を確認したり、ドメインのWHOIS情報を確認したりしてみましょう。
DNSエラーを回避するために
DNSサーバーに何らかの障害が発生した場合、Webサイトにアクセスできない、メールの送受信ができないなどの事態が起こります。これを避けるために、プライマリDNSとセカンダリDNSを用意することが推奨されています。障害発生時のバックアップになる、負荷を分散させるといったメリットがあります。 プライマリDNSとセカンダリDNSは、別の場所に分散させて配置させておくのが理想的です。そうすれば、一方が停電などで止まったとしても、もう一方が働いていれば運用上問題が生じないからです。1台目(プライマリDNS)を自社内に置き、2台目(セカンダリDNS)をISP側に置くという方法もあります。
プライマリDNSとセカンダリDNS
DNSサーバーが管理している情報には、下記の4つのゾーン(情報の集まり)があります。
- ドメインの正引き
- ドメインの逆引き
- localhostの正引き
- localhostの逆引き
これらの情報は、ユーザーの設定作業により、プライマリDNSに納められます。一方、セカンダリDNSはプライマリDNSからゾーン情報をコピーして取得(ゾーン転送)して動作するため、ユーザーがゾーン情報を設定する必要はありません。
※UNIX は、The Open Groupの米国およびその他の国における登録商標です。
※Windows、Windows Serverは、米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。