このブログで使っているドメインはムームードメインで管理をしていて、その流れで DNSサーバーもムームーDNSを使っていました。
ですが、AWSの他のサービス(EC2やS3)をサブドメインで使おうと思った時に、ムームーDNSでは後々面倒そうということが発覚したので、ちょうど土日のアクセスが少ないタイミングを見計らってメインの DNSをAWSの Amazon Route53 に移行しました。
結論から言うと「AWS EC2にブログを作る時、DNSも Route53 に任せれば良かった」です。
といっても数時間〜1日程度でDNSの移行は完了しますので、既に運用しているサイトの場合はアクセスの少ない時間帯や日(曜日)に作業するのが良いかと思います。
一応、今後のことも考え(サブドメインを使う予定がある)、手順やはまったポイントをメモとして残しておきます。
目次
AWS Route53
Amazon Route53 は Amazon Web Services で提供しているDNSサービスです。
AWSのクラウドサーバー群に入っているので信頼性は高いと思います(そういえば2012年には国内某サーバーでDNSが落ちたりしましたよね)。
EC2やS3など他のAWSのサービス同様、コントロールパネルからGUIで設定できるというのも、黒い画面が苦手な私のような人におすすめです。
あと、S3でルートドメイン(http://example.com)でWebサイトをホスティングしたい場合、あらかじめDNSを Route53 にしておく必要があるようです。
詳しくはRoute53のサイトをご覧ください。
http://aws.amazon.com/jp/route53/
ムームーDNSをやめようと思った理由
ムームーDNSに限らないのですが、レジストラやレンタルサーバーなどでDNSを提供している場合、大概同じ会社のやるサービスで使いやすい(設定しやすい)様に、余りユーザー側で設定ができないようになっています。
逆に言えば、サーバーを別途用意(他のレンタルサーバーやクラウド)するのであれば、DNSサーバーも外部に持った方が良いと思います。
(ムームーDNSで)出来ない一例として
・TTLの設定(大概固定されていてユーザーによる変更が不可)
・サブドメインの設定にワイルドカードを使えない
があげられます。
WordPressでマルチサイトをサブドメインで運用したい場合は「サブドメインの設定にワイルドカード」を使わないと面倒です。もちろん、サブドメインの子サイトを追加する度にDNSのレコードを書き換える(増やしていく)という方法でも可能ですが、数が増えるほど手間ですよね。
またTTLの設定を変更できないということは後から述べますが、一時的にドメインの参照(解決)が出来なくなる可能性があります。
私の場合、ブログはEC2で運用していますが、S3のバケットにも独自ドメインを割り当てる必要が出てきたので、先々のことを考えRoute53に移行することにしました。
移行手順1. Route53での設定
AWS Management Console にログインし、Route53をクリック。
1. 左カラムのNavigationで「Hosted Zones」を選択後、
2. 右カラムの「Create Hosted Zone」をクリック。
3. Create Hosted Zoneの入力欄
Domain Name: 設定するドメイン名( example.com )
Comment: 何でもOK
4. 最後に「Create Hosted Zone」をクリック。
この時点でゾーンIDをDelegation Set(DNSサーバー) が付与されます。これは後でムームーDNSでの設定で使います。
同時にNSレコードとSOAレコードも作成されますが、これは変更しない方がよいでしょう。
レコードを編集したいDomain Nameを選択後、「Go to Record Sets」をクリックします。
新規でレコードを追加する場合は「Create Record Set」を選択します。
既存レコードの修正をしたい場合は当該レコードを選択後し、鉛筆アイコンをクリックします。
まずはサブドメインなしのドメインの設定(上図参照)。
Name: サブドメインなしのドメイン(example.com)
Type: A – IPv4 address
Alias: No
TTL: 300(とりあえずデフォルト)
Value: サーバーのIPアドレス
Routing Policy: Simple(デフォルト)
次にサブドメインをワイルドカードで設定しておきます。
Name: *.ドメイン(*.example.com)
Type: A – IPv4 address
Alias: Yes
Alias Target: 先に設定したドメインを選択(カーソルを当てるとプルダウンで選べます)
Routing Policy: Simple(デフォルト)
私のブログではEC2のブログを置いているインスタンスに全てのドメイン(サブドメイン含む)を向けていますが、例えばS3のバケットにサブドメインを割り当てる場合は、レコードを追加して設定すればOKです。
ここで設定が出来たかコマンドライン(黒い画面)から確認してみます。
nslookup ドメイン名(example.com) DNSサーバ名
ドメイン名には今設定したドメイン名を DNSサーバーはRoute53でセットアップされたNSレコードの4つのサーバーのうちどれかを選んでください。
Name: ドメイン名
Address: サーバー(EC2のインスタンス)のIPアドレス
が返って来てればOKです。
以上でRoute53での設定は終わりです。
移行手順2. ムームーDNSでの設定
ムームードメインのコントロールパネルから「ネームサーバ設定変更」を選択し、操作するドメインの「ネームサーバ設定変更」を選択します。
「取得したドメインで使用する」を選択し、ネームサーバー1〜4にRoute53で付与されたNSレコードのネームサーバー(Delegation setのサーバー)を入力し「ネームサーバー設定変更」をクリックします。
以上で ムームーDNSでの設定は終わりです。
ネームサーバーが切り替わったかどうかの確認
ムームーDNSの切り替えはおよを数時間〜1日程度待てば解決するようです。
コマンドラインで
dig ドメイン名
を実行すると、ネームサーバーに問い合わせを行いドメイン情報が返ってきます。
注意しなければならないのは、利用している回線(ネームサーバー)によっては、Route53に切り替わる前にムームーDNSを見に行ってしまい、しかもムームーDNSでレコードが削除されているので、NotFoundになる場合があることです。
TTLをユーザー側で設定できれば問題無いのですが、ムームーDNSではこれが出来ませんので、おとなしく待つしかありません。
本来ならドメイン取得とウェブサーバーの設定をすると同時にDNSもRoute53にしてしまえば良いのですが、(今回の私のように)運用中のサイトの場合は事前にアナウンスしたりアクセスの少ない時間帯を狙って作業しましょう。
一応、以下の様な結果が返れば無事作業完了です。