3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Route53で取得したドメインで名前解決できない

Last updated at Posted at 2021-08-27

はじめに

以前にaws学習のためにRoute53でドメインを取得した。

教材学習を終えて、awsサービスによっては料金が掛かることを考え
いらないサービスは削除して整理することに。

ただ、ドメインは
本番環境で独自ドメインを設定する際に使えば良い
と考えていたので、そのまま残しておいた。

その後、本番環境でRoute53でそのドメインを使ってDNS設定したはずなのに 何故かアプリが表示されなかった。

もしかしたら、同じ境遇の方もいるかもしれないので
情報として残しておく。

説明前に注意点(大事)

後述もするが、私はawsサービスを整理しようと感覚で色々消してしまったけど
・ドメインをroute53で取得した
・aws料金怖いし、これから安全策でサービスを削除しようとしてる
に該当する人は、**ドメインに関連するホストゾーンの削除**は気を付けたほうが良い。

後からでも新しいホストゾーンのネームサーバーを
取得したドメインのネームサーバーに上書きして
データを反映する事は可能!!!

だが、**最大で2日間の時間を要す**可能性があるらしい…
(なのでaws整理は慎重にしたほうが良いかも)

ポートフォリオ作成中で2日間の日数取られるの厳しいなーと
個人的にショックを受けたので、ちょっとしたご案内まで。笑
(私は正午辺りに変更して翌日朝には変更完了されたので、半日くらい無駄にした。)

起きた問題

awsのEC2にアプリ(rails)をあげているが、

ブラウザに
URL(http://取得したドメイン)を入力しても
アプリが表示されず、DNS_PROBE_FINISHED_NXDOMAINというエラーが返ってくる。

一方で、ElasticIPを入力するとアプリが表示される。

これはDNSの問題だろう…

親切なことに、aws公式ページに解決策があった。

検証

awsより検証するためのコマンドが案内されているので
そちらに従って入力してみる。

ターミナル

% dig +trace 取得したドメイン名

〜〜 以下返答 〜〜

一部省略
                                                                       ↓ ネームサーバー
ドメイン名    172800  IN      NS      ns-〇〇.awsdns-〇〇.com.
ドメイン名    172800  IN      NS      ns-〇〇.awsdns-〇〇.net.
ドメイン名    172800  IN      NS      ns-〇〇.awsdns-〇〇.co.uk.
ドメイン名    172800  IN      NS      ns-〇〇.awsdns-〇〇.org.

返答されたネームサーバーと新しく作成したホストゾーンのネームサーバーを比較すると
一致していなかった…

ホストゾーンのネームサーバー確認方法

Route53 → ホストゾーン → ドメイン名をクリック → ホストゾーンの詳細をクリック
ページ右側にネームサーバーが4つ表示される

スクリーンショット 2021-12-24 13.41.35.png

先ほどターミナルで返答されたネームサーバーと照らし合わせると
やはり一致しない…やっちまってる…

でも、これでアプリ表示できない仮説が立った。

原因

私がやらかしてしまったのが、awsサービスを整理した際に ホストゾーンも一緒に削除してしまったこと。

通常route53でドメイン取得時にはホストゾーンも自動生成される。
そのホストゾーンをもとにドメイン設定してしていれば、今回のエラーに至っていなかった。

全く何をしているんだか…笑

解決策

■解決策:
新しく作成したホストゾーンのネームサーバーを 取得したドメインのネームサーバーと一致するように内容を更新する

これも公式ページに手順が記載されているので、そちらに従って入力していく。

着手する作業は
・取得したドメインの設定画面にアクセス
・新しく作成したホストゾーンのネームサーバー名で更新する
のみなので、シンプル。

最後にターミナルからdigコマンドで更新できているか、確認する。

ターミナル

% dig +trace 取得したドメイン名

〜〜 以下返答 〜〜

一部省略
                      ↓ ネームサーバーが変更されているはず!!
ドメイン名    172800  IN      NS      ns-〇〇.awsdns-〇〇.com.
ドメイン名    172800  IN      NS      ns-〇〇.awsdns-〇〇.net.
ドメイン名    172800  IN      NS      ns-〇〇.awsdns-〇〇.co.uk.
ドメイン名    172800  IN      NS      ns-〇〇.awsdns-〇〇.org.

名前解決の内部処理には時間が掛かる…

上記手順までで作業は終わりだったが
変更した内容がすぐにはDNSサーバーに反映されないようだ。

試しに、nslookupコマンドでドメイン名を入力してみると
名前解決されていない…
(ドメイン名ではなくElasticIPを入力してもダメだった…)

ターミナル

% nslookup 取得したドメイン名

% nslookup EC2に設定済みのElasticIP

このコマンドを打ったことで、まさか別の要因もあるのか…と思い
aws問合せ窓口に質問したが原因は特定できず
その日は諦めて寝ることに。

翌日、確認のために再度nslookupコマンドを入力してみると
名前解決されている…
(他のcurlコマンドも返答があった)

ターミナル

% nslookup 取得したドメイン名


〜〜以下返答〜〜


一部省略


Non-authoritative answer:
Name:   ドメイン名
Address:  設定済みのElasticIP
      ↑名前解決できてる

確実な原因特定まで至らなかったけど
恐らく内部処理に時間が掛かるのだろうと推測してる。

終わりに

私は、ドメインのネームサーバーを変更した後に1日待つことになったので
くれぐれも皆さんはawsサービスの削除にはご注意を。笑

割と教材学習時にroute53でドメイン取得した後に、
ホストゾーン削除してまう人いるのではないかなーと思うんだけども。

同じケースに巻き込まれる人が解決するヒントになれば良いな。

では、失礼します。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?