委任されたサブドメインが正しく解決されることをテストして確認するにはどうすればよいですか? 解決されない場合のトラブルシューティングと修正方法も教えてください。

Amazon Route 53 またはサードパーティー DNS プロバイダーを使用して設定された apex ドメイン (example.com など) の親ゾーンがある場合、サブドメインの委任セット (www.example.com など) を Route 53 またはサードパーティー DNS プロバイダーを使用してセットアップできます。

サブドメイン用の個別の委任セットを使用する場合、次の設定を行うことができます。

  • どちらも Route 53 を使用する apex ドメインおよびサブドメイン
  • サードパーティー DNS サービスを使用する apex ドメインおよび Route 53 を使用するサブドメイン
  • Route 53 を使用する apex ドメインおよびサードパーティー DNS サービスに委任されたサブドメイン

ご使用の設定に合わせた解決方法に従ってください。

どちらも Route 53 を使用する apex ドメインおよびサブドメイン

1.    コマンド dig +trace を使用してサブドメインが正しく解決されていることを確認します。

2.    サブドメインのホストゾーンの中に選択したレコードタイプがあることを確認します。このテストケースの場合、サブドメインのゾーンの中に www.example.com の A レコードがあります。目的のレコードタイプに対する dig の出力を書き留めます。

dig <record type> <desired subdomain record>

出力例:

$ dig www.example.com
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48170
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;www.example.com.                IN         A
;; ANSWER SECTION:
www.example.com.     60          IN         A          127.0.0.1

3.    DNS ルックアップが失敗する場合、dig および dig +trace の出力を使用して、DNS チェーンのどこでルックアップが失敗しているかを判別します。

出力例:

$dig +trace www.example.com
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.56.amzn1 <<>> +trace www.example.com
;; global options: +cmd
.                                   518400 IN         NS        G.ROOT-SERVERS.NET.
.....
.                                   518400 IN         NS        F.ROOT-SERVERS.NET.
;; Received 228 bytes from 169.xxx.xxx.xxx#53(169.xxx.xxx.xxx) in 21 ms
com.                            172800 IN         NS        c.gtld-servers.net.
.....
com.                            172800 IN         NS        i.gtld-servers.net.
;; Received 498 bytes from 199.xxx.xxx.xxx #53(199.xxx.xxx.xxx) in 198 ms
.example.com.   172800          IN         NS        ns-xxx.awsdns-xx.com.
.example.com.   172800          IN         NS        ns-xxx.awsdns-xx.net.
.example.com.   172800          IN         NS        ns-xxx.awsdns-xx.co.uk.
.example.com.   172800          IN         NS        ns-xxx.awsdns-xx.org.
;; Received 207 bytes from 192.xxx.xxx.xxx #53(192.xxx.xxx.xxx) in 498 ms
www.example.com.     172800 IN         NS        ns-xxx.awsdns-xx.com.
www.example.com.     172800 IN         NS        ns-xxx.awsdns-xx.net.
www.example.com.     172800 IN         NS        ns-xxx.awsdns-xx.co.uk.
www.example.com.     172800 IN         NS        ns-xxx.awsdns-xx.org.
;; Received 175 bytes from 205.xxx.xxx.xxx #53(205.xxx.xxx.xxx) in 345 ms
www.example.com.     900      IN         SOA      ns-xxx.awsdns-xx.com. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400
$ dig www.example.com.com
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 22072
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
www.example.com.com.          IN         A
;; AUTHORITY SECTION:
www.example.com.com. 60       IN         SOA      ns-xxx.awsdns-xx.com. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400

4.    出力を調べて失敗の原因を判別します。

dig は ANSWER セクションのない NOERROR ステータスを返し、dig +trace 出力には apex ドメインのネームサーバーのみが含まれている。

委任されたサブドメインの NS レコードが apex ドメインのホストゾーンから欠落しています。また、ルートドメイン内のサブドメインのレコードタイプ (たとえば、A レコードではなく MX レコード) が間違っています。apex ドメインのホストゾーンに正しいネームサーバーでサブドメインの NS レコードを作成します。

apex ドメインのホストゾーン内のサブドメインの NS レコード以外のレコードを削除します。次に、NS レコード以外のレコードをサブドメインのホストゾーン内に配置します。

dig は NXDOMAIN ステータスを返し、dig +trace 出力には apex ドメインのネームサーバーのみが含まれる。

委任されたサブドメインの NS レコードが apex ドメインのホストゾーン内で欠落しています。

apex ドメインのホストゾーンに正しいネームサーバーで NS レコードを作成します。

dig +trace は委任されたサブドメインのネームサーバーを返すが、dig は ANSWER セクションのない NOERROR ステータスを返す。

ホストゾーンに、委任されたサブドメインの間違ったタイプのレコードが含まれています。サブドメインのホストゾーン内にサブドメインの A レコードではなく TXT レコードが存在しています。

サブドメインのホストゾーンに、委任されたサブドメインの新しい A レコードを作成します。

dig +trace は委任されたサブドメインのネームサーバーを返すが、dig はエラー「connection timed out; no servers could be reached」を返す。

apex ドメインのホストゾーン内の、委任されたサブドメインの NS レコードの Route 53 ネームサーバーが間違っています。 dig @ コマンドを使用し、委任されたサブドメインのネームサーバーのいずれかに対して DNS ルックアップを実行してこの問題を確認します。ネームサーバーが正しくない場合 REFUSED ステータスが返されます。

サブドメインのホストゾーンで、NS レコードを正しいネームサーバーに変更します。

5.    他の DNS サーバーではルックアップが成功する場合、ローカルリゾルバーにキャッシュの問題がある場合があります。

別のリゾルバーおよびドメイン名を使用して dig @ コマンドを使用し、ローカルリゾルバーをバイパスします。たとえば、次のルックアップは Google のパブリックリゾルバーを使用します。

dig @8.8.8.8 www.example.com 

apex ドメインのホストゾーンの正式な AWS ネームサーバーのいずれかに対して直接ルックアップを実行します。

dig @ns-***.awsdns-**.com www.example.com

サードパーティー DNS サービスを使用する apex ドメインおよび Route 53 を使用するサブドメイン

1.    サブドメインのネームサーバーが親ゾーンで適切に設定されていることを確認します。

2.    設定されていない場合、サブドメインのホストゾーンの NS レコードをルックアップしてから、apex ドメインのホストゾーンまたはサードパーティー DNS プロバイダーの場合はゾーンファイルにそれらを追加します。

3.    dig @ を使用して、サブドメインが次のホストゾーンネームサーバーのいずれかを使用して解決されていることを確認します

dig @ns-***.awsdns-**.com www.example.com

注: DNS 解決が失敗する場合、DNS ルックアップの失敗のトラブルシューティング セクションを参照して失敗の原因を判別し修正します。

Route 53 を使用する apex ドメインおよびサードパーティーに委任されたサブドメイン

1.    サブドメインのネームサーバーが親ゾーンで適切に設定されていることを確認します。

2.    設定されていない場合、Route 53 の apex ドメインのホストゾーン内に NS レコードを追加します。

3.    サードパーティー DNS サービスの正式なネームサーバーを使用して dig @ を使用し、サブドメインが正しく解決されることを確認します。

dig @<Third party Name Server assigned for www.example.com> www.example.com

注: DNS 解決が失敗する場合、DNS ルックアップの失敗のトラブルシューティング セクションを参照して失敗の原因を判別し修正します。


このページは役に立ちましたか? はい | いいえ

AWS サポート ナレッジ センターに戻る

サポートが必要ですか? AWS サポートセンターをご覧ください。

公開日: 2018 年 08 月 31 日